API UART: Rozdiel medzi revíziami
Skočit na navigaci
Skočit na vyhledávání
(Vytvorená stránka „Category:Mikroprocesorové systémy __NOTOC__ {{Draft}} == Aplikačné rozhranie bloku UART == zoznam funkcií s krátkym popisom * ''funkcia 1'' - robi toto a toto…“) |
|||
Riadok 13: | Riadok 13: | ||
== Príklady použitia == | == Príklady použitia == | ||
− | + | Zdrojový kód jednoduchého povelov0ho interpreteru. Program prijíma znaky z UART a podľa ich významu vykonáva predvolené aktivity. | |
− | + | <source lang="asm"> | |
− | ... | + | _main: |
− | + | mov A,UART_PARITY_NONE ; inicializacia serioveho rozhrania | |
+ | call UART_Start | ||
+ | M8C_EnableGInt | ||
+ | |||
+ | WaitForData: ; cakanie na prichod znaku | ||
+ | call UART_bReadRxStatus | ||
+ | and A, UART_RX_COMPLETE | ||
+ | jz WaitForData | ||
+ | |||
+ | call UART_bReadRxData ; nacitanie znaku | ||
+ | call UART_SendData ; echo znaku | ||
+ | |||
+ | |||
+ | cmp A,'x' ; skok na aktivitu 'x' | ||
+ | jz state_x | ||
+ | |||
+ | cmp A,'y' ; skok na aktivitu 'y' | ||
+ | jz state_y | ||
+ | |||
+ | jmp WaitForData ; go wait for next byte | ||
+ | |||
+ | state_x: | ||
+ | ..... | ||
+ | jmp WaitForData | ||
+ | |||
+ | state_y: | ||
+ | ..... | ||
+ | jmp WaitForData | ||
+ | </source> | ||
== Odkazy a literatúra == | == Odkazy a literatúra == | ||
<references/> | <references/> |
Verzia zo dňa a času 23:34, 27. máj 2010
Aplikačné rozhranie bloku UART
zoznam funkcií s krátkym popisom
- funkcia 1 - robi toto a toto
- funkcia 2 - robi toto a toto
- funkcia 3 - robi toto a toto
Príklady použitia
Zdrojový kód jednoduchého povelov0ho interpreteru. Program prijíma znaky z UART a podľa ich významu vykonáva predvolené aktivity.
_main:
mov A,UART_PARITY_NONE ; inicializacia serioveho rozhrania
call UART_Start
M8C_EnableGInt
WaitForData: ; cakanie na prichod znaku
call UART_bReadRxStatus
and A, UART_RX_COMPLETE
jz WaitForData
call UART_bReadRxData ; nacitanie znaku
call UART_SendData ; echo znaku
cmp A,'x' ; skok na aktivitu 'x'
jz state_x
cmp A,'y' ; skok na aktivitu 'y'
jz state_y
jmp WaitForData ; go wait for next byte
state_x:
.....
jmp WaitForData
state_y:
.....
jmp WaitForData