Keil实例仿真AT89C51串口UART收发数据(附程序)

本文详细介绍了如何使用Keil μVision5进行AT89C51串口UART通信的仿真,包括软件设置、UART配置、发送与接收程序段,以及仿真结果展示,旨在解决Proteus中串口接收问题。
摘要由CSDN通过智能技术生成

目录

一、引言

二、所用软件

1、串口调试工具

 2、虚拟串口软件

 3、Keil μVision5

 三、软件设置

1、串口调试助手软件设置

2、虚拟串口软件设置

3、Keil C51设置

A、调试(.ini)文件建立

B、Debug调试引入虚拟串口设置

C、COM1和COM2虚拟串口连接配对原理图

四、仿真实例介绍

1、UART配置程序段

2、发送程序段

3、中断接收程序段

4、延时程序段

5、P3初始化程序段

6、MAIN函数段

五、仿真结果

 六、已调程序

七、软件使用提示


一、引言

新近发现用Proteus配Keil for C51编译器调试UART串口收发通讯,发送没有问题,接收总是有问题,输入RXD的波形、波特率以及串口配置都是对的,但AT89C51就是不接收数据,RI不置位,也不能进入串口中断4程序,同样的程序移到Keil μVision5里,调试就妥妥的,收发自如,网上也看了别人的帖子和文章,大都是用Proteus自带的Virtual Termimal看到收到调试助手借助虚拟串口发的数据,但并不代表AT89C51真真收到了数据,拿网上贴出来的程序测试,也同样不能进入接收中断程序,RI不置位,严重怀疑Proteus的AT89C51模块有小问题,有同样问题或解决了该问题的高手,请回帖讨论。这里只实例介绍一下Keil仿真AT89C51串口收发数据的详细过程,相互学习,共同进步。

二、所用软件

1、串口调试工具

SSCOM是一款很不错的串口调试软件,收发数据行云流水不卡顿,就是界面略显花哨,不过还是要感谢开发者,不停地迭代更新,给大家带来的惊喜连连,在这里就顺带声援支持一下。 

 

 2、虚拟串口软件

Virtual Serial Port Driver 是由 Electronic Team 开发的软件包,其功能如同 Windows机器上的虚拟 COM 端口仿真器。 该软件可以创建虚拟 COM 端口,能使用虚拟零调制解调器电缆成对连接,所创建的每个虚拟串口都将与串行应用程序进行通信,就好像它们是实际物理端口一样。

 3、Keil μVision5

Keil C51编译器自1988年引入市场以来成为事实上的行业标准,并支持超过500种8051变种。Keil公司在2005年被ARM收购,通过这次收购,Keil将能更好地向高速发展的32位微控制器市场提供完整的解决方案,同时继续在μVision环境下支持8051和C16x编译器。

 三、软件设置

1、串口调试助手软件设置

SSCOM在本例中设置:1)9600波特率,10位一帧,0起始位+8位数据+1停止位,无校验;2)加时间戳和分包显示,分包以大于等于一段完整的收发数据为宜;3)视程序设计定时重复发送数据给Keil中预设的虚拟串口。

2、虚拟串口软件设置

VSPD设置分3步:1)选好配对虚拟串口;2)点击添加虚拟串口对;3)生成配对好的虚拟串口对,一发一收,就像实际连接在一起的串口鸳鸯对。

 

3、Keil C51设置

A、调试(.ini)文件建立

1)先在Keil项目文件夹目录下面建立一个“.ini”文件,第一行写入指定AT89C51侧的虚拟串口号,并配置好串口(如波特率9600等信息);2)第二行指定AT89C51侧的虚拟串口输入输出(本例为COM1),写好后保存文件(本例起名为debug_C51.ini)。两行语句模式如下:

        MODE COMx baudrate, parity, databits, stopbits
        ASSIGN COMx <SIN> SOUT

B、Debug调试引入虚拟串口设置

1)点击μVision5的魔法棒;2)在Debug页面把上面A步建立好的debug_C51.ini添加进来。

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值