找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1258|回复: 10
打印 上一主题 下一主题
收起左侧

单片机开发板 RS485通信接收可以,不能发送 如何调试

[复制链接]
跳转到指定楼层
楼主
20黑币
我学习单片机一段时间, 现在学习RS485通信.用普中A7
我在12C5A60S2开发板学习了一个用RS485通信的代码, 是可正常运行的, 我用SSCOM32和4IN1的USB->485相互通信也正常.
我把代码修改一下移植到普中A7开发板和KST开发板处, 在SSCOM32发送AA 55, 可以令开发板的LED灯发亮, 但按按键1, SSCOM32显示1个 05后, 开发板就出现死机一样. 要按RESET键.
RESET後按键2, SSCOM32显示01 02 後, 开发板又出现死机.
请问各位我代码用在C51中有什么错误呢?
谢谢

/****************************************************************************
         KSCheang 单片机练习
功能: 普中A7开发板之485发送字串,数组, 接收令LED亮
芯片:89C52RC
晶振:11.0592MHZ(9600,N,8,1)
环境:Keil4
硬件:普中A7开发板
日期:20230706
程序:  用按键1~4选择发送整数, 数组, 字串

用USB-485通信.jpg (861.92 KB, 下载次数: 40)

用USB-485通信.jpg

发AA55去单片机.jpg (231.73 KB, 下载次数: 42)

发AA55去单片机.jpg

按K2发0102后死机.jpg (142.75 KB, 下载次数: 40)

按K2发0102后死机.jpg

按K1发05后死机.jpg (219.66 KB, 下载次数: 34)

按K1发05后死机.jpg

LED可以按AA55亮.jpg (787.43 KB, 下载次数: 35)

LED可以按AA55亮.jpg

RS485发送接收.pdf

185.44 KB, 下载次数: 4

RS485 普中.zip

35.21 KB, 下载次数: 3

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:123289 发表于 2023-7-20 08:42 | 只看该作者
这还用说,程序逻辑时序不合理啊。
回复

使用道具 举报

板凳
ID:161164 发表于 2023-7-20 09:22 | 只看该作者
代码呢?
不贴代码你猜我猜不猜得到你错在哪?
回复

使用道具 举报

地板
ID:74687 发表于 2023-7-20 09:28 | 只看该作者
一点代码都没有,你让人猜?
回复

使用道具 举报

5#
ID:320306 发表于 2023-7-20 09:42 | 只看该作者
是不是串口波特率设置不对,一个单片机是12T的,一个单片机是1T的原因?
回复

使用道具 举报

6#
ID:1088946 发表于 2023-7-20 09:54 | 只看该作者
代码发出来
回复

使用道具 举报

7#
ID:860248 发表于 2023-7-20 12:37 | 只看该作者
不好意思
我有写上代码的,
但現在只有这几句
我再POST一次
回复

使用道具 举报

8#
ID:860248 发表于 2023-7-20 12:39 | 只看该作者
不好意思, 我有写上代码的, 但不知道为什么现在只得這这几行, 我再POST一次
回复

使用道具 举报

9#
ID:1089502 发表于 2023-7-24 18:09 | 只看该作者
以下是一些可能的原因和解决方法:

串口配置错误:请确保在移植代码时,正确配置了普中A7和KST开发板的串口参数,包括波特率、数据位、停止位和校验位等。在您的情况下,确保它们与 SSCOM32 中的串口配置一致。

中断处理错误:在移植过程中,确保正确处理 RS485 通信的中断。请检查您的代码,确认中断处理程序正确设置并及时清除中断标志位。

GPIO 配置错误:验证普中A7和KST开发板上使用的 GPIO 引脚与您的代码中的配置相匹配。确保正确配置发送和接收方向控制引脚(如 DE/RE 引脚)以及其他必要的引脚。

电源供应问题:RS485 通信需要稳定的电源供应。请确保在普中A7和KST开发板上使用充足的电源,并检查供电电路是否稳定。

通信超时或协议错误:检查代码中的通信超时设置和数据包解析逻辑。确保在通信时正确处理超时情况,并确保正确解析接收到的数据。

软件Bug:进一步检查代码中的逻辑错误、缓冲区溢出或其他可能导致死机的软件问题。您可以使用调试器或串口输出来检查程序的执行流程和变量状态。
回复

使用道具 举报

10#
ID:752974 发表于 2023-7-25 08:56 | 只看该作者
看看收发控制位,如果有这个位,是不是不在一个IO上。
回复

使用道具 举报

11#
ID:596109 发表于 2023-7-25 09:47 | 只看该作者
肯定是代码逻辑出问题了,查查代码吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表