上位机与下位机串口通信,串口工作方式1每次只能发1个字节的数据,如何发送多字节数据,具体如下

上位机与下位机串口通信,串口工作方式1每次只能发1个字节的数据,如何发送多字节数据,具体如下,第1张

当往 SBUF写入1个八位数据时,启动发送 *** 作,数据从TXD端实现异步发送。发送完一帧数据后自动置TI=1,请求中断。要继续发送时,TI清零便可。

你可以自己写一个连续发送的函数:只要发送前9个数据后,TI清零就成。

或者写一个一次之功能发送一个字节的函数,然后利用循环调用前面的函数,实现10个数据的发送。。。

大多数情况都用后者吧。。。

发送一般是不需要放在中断中的(我写了10年程序,从没放过,^_^)

你改成这样

SBUF=sendH;

while(TI==0);

TI=0;

SBUF=sendL;

while(TI==0);

TI=0;

直接观察TI来判断是否发送成功,而不是靠延时,最好是你写成专门的发送函数,这样程序更清晰

如果是单片机编程,你可能需要把大于255的数值拆成多个字节,在中断函数中依次发送和接收。

如果是PC机的应用层,可以直接调用API传入char类型的指针和字节长度进行发送。

若选择的串行通信字节长度小于8位,则高位会自动清零,如果要在非8位串行通信中传送字节流,又不希望发生高位截断,则需要先把字节流分解成相应长度的单元,存入一个新的数组中再发送。

太阳雨多年积攒极其珍贵的原创VB串口通信技术资料V40 (600M)

VB串口通信编程源码200个,多种行业多种应用

VB串口通信技术文章160篇,详尽地对VB串口通信的诠释

VB串口通信电子书籍16部,工业通信名家著作,经典细致

VB串口通信控件16个,简化串口通信编码,提高开发效率

VB串口视频教程44个,一套完整视频教程,讲解直观,更快掌握

超级赠品一:OSI网络模型教程48M

超级赠品二:串口硬件层知识大全资料包24M

超级赠品三:串口调试工具80个,应用于各种串口调试与校验计算

超级赠品四:程序员发展类文章和书籍12部,帮助您的成长,健康和发展

超级赠品五:更送虚拟串口调试软件, 帮助你在没有串口的电脑上也能正常调试

你在淘宝搜索“太阳雨VB串口资料”就可以找到,希望可以帮助到你。

同时,还有"太阳雨VC串口资料"和"太阳雨DELPHI"串口资料

参考思路:

串口在调试代码的时候,打印信息很方便,MCU,DSP,ARM,都是集成的串口控制器,向SBUF写数据,然后启动发送,就是可以开始发送数据了,但是FPGA没有这个集成的串口控制器,这就需要自己模拟IO来实现的;

需要连续发送16bit的数据,也就是说,每次启动串口发送,都是发送2个字节数据,只要TxD_start输入一定频率的矩形波,就是连续将16bit数据发送出去了。

以上就是关于上位机与下位机串口通信,串口工作方式1每次只能发1个字节的数据,如何发送多字节数据,具体如下全部的内容,包括:上位机与下位机串口通信,串口工作方式1每次只能发1个字节的数据,如何发送多字节数据,具体如下、单片机串口一次发送两个字节的问题、COM口(串口)传送的数据最大是不是255, COM口(串口)好像是8位,1字节的,那应该最大也就传输255吧等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10146618.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存