关于422通信的一个问题

palleexu 2014-05-08 10:09:34
做一个项目,用的422通信方式,开始学习,板子做好了,准备调试,发现有点不受控,硬件是同事做的,用的MAX1490A,参考datasheet的,用串口调试助手调试,USB转422接口的一个转接板,再用接线端子接自己的线路板,想着用调试助手向板子发送十六进制0x1,板子通过串口中断接收数据,收到0x1后返回0x9给调试助手显示,现在的问题是:
1、单片机板子加电后就会给串口发数据0x00,但从示波器上看不到这个波形, 不知道为什么,同样单片机断电时也会向串口发送数据,在调试助手上有显示,但每次都不同,问题是我没有主动发,是单片机自己发的,而且在示波器上也看不到对应的波形,只是调试助手的接收窗口有数据,换了个调试助手也一样;
2、波特率9600,无校验,所用的硬件晶振单片机什么的都是以前用过的,软件也是原来的能用的,为什么不能正常通信,从波形上看,似乎单片机没有收到数据一样,始终跑飞状态?
脑子比较乱,没有思路,说的也乱七八糟的,不知道说清楚没,有可能是什么原因造成的,求思路,多谢。


...全文
917 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
palleexu 2014-05-10
  • 打赏
  • 举报
回复
啊,没注意,硬件是别的同事做的,我没注意看,明天再去试试,谢谢提醒先。
洗洗睡去 2014-05-09
  • 打赏
  • 举报
回复
先别跟下面通 自发自收试试
mangoalx 2014-05-09
  • 打赏
  • 举报
回复
兄弟,仔细看电路图,Y 和 Z 引脚接反了
palleexu 2014-05-09
  • 打赏
  • 举报
