打印

帮我看看我PC机与51的通信问题

[复制链接]
1605|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liuxi6410|  楼主 | 2007-5-6 13:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我按照别人已经做好的MAX232的连接方式连接
在2脚有+10V电压,在6脚有-10电压.我的单片机的晶振是11.0592,程序如下:
ORG 0000H
    AJMP main0
    ORG 0030H
main0:     MOV 20H,#00H
    MOV TMOD,#22H        ;设定时器工作方式
    MOV SCON,#40H
    MOV TH1,#0FdH
    MOV TH1,#0FdH         ;速度9600(11.0592m)
    MOV PCON,#80H
    SETB TR1
    SETB REN        ;允许接收
    ajmp start
start:    mov dptr,#ok        ;查表
senda:     clr a ;
    movc a,@a+dptr
    cjne a,#'$',senda_0
    ajmp $            ;遇到$停止。
senda_0:mov sbuf,a
    JNB TI,$        ;串行发送一帧结束了吗?
    CLR TI ;
    inc dptr        ;指针加一
    Ljmp senda
ok: db 0dh,0ah,0dh,0ah,"如果我还有一天寿命,那天我要做你女友。我还有一天的命吗?..没有。所以,很可惜。我今生仍然不是你的女友。如果我有翅膀,我要从天堂飞下来看你。我有翅膀吗?..没有。所以,很遗憾。我从此无法再看到你。",0dh,0ah,'$'
end
在有串口调试精灵调试
就是只要发送没有接收咯
电路图如下:

相关帖子

沙发
turmary| | 2007-5-6 13:59 | 只看该作者

你要看清楚,

这个程序本没有接收
且显示接收内容的功能部分..

使用特权

评论回复
板凳
renrongwen| | 2007-5-6 16:59 | 只看该作者

是不是这样?

  MOV TH1,#0FdH         ;速度9600(11.0592m)
,这句是不是该是MOV TL1,#0FdH 。附件里有一个刚调试好的程序。

使用特权

评论回复
地板
shang21ic| | 2007-5-6 18:17 | 只看该作者

使用keil调试,基本上不用硬件都可以调试出来.

使用特权

评论回复
5
diannaoza| | 2007-5-8 01:47 | 只看该作者

无串口中断地址

    ajmp $            ;遇到$停止。

org 0023h
ajmp ....
串口中断
;;

使用特权

评论回复
6
yaoyunyuan| | 2007-5-15 17:22 | 只看该作者

你学过单片机没?程序还能写成那样?

使用特权

评论回复
7
conwh| | 2007-5-15 18:17 | 只看该作者

至少缺了个TL1

使用特权

评论回复
8
wang21| | 2007-5-16 15:42 | 只看该作者

随便说

乱七八糟的硬件图,无逻辑性可言,好好看书吧。炼好基本功,别一有问题就发帖子。真正的老师是你自己。

使用特权

评论回复
9
zssmcu| | 2007-5-17 16:12 | 只看该作者

有没有注意发送和接受要交叉啊!

使用特权

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

本版积分规则

9

主题

11

帖子

0

粉丝