USART (AVR - PC) ATtiny2313 en ASM
Página 1 de 1.
USART (AVR - PC) ATtiny2313 en ASM
Una de las primeras cosas que se aprende con un uC o lenguaje de programación es la comunicación serie. Y aquí un pequeño programa que hice, éste actúa como un eco, lo que recibe lo vuelve a transmitir.
Esta interesante el uso de AVR, cada vez me laten más
Para ensamblar y programar en el uC:
El diagrama de conexiones:
Saludos!
Esta interesante el uso de AVR, cada vez me laten más
- Código:
; Author: aztk
; Date: April, 2012
; Name: serial_echo.asm
; uC: ATtiny2313
;
; Ejemplo de USART, configurado como eco
; Baud rate: 9600
; Data bits: 8
; Stop bits: 1
;
; fosc = 8MHz (oscilador interno)
; lfuse = 0xe4
.include "tn2313def.inc"
; Tabla de interrupciones
rjmp inicio ;1 RESET
reti ;2 INT0
reti ;3 INT1
reti ;4 TIMER1 CAPT
reti ;5 TIMER1 COMPA
reti ;6 TIMER1 OVF
reti ;7 TIMER0 OVF
rjmp int_RX ;8 USART0, RX
reti ;9 USART0, UDRE
reti ;10 USART0, TX
reti ;11 ANALOG COMP
reti ;12 PCINT
reti ;13 TIMER1 COMPB
reti ;14 TIMER0 COMPA
reti ;15 TIMER0 COMPB
reti ;16 USI START
reti ;17 USI OVERFLOW
reti ;18 EE READY
reti ;19 WDT OVERFLOW
inicio:
; Set up the stack
ldi r16, LOW(RAMEND)
out SPL, r16
;ldi r16, HIGH(RAMEND)
;out SPH, r16
; Definir I/O
; USART setup
; Set baud rate (9600 bauds, fosc = 8MHz, U2X = 1)
ldi r16, 0
out UBRRH, r16
ldi r16, 103
out UBRRL, r16
; U2X = 1
ldi r16, (1 << U2X)
out UCSRA, r16
; Enable receiver and transmitter
; Enable RX complete interrupt
ldi r16, (1 << RXCIE) | (1 << RXEN) | (1 << TXEN)
out UCSRB, r16
; Set frame format: 8data, 1stop bit
ldi r16, (3 << UCSZ0)
out UCSRC, r16
; Global interrupt enable
sei
; Progrma principal
main:
nop
rjmp main
; END
; ISR
int_RX: ; Lee el dato recibido por USART
in r17, UDR
rcall TX_data
reti
; SUBRUTINAS
TX_data: ; Transmite un dato por USART
sbis UCSRA, UDRE
rjmp TX_data
out UDR, r17
ret
Para ensamblar y programar en el uC:
- Código:
$ avra serial_echo.asm
$ avrdude -p t2313 -c pickit2 -e -U flash:w:serial_echo.hex -U lfuse:w:0xe4:m
El diagrama de conexiones:
Saludos!
aztk- Participante Activo
- Mensajes : 52
Fecha de inscripción : 08/06/2009
Edad : 36
Localización : Tenochtitlan
Temas similares
» USART (PIC-PC) PIC16F87x
» PC-Pic por usart a 230.400 baud??
» prueva con usart.h y masterI2C.h
» Ktechlab-0.3.7 modificado.
» SDCC: Driver para Usart PIC16*
» PC-Pic por usart a 230.400 baud??
» prueva con usart.h y masterI2C.h
» Ktechlab-0.3.7 modificado.
» SDCC: Driver para Usart PIC16*
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.