回复
从示波器上看,单片机能够正常判读到串口接收到了数据0x1或者0x2,要不然不会往外发数据(如果用调试助手发0x3什么的,单片机无反应),可为什么发送出来的数据到了调试助手那里就变了呢,奇怪。
里面讲了MSComm控件 、 WinAPI 串口通信、CSerial类,例子很详实,每一步操作都有解释。作者是龚建伟,有一个个人主页www.gjwtech.com,讲串口通信的内容比较多,还行,大家可以先看看这个主页。 本书目录 第1章轻松体验串口通信编程与调试 1.1初识串口 1.1.1从外观上了解串口 1.1.2 串口通信的发展前景 1.2 自己制作简单的串口线 1.2.1 三线制串口接线的规定 1.2.2 焊接制作自己的串口连接线 1.3 调试串口通信程序时的几种使用串口的技巧 1.3.1 查看计算机串口资源 1.3.2 常规调试-2个物理串口之间的通信 1.3.3 特殊调试-单个物理串口之间的通信 1.3.4 虚拟串口-为计算机添加取之不尽的串口资源 1.4 使用串口调试助手来体验串口通信 1.5体验Windows环境下Visual C++串口通信编程 1.6体验DOS环境下Turbo C串口通信编程 第2章 VC多线程串口编程工具CSerialPort类 2.1 类功能及成员函数介绍 2.2 应用CSerialPort类编制基于对话框的应用程序 2.3 应用CSerialPort类编制基于单文档的应用程序 2.4对CSerialPort类的改进 2.5 在Visual C++.NET中应用CSerialPort类 第3章 控件MSComm串口编程 3.1 MSComm控件详细介绍 3.1.1 VC中应用MSComm控件编程步骤 3.1.2 MSComm控件串行通信处理方式 3.1.3 MSComm 控件的属性说明 3.1.4 MSComm控件错误信息 3.2使用MSComm控件的几个疑难问题 3.2.1使用VARIANT 和SAFEARRAY 数据类型从串口读写数据 3.2.2 MSComm控件能离开对话框独立存在吗? 3.2.3 如何发送接收ASCII值为0和大于128的字符? 3.2.4 在同一程序中用MSComm控件控制多个串口的具体操作方法 3.2.5解决使用控件编程时程序占用的内存会不断增大的问题 3.2.6在没有安装Visual Studio的计算机上如何使用MSComm控件 3.2.7 在MSComm控件串口编程时遇到的其它问题说明 3.3在基于单文档(SDI)程序中应用MSComm控件 3.4应用MSComm控件控制多个串口实例 第4章 Windows API串口编程 4.1 Windows API串口编程概述 4.2 API串口编程中用到的结构及相关概念说明 4.2.1 DCB(Device Control Block)结构 4.2.2超时设置COMMTIMEOUTS结构 4.2.3 OVERLAPPED异步I/O重叠结构 4.2.4 通信错误与通信设备状态 4.2.5 串行通信事件 4.3 Windows API串行通信函数 4.4 Win32 API串口通信编程的一般流程和特殊实例 4.4.1 Win32 API串口通信编程的一般流程 4.4.2 用查询方式读串口 4.4.3同步I/O读写数据 4.4.4 关于流控制的设置问题 4.5 CSerialPort类中的API函数编程应用剖析 4.6 Win32 API串口编程TTY(虚拟终端)实例 4.7 Windows API串口精简例程 第5章 串口调试助手V2.2详细编程 5.1 建立SCOMM程序工程实现界面功能 5.2 串口的初始化及关闭 5.3串口数据的发送与接收及十六进制数据的处理 5.3.1 十六进数据发送处理 5.3.2 手动发送处理 5.3.3自动发送处理 5.3.4 接收处理及十六进制显示 5.4 其它辅助功能的实现 5.4.1 接收数据的文件保存 5.4.2 实现小文件发送 5.4.3 图钉按钮功能使程序能浮在最上层 5.4.4 对话框动画图标的实现 5.4.5 超链接功能的实现 5.4.6 如何打开帮助网页文件 第6章 DOS环境下的Turbo C串口编程及通用实例GSerial类 6.1 PC机异步通信适配器8250及其编程操作 6.1.1 INS8250内部寄存器及其选择方式 6.1.2 波特率设置 6.1.3数据位、奇偶校验、停止位等数据格式设置 6.1.4 查询I/O方式相关设置 6.1.5 中断I/O通信方式相关设置 6.1.6 Modem寄存器 6.2 COMRXTX程序实例
【内容简介】 本书详细介绍了利用Visual C++进行串口通信编程的各种方法和技巧,并力图通过生动的讲解和丰富的应用实例让读者进一步学习并掌握这一技术。本书共分10章,内容主要包括数据通信的基本概念、串口通信的RS-232C/RS-485/RS-422标准、并口通信的IEEE 1284 1994标准、Modem的基础知识和AT命令集、传真机的传真协议、PLC(可编程逻辑控制器)和单片机等。本书详细介绍了MSComm控件的使用、利用API编程控制串口、TAPI编程及其应用,并通过一系列应用实例,详细阐明了串并口通信技术与Visual C++其他技术结合解决实际问题的基本思路和方法;通过串口编程调试精灵的设计实现和封装发布,从整个项目的角度给读者以启示;最后一章给出串并口编程在工程实践中的诸多方案与用法。 【目录信息】 第1章 接口 1 1.1 计算机接口技术简介 1 1.1.1 什么是接口 1 1.1.2 接口的基本功能 1 1.1.3 常见接口简介 2 1.1.4 接口的控制方式 4 1.2 RS-232-C串口标准 5 1.2.1 RS-232-C概述 5 1.2.2 数据终端设备与数据通信设备 6 1.2.3 RS-232协议标准 7 1.2.4 RS-232串口通信基本接线方法 11 1.3 RS-485/422串口标准 12 1.3.1 RS-422与RS-485的由来 12 1.3.2 RS-422与RS-485接口标准 13 1.3.3 RS-422与RS-485网络安装注意要点 15 1.3.4 RS-422与RS-485的接地问题 16 1.4 IEEE 1284 1994并口标准 17 1.4.1 并行打印机端口概述 17

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