主题 : 请教下串口通信的一个问题,急。。。 复制链接 | 浏览器收藏 | 打印
什么叫“个性签名”?
级别: 新手上路
UID: 24612
精华: 0
发帖: 16
金钱: 95 两
威望: 19 点
综合积分: 32 分
注册时间: 2010-07-11
最后登录: 2011-07-15
楼主  发表于: 2011-05-09 10:41

 请教下串口通信的一个问题,急。。。

void putc(unsigned char c)
{
    while( ! (UTRSTAT0 & TXD0READY) );
    UTXH0 = c;
}
以上的是我有串口输出函数。

当C为一个字符如“a”时,可以正常输出,但当C为一个int ,float等类型时(此时putc的形参类型也做对应修改),要不输不出来,要不输出为乱码。

请着呢下这是什么原因造成的呢?该如何解决啊?
签名不可超过 100 字节
级别: 新手上路
UID: 27808
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2010-09-01
最后登录: 2015-11-15
1楼  发表于: 2011-05-09 23:31
UTXH0 8bit,请你核对
级别: 新手上路
UID: 45162
精华: 0
发帖: 16
金钱: 80 两
威望: 16 点
综合积分: 32 分
注册时间: 2011-05-02
最后登录: 2012-12-23
2楼  发表于: 2011-05-24 15:31
串口每次发送的是一个字节流,如果你定义的是int相当于4个字节,发送当然会出错啦