打印

串口通信发程序出现问题 一直没解决

[复制链接]
1937|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
胡斯哲|  楼主 | 2012-12-31 23:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 胡斯哲 于 2013-1-1 15:26 编辑

我用的12m晶振 芯片为STC12c5a60s2 自己参照网上写的程序如下(问题很多):
#include <reg52.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

sbit k1=P2^5;
uchar code table[]="wlllllllllllllllllllll";
uchar i;
void delay(int x)
{
        uchar j;
        while(x--)
        {
                for(j=0;j<120;j++);
        }
}  
void mian()
{
        SCON = 0x50;
        TMOD = 0x20;
        PCON = 0x00;
        TH1 = 0xf3;
        TL1 = 0xf3;
        TR1 = 1;
        IE = 0x00;
        while(1)
        {
                if(k1==0)
                {        
                        i=0;
                        delay(100);       //消抖
                        while(table!='\0')
                        {
                                SBUF = table;
                                while(!TI);
                                TI = 0;
                                i++;  
                        }               
                }
        }
}
但用stc-isp的串口调试助手结果如图结果总是乱码,还有就是那个字符串有大于22位(不算'|0')时,串口调试助手的接收区才会有反应:

相关帖子

沙发
胡斯哲|  楼主 | 2012-12-31 23:57 | 只看该作者
求知道的帮个忙   谢谢罗

未命名.jpg (75.21 KB )

未命名.jpg

使用特权

评论回复
板凳
uet_cache| | 2013-1-1 14:52 | 只看该作者
table是地址,怎么会将地址送到SBUF...?
SBUF=table[i];才是送值吧,还有你的判断也不应该直接table,而是table[i].
再不清楚,可以看下c语言中的数组指针的字义。。

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
胡斯哲 + 1 赞一个!
地板
胡斯哲|  楼主 | 2013-1-1 15:24 | 只看该作者
uet_cache 发表于 2013-1-1 14:52
table是地址,怎么会将地址送到SBUF...?
SBUF=table;才是送值吧,还有你的判断也不应该直接table,而是tabl ...

不知道怎么弄的  后面两个table后的都没显示出来  我原来的程序为table . 发送的是乱码

使用特权

评论回复
5
胡斯哲|  楼主 | 2013-1-1 15:28 | 只看该作者
不知怎么搞的    编辑再加[]  还是显示不出来table[i]

使用特权

评论回复
6
uet_cache| | 2013-1-1 19:07 | 只看该作者
绝对是程序问题

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
胡斯哲 + 1
7
vincen| | 2013-1-1 22:41 | 只看该作者
看看波特率设置对了没

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
胡斯哲 + 1
8
shaomeicai| | 2013-1-2 19:08 | 只看该作者
main单词写错了;方式1不关TI的事

使用特权

评论回复
评分
参与人数 1威望 +2 收起 理由
胡斯哲 + 2
9
胡斯哲|  楼主 | 2013-1-3 01:54 | 只看该作者
shaomeicai 发表于 2013-1-2 19:08
main单词写错了;方式1不关TI的事

谢谢了  还真是main的事  非常感谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:读书喝茶,不争朝夕

141

主题

1431

帖子

6

粉丝