本帖最后由 ustbyf 于 2010-1-17 15:48 编辑
在AVR Mega8中,想使能串口接收中断,通过向导生成一段初始化程序,如下:
可是,按照Mega8的Datasheet上说明的,要想实现接收中断使能,UCSRB的第7位必须为1,且UCSRA的第1位(RXC)也必须为1,才能实现中断,可是向导生成的UCSRA的第7位为0,应该不会实现中断的,可是在试验中发现可以中断,不理解为什么?
问题综述:
实现串口接收中断,向导生成的初始化程序和Datasheet上的不一致,表现在UCSRA的第7位恰好相反。但是向导生成的程序在试验中是可以正确实现接收中断。 |