Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
ldi temp1,RAMEND
out SPL,temp1 ; Locate stack
Можно еще задействовать встроенный UART на скорости 115200 бод, быстрее будет происходить обновление. Для этого нужно добавить инициализацию UART и заменить функции getc и putc.
;***************************************************************************
;*
;* CONSTANTES
;*
;***************************************************************************;**** Constant declarations Data Rate ****
.equ XTAL = 11059200 ;XTAL frequency, kHz
.equ BAUD = 115200 ;Data rate, bauds.equ N = ((XTAL*10)/(16*BAUD)-5)/10
;***************************************************************************
;*
;* FUNCTION
;* u_init
;*
;* DESCRIPTION
;* Initialize UART.
;*
;***************************************************************************u_init:
ldi temp1,N ; set baud rate
out UBRR,temp1
ldi temp1,(1<out UCR,temp1
ret;***************************************************************************
;*
;* FUNCTION
;* getc
;*
;* DESCRIPTION
;* Wait for start bit and receive a character on the UART Rx line.
;*
;***************************************************************************getc:
sbis USR,RXC ; wait until a character has been received
rjmp getc
in u_data,UDR ; Read byte from the UART
ret;***************************************************************************
;*
;* FUNCTION
;* putc
;*
;* DESCRIPTION
;* Send a character on the UART Tx line.
;*
;***************************************************************************putc:
sbis USR,UDRE ; test for TX register empty
rjmp putc ; loop until TX empty
out UDR,u_data ; send the byte
ret