打印

单片机串行通信的简单问题

[复制链接]
1716|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
YTDXGD073-2|  楼主 | 2009-9-8 16:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我刚刚接触单片机,请教大家一个简单问题请大家一定回复
在串行口初始化时
#include <reg52.h>
#include <stdio.h>
void uart_init();
void main()
{
     uart_init();
     printf("hello\n")
}
void uatr_init()
{
    SCON=0X52;
    TMOD=OX20;
    TH1=0XFD;
    TR1=1;
}
请问为什么将SCON赋值为0X50时(TI位为0时)程序无法输出“hello”

相关帖子

沙发
auzxj| | 2009-9-8 16:24 | 只看该作者
我刚刚接触单片机,请教大家一个简单问题请大家一定回复

好,我来回复一下:lol

使用特权

评论回复
板凳
auzxj| | 2009-9-8 16:30 | 只看该作者
1)、
printf("hello\n")

这句后面要有分号
2)、不知道你的printf();函数的代码,不了解细节
3)、程序执行完printf("hello\n");后就飞了,但愿printf()里有死循环,执行不完~~~~
4)、至于SCON各位的含义,还是查查51的书吧,我记不住,也懒得去拿旁边书架上的书了,书上说的很详细~~~

使用特权

评论回复
地板
雁舞白沙| | 2009-9-8 21:53 | 只看该作者
程序没有飞,是不断的执行!

使用特权

评论回复
5
vrgood| | 2009-9-8 22:08 | 只看该作者
TMOD=OX20;
TMOD=0X20;

使用特权

评论回复
6
auzxj| | 2009-9-8 23:23 | 只看该作者
程序没有飞,是不断的执行!
雁舞白沙 发表于 2009-9-8 21:53

你怎么知道没飞?楼主是你的马甲?:lol

使用特权

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

本版积分规则

2

主题

3

帖子

0

粉丝