[其它应用] 串口没有配置好?

[复制链接]
1180|3
 楼主| zhanglli 发表于 2015-2-8 15:56 | 显示全部楼层 |阅读模式
我根据例程,改了个十分简单的串口通信程序,该方法我通过proteus仿真,能够实现功能,但是下载到SH88f516中,就出问题了,按理说,即使波特率,和停止位位数这些不正确,通过串口助手仍然能够收到数据才是,虽然数据可能是错的。经过调试发现,有块PCB上是SBUF一直不能够得到值,但是TI会变化;有一块则是SBUF能得到一次赋值,但一直在执行while(TI == 0);即TI一直无法变成1.
使用EUART1,没有问题。这是我串口没有配置好?请各位不吝赐教!
主要的配置程序如下:
T2MOD        =        Bin(00000000);        //设置Timer2用于产生波特率(baudrate generator
T2CON        =        Bin(00110000);
SCON        =        Bin(11010000);
RCAP2L        =        LOBYTE(UART_BAUDRATE);
TL2        =        LOBYTE(UART_BAUDRATE);
RCAP2H        =        HIBYTE(UART_BAUDRATE);
TH2        =        HIBYTE(UART_BAUDRATE);
//////////////////////////////////////////////////////
while(1)
{
SBUF = 10;                 
while(TI == 0);
TI = 0;
}
lium 发表于 2015-2-8 15:58 | 显示全部楼层
用的是Tx1和Rx1,所以只能使用EUART1
 楼主| zhanglli 发表于 2015-2-8 15:59 | 显示全部楼层
哦,这样啊
jpxjpxjpx 发表于 2015-3-17 19:43 | 显示全部楼层
中颖4位8位MCU, 锂电池管理IC,一级代理商,姜先生 QQ256278599 电话13242940546
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1016

主题

9386

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部
0