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

[复制链接]
2362|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 | 显示全部楼层
程序没有飞,是不断的执行!
vrgood 发表于 2009-9-8 22:08 | 显示全部楼层
TMOD=OX20;
TMOD=0X20;
auzxj 发表于 2009-9-8 23:23 | 显示全部楼层
程序没有飞,是不断的执行!
雁舞白沙 发表于 2009-9-8 21:53

你怎么知道没飞?楼主是你的马甲?:lol
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

3

帖子

0

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