Sari la conținut
ELFORUM - Forumul electronistilor

Problema cu USART


rotten

Postări Recomandate

Nu reusesc sa declansez intreruperea RX pt portul serial cu un microcontroller ATMEGA32

In sistemul clasic : cu verificarea bitului RXC din UCSRA totul merge bine

dar intreruperea nu se declanseaza niciodata

codul in C functioneaza bine => device-ul e ok, dar am nevoie de asm pt viteza

OC1Aaddr si URXCaddr sant luate din m32def.inc

//initializare procesor..include "m32def.inc".....org 0x0000	rjmp RESET; res.org OC1Aaddr	rjmp OC1A_I.org URXCaddr	rjmp SERIALSERIAL:	in r16,UDR	//out UDR,r16	//ldi r16,'X'	mov R_SERIAL,r16	call SERIAL_OUT	retiRESET: .....            ldi r16,0x00	out UCSRA,r16	ldi r16,0b1001_1000;(1<<RXCIE)|(1<<RXEN) | (1<<TXEN) 	out UCSRB,r16	ldi r16,(1<<URSEL)| (0<<USBS) | (1<<UCSZ0) | (1<<UCSZ1)|(0<<UPM1) | (0<<UPM0)	out UCSRC,r16		ldi r16,129	out UBRRL,r16 ......           sei.......         LOOP:                nop         jmp LOOP
Link spre comentariu
  • Răspunsuri 1
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • rotten

    2

Zile populare

Top autori în acest subiect

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări