现象1:
调试时,打开register串口,发现UART2_DR这个寄存器旁边是"----"这种横杠,好像是这个寄存器不允许操作似的,追踪过UART2_DR地址分配,和数据手册写的一样,应该没有错,但是程序只要一执行到发送数据UART2_DR=data;这里,程序像死掉了一样不执行了,百思不得其解;
现象2:
无法将分频值写到寄存器UART2_BRR2中,比如波特率为9600的话,正常的话应该是执行以下两句,
USART2->BRR2=0x03;//设置波特率9600
USART2->BRR1=0x68;//16M/9600=0x683
但跟踪发现,执行完上面两句后,USART2->BRR2中的值还是0 ,怎么都赋不上值。、
我不知道这两个现象有没有关联性,,哪位大侠能帮忙解释一下,或给个思路么?在此谢过了! |