Od trzech dni bawię się ARM AT91SAM7x256 i RTOS. O RTOS nie wiem nic. Analizując program z www.freertos.org doszedłem co gdzie zmienić żeby dane które chce pojawiały sie w przeglądarce na PC, może ktoś zna odpowiedzi na te pytania:
1. RTOS w AT91SAM i w ogóle "system czasu rzeczywistego" w mikrokontrolerach polega na wywoływaniu wewnętrznego przerwania które to przerwanie zarządza wszystkimi zadaniami?
2. Jak pierwszy punkt jest prawda, czy częstotliwość wywoływania tego przerwania da się zmienić?
Vector Mapping ARM AT91SAM7x256
0x00 Reset handler - tu jestem po resecie
undefvec: 0x04 Undefined Instruction - to oczywiste
swivec: 0x08 Software Interrupt - tu jak jak RTOS i chyba coś jeszcze
pabtvec: 0x0C Prefetch Abort - to też oczywiste
dabtvec: 0x10 Data Abort - to też..
rsvdvec: 0x14 reserved
irqvec: 0x18 IRQ - przerwania od 2do 31
fiqvec: 0x1C FIQ szybkie przerwania
3. Czy przerwania zewnętrzne dzałaja tak: ?
Jak wywołam przerwanie IRQX (X= 2-31) i CPSR I=0
3.1. PC zapisuje w R14
3.2. PC pod "skok" adres 0X18
3.3. następny cykl jestem pod adresem 0x1C
3.4. ARM CORE zmniejsza R14 o 4
3.5. ARM wchodzi w Interrupt mode
3.6. Jak instrukcja pod adresem 0x18 się wykona to PC "skacze" pod adres który jest w AIC_SVRX
(X=0-31).
4. Jak Stronę napisaną w Html "przerobić" na tablice char'ow ?
1. RTOS w AT91SAM i w ogóle "system czasu rzeczywistego" w mikrokontrolerach polega na wywoływaniu wewnętrznego przerwania które to przerwanie zarządza wszystkimi zadaniami?
2. Jak pierwszy punkt jest prawda, czy częstotliwość wywoływania tego przerwania da się zmienić?
Vector Mapping ARM AT91SAM7x256
0x00 Reset handler - tu jestem po resecie
undefvec: 0x04 Undefined Instruction - to oczywiste
swivec: 0x08 Software Interrupt - tu jak jak RTOS i chyba coś jeszcze
pabtvec: 0x0C Prefetch Abort - to też oczywiste
dabtvec: 0x10 Data Abort - to też..
rsvdvec: 0x14 reserved
irqvec: 0x18 IRQ - przerwania od 2do 31
fiqvec: 0x1C FIQ szybkie przerwania
3. Czy przerwania zewnętrzne dzałaja tak: ?
Jak wywołam przerwanie IRQX (X= 2-31) i CPSR I=0
3.1. PC zapisuje w R14
3.2. PC pod "skok" adres 0X18
3.3. następny cykl jestem pod adresem 0x1C
3.4. ARM CORE zmniejsza R14 o 4
3.5. ARM wchodzi w Interrupt mode
3.6. Jak instrukcja pod adresem 0x18 się wykona to PC "skacze" pod adres który jest w AIC_SVRX
(X=0-31).
4. Jak Stronę napisaną w Html "przerobić" na tablice char'ow ?