Size: 4404
Comment:
|
Size: 6927
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 273: | Line 273: |
---- Úloha VANA1 pro uživatele PODGOR1 -------------------------------------------------------------------------------- Slovní zadání úlohy Ve dlouhem kovovem potrubi jsou umisteny tri az ctyri vodive elektrody tak, ze jejich osa je rovnobezna s osou potrubi. Potrubi ma ctvercovy prurez o strane A. Potencial plaste potrubi je roven 0. Elektrody jsou umisteny tak, ze jejich souradnice jsou po rade (x1,y1), (x2,y2), (x3,y3), (x4,y4) a potencialy φ1, φ2, φ3, φ4. Nektere z elektrod mohou byt pootoceny o uhel α. Tvary elektrod jsou naznaceny v obrazku. Rozmer B je roven jedne desetine A. Cervenym krouzkem je v obrazku vyznacena poloha bodu, ktery je kotovan souradnicemi x a y. Elektrody jsou na obrazku zakresleny v zakladni poloze (uhel α roven nule). Pokud jsou souradnice ctvrte elektrody zadany tak, ze lezi mimo potrubi, pak tato elektroda pole v potrubi neovlivnuje (pocitejte tedy jen se tremi elektrodami uvnitr). Potrubi je vyplneno dvema prostredimi, jejichz elektricke vodivosti jsou σ1 a σ2. Urcete: 1) Potencialy v deseti bodech 10 az 19 o souradnicich (x10, y10) az (x19, y19) 2) Slozku intenzity elektrickeho pole Ex ve stredu potrubi. Výpis proměnných pro Vaše zadání Poř. proměnná hodnota jednotka 1 A 6.1 m 2 σ1 12400 S/m 3 σ2 72300 S/m 4 x1 1.34 m 5 y1 1.65 m 6 typ1 1 - 7 α1 0 rad 8 φ1 2 V 9 x2 4.39 m 10 y2 2.2 m 11 typ2 1 - 12 α2 0 rad 13 φ2 9 V 14 x3 1.43 m 15 y3 4.27 m 16 typ3 1 - 17 α3 0 rad 18 φ3 4 V 19 x4 4.48 m 20 y4 3.9 m 21 typ4 2 - 22 α4 1.571 rad 23 φ4 1 V 24 x10 0.305 m 25 y10 0.366 m 26 x11 0.61 m 27 y11 3.233 m 28 x12 1 m 29 y12 1 m 30 x13 2 m 31 y13 5 m 32 x14 3 m 33 y14 1 m 34 x15 3 m 35 y15 4 m 36 x16 3.691 m 37 y16 1.403 m 38 x17 4.423 m 39 y17 4.27 m 40 x18 5.155 m 41 y18 1.678 m 42 x19 5.551 m 43 y19 0.8845 m Formulář pro zaslání výsledků Poř. Požadovaný údaj ("vypočtěte") Povolená odchylka v procentech Váš výsledek (uveďte v SI, jednotky neuvádějte) 1 Potencial bodu 10 5 2 Potencial bodu 11 5 3 Potencial bodu 12 5 4 Potencial bodu 13 5 5 Potencial bodu 14 5 6 Potencial bodu 15 5 7 Potencial bodu 16 5 8 Potencial bodu 17 5 9 Potencial bodu 18 5 10 Potencial bodu 19 5 11 Ex 5 |
http://www.openforce.at/mozparty2/?party=65 http://www.onlamp.com/pub/a/onlamp/2004/11/04/which_wiki.html
#include <ipOS.h> #include <ipUART.h>
CONFIG_BLOCK (
- FUSE0(FUSE0_XTAL | FUSE0_PIN_DIV1 | FUSE0_POUT_DIV2 | FUSE0_WUDP_128us | FUSE0_WUDX_1ms), FUSE1(0), OSC1_FREQ, "UBICOM", "starter", CONFIG_VER(0, 0, 0, 0), CONFIG_DATE(0, 0, 0), CONFIG_DATE(0, 0, 0) );
#if defined(DEBUG) #define RUNTIME_DEBUG 1 #else #define RUNTIME_DEBUG 0 #endif
THIS_FILE("main");
#define K_1 0x11 #define K_2 0x12 #define K_3 0x14 #define K_A 0x18 #define K_4 0x21 #define K_5 0x22 #define K_6 0x24 #define K_B 0x28 #define K_7 0x41 #define K_8 0x42 #define K_9 0x44 #define K_C 0x48 #define K_STAR 0x81 #define K_0 0x82 #define K_HASH 0x84 #define K_D 0x88
#define VID_X 40 #define VID_Y 30 u8_t vidmem[VID_X*VID_Y];
void zpoz(u16_t t) {
- u16_t i, j;
for (i = 0; i < t; i++)
for (j = 0; j < t; j++) {}
}
void init(void) {
- debug_init();
heap_add((addr_t)(&_bss_end), (addr_t)(RAMEND - (DEFAULT_STACK_SIZE - 1)) - (addr_t)(&_bss_end)); timer_init();
- (u8_t *)RBDIR = 0x00;
- (u8_t *)RCOUT = 0xff; memset(vidmem, 0, VID_X*VID_Y);
}
u8_t getkey() {
- u8_t k = 0;
- (u8_t *)RCDIR = 0x0f; zpoz(10);
k |= *(u8_t *)RCIN & 0x0f;
- (u8_t *)RCDIR = 0xf0; zpoz(10);
k |= *(u8_t *)RCIN & 0xf0; return k;
}
u8_t pressed(u8_t k) {
if ((getkey() & k) == k) return 1; return 0;
}
void drawline(u8_t y) {
- u8_t x = 0;
for (x = 0; x < VID_X; x++) {
- (u8_t *)RBOUT = vidmem[y*VID_Y+x];
}
void draw() {
- u8_t y = 0;
for (y = 0; y < VID_Y; y++)
- drawline(y);
}
void start(void) {
- init(); u8_t i = 0x01; for (;;) {
if (pressed(K_1) && !(i & 0x80)) i *= 2; else if (pressed(K_2) && !(i & 0x01)) i /= 2;
- (u8_t *)RBOUT = i; zpoz(100);
}
#include <ipOS.h> #include <ipUART.h>
CONFIG_BLOCK (
- FUSE0(FUSE0_XTAL | FUSE0_PIN_DIV1 | FUSE0_POUT_DIV2 | FUSE0_WUDP_128us | FUSE0_WUDX_1ms), FUSE1(0), OSC1_FREQ, "UBICOM", "starter", CONFIG_VER(0, 0, 0, 0), CONFIG_DATE(0, 0, 0), CONFIG_DATE(0, 0, 0) );
#if defined(DEBUG) #define RUNTIME_DEBUG 1 #else #define RUNTIME_DEBUG 0 #endif
THIS_FILE("main");
#define K_1 0x11 #define K_2 0x12 #define K_3 0x14 #define K_A 0x18 #define K_4 0x21 #define K_5 0x22 #define K_6 0x24 #define K_B 0x28 #define K_7 0x41 #define K_8 0x42 #define K_9 0x44 #define K_C 0x48 #define K_STAR 0x81 #define K_0 0x82 #define K_HASH 0x84 #define K_D 0x88
#define VID_X 40 #define VID_Y 30 u8_t vidmem[VID_X*VID_Y]; struct oneshot led_timer;
void zpoz(u16_t t) {
- u16_t i, j;
for (i = 0; i < t; i++)
for (j = 0; j < t; j++) {}
}
void init(void) {
- debug_init();
heap_add((addr_t)(&_bss_end), (addr_t)(RAMEND - (DEFAULT_STACK_SIZE - 1)) - (addr_t)(&_bss_end)); timer_init();