请教串口通信问题

yinrongg 2010-07-25 06:22:56
现在要写一个串口通信程序。一致的通信协议:通讯接口采用RS232C,所有数据均为ASCII码,每帧数据有9个字节组成,第1位为起始位,第9位为停止位,中间6位为数据位。初始为1200波特率,8位无效验,1位停止位。
请问这协议所说的所有数据均为ASCII码是指的我写程序从串口读的数据都是ASCII码吗?
...全文
116 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinrongg 2010-07-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 leafold 的回复:]
引用楼主 ling3wei 的回复:
一致的通信协议:通讯接口采用RS232C,所有数据均为ASCII码,每帧数据有9个字节组成,第1位为起始位,第9位为停止位,中间6位为数据位。初始为1200波特率,8位无效验,1位停止位。

看不懂的协议。数据每帧9字节,“第1位为起始位,第9位为停止位,中间6位为数据位”是指电气定义吧,这个给程序员没有用的,而且1位-9位之间明显是2-8位,共7位,不……
[/Quote]
呵呵 描述的有问题。
leafold 2010-07-26
  • 打赏
  • 举报
回复
[Quote=引用楼主 ling3wei 的回复:]
一致的通信协议:通讯接口采用RS232C,所有数据均为ASCII码,每帧数据有9个字节组成,第1位为起始位,第9位为停止位,中间6位为数据位。初始为1200波特率,8位无效验,1位停止位。
[/Quote]
看不懂的协议。数据每帧9字节,“第1位为起始位,第9位为停止位,中间6位为数据位”是指电气定义吧,这个给程序员没有用的,而且1位-9位之间明显是2-8位,共7位,不是6位。
数据均为ASCII码,帧头可能不是ASCII码,用以区别数据。是否有帧头,或帧头是否ASCII码这要根据协议的具体约定。

回车符是ASCII码13就是字符'\r',新(换)行ASCII码10,对应字符'\n'。
兔子-顾问 2010-07-25
  • 打赏
  • 举报
回复
SerialPort comm= new SerialPort();
comm.NewLine = "\r\n";
comm.Open..
comm.WriteLine("");
yinrongg 2010-07-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wuyazhe 的回复:]
请问这协议所说的所有数据均为ASCII码是指的我写程序从串口读的数据都是ASCII码吗?
--------------------------------------------------------------------
是的,你使用stringbuilder缓存收到的数据,根据协议分析字符串即可。
[/Quote]
那请问 我要向串口发送一个回车符 怎么发呢?
兔子-顾问 2010-07-25
  • 打赏
  • 举报
回复
请问这协议所说的所有数据均为ASCII码是指的我写程序从串口读的数据都是ASCII码吗?
--------------------------------------------------------------------
是的,你使用stringbuilder缓存收到的数据,根据协议分析字符串即可。
回想很多年前自己第一次尝试做数控电源,当时选择了STC的单片机,显示用数码管,PCB也打板了,PCB打板就花了500多,由于能力有限,最终于没能做个完整的作品出来,残缺的作品早已丢弃,但是我对数控电源的情怀却一直没有丢失。 最近DIY数控电源的想法萌芽出来了,这时已经工作几年了,见过的东西也多了,已有一些积累,所以做起来就顺利多了,做做停停,经过不停的改版升级请教,最终,数控电源是做出来了,经过测试使用发现是令我满意的。 数控电源的的特点: 1. 常规可调直流电源功能,0-30V/0-5A 可调 2.有电量计功能,如给电池充电,可以统计电量和功率量 3.可以设定电压,电流的上限值,超过则报警保护 4.可以设定脉冲输出,实现对外面电路不断的上电和断电 5.有串口通信 数控电源主要由下面几部分组成: 1、显示面板。12个按键开关,1个无极限旋钮开关,2个4位LED显示,1个128*64LCD 2、主控板。主控IC STM32F103VC(内含两通道12bit DA 调节电压电流),扩展2片16位ad转换芯片TM7705(兼容AD7705)检查电流电压,一路485通信接口,一路232转USB接口,多个IO输出控制输出。 3、功率板。3个继电器控制变压器绕组切换,整流滤波,2个功率MOS IRF250实现降压恒流,运放组成电压电流控制环驱动功率MOS,一个NTC感应MOS温度,与主控板相连。 4、变压器,用环牛把220V交流电变压成0~7~21~36V 双20V 单9V 几种电压输出,0~7~21~36V是输出电压的来源,双20V是运放,风扇,继电器的工作电源,单9V是主控板的电源。

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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