共2条
1/1 1 跳转至页
问
我做AVR的串口初始化,程序如下
void init_USART(void)
{
UCSR0C = (1<< 6 ) | 0x06; //同步模式,无校验,1个停止位,8个数据位
/*
* Setting BaudRate to 9600 bit/ s, 8 N 1 ;
*/
UBRR0L = 0x2F ;
UBRR0H = 0x00 ;
UCSR0A = 0x00;
UCSR0B = (1<<RXEN0) | (1<<TXEN0);
UCSR0C = ( 3 << UCSZ00 );
}
为什么在main函数中调用这个函数时会跑飞呢?
单步执行能看到,执行到这个函数最后一句就步知道飞哪儿去了
请各位大虾指点一下.谢谢!
答 1: 估计是M128吧把熔丝位里的M103兼容位取消即可! 答 2: re:不知道你用的是什么编译器?
我记得在project-->option中如果没有选择单片机的类型就会导致这种情况。
默认的好像是custom,改成实际用的就可以了。
你试一下吧。。。
void init_USART(void)
{
UCSR0C = (1<< 6 ) | 0x06; //同步模式,无校验,1个停止位,8个数据位
/*
* Setting BaudRate to 9600 bit/ s, 8 N 1 ;
*/
UBRR0L = 0x2F ;
UBRR0H = 0x00 ;
UCSR0A = 0x00;
UCSR0B = (1<<RXEN0) | (1<<TXEN0);
UCSR0C = ( 3 << UCSZ00 );
}
为什么在main函数中调用这个函数时会跑飞呢?
单步执行能看到,执行到这个函数最后一句就步知道飞哪儿去了
请各位大虾指点一下.谢谢!
答 1: 估计是M128吧把熔丝位里的M103兼容位取消即可! 答 2: re:不知道你用的是什么编译器?
我记得在project-->option中如果没有选择单片机的类型就会导致这种情况。
默认的好像是custom,改成实际用的就可以了。
你试一下吧。。。
共2条
1/1 1 跳转至页
我要赚赏金
