论坛
进入论坛
商行-迷你打铁铺
技术讨论区
|
上位机软件开发
|
应用技术讨论区
|
免费工具使用讨论
|
松鼠--开发板
|
豆皮--开发板
|
思维--可编程控制器
|
开源单端反激电源
|
项目综合讨论区
|
作品交流、逻辑电路、无刷驱动
|
精品下载区
转至论坛
你的位置:
StmFans思蜕盟 OPELC 自由电子联盟
>>
论坛
>>
技术讨论区
>>
查看帖子
请教stm32多机通信MARK校验和space校验
发布: 2010-1-26 13:18 | 作者:
proco
| 来源: StmFans思蜕盟 OPELC 自由电子联盟
因为小弟现在要用STM32串口2向一块点阵式LED屏幕发送数据,屏幕控制板有自己的地址,在通信的时候使用MARK校验和space校验,哪位大虾能讲讲stm32用于多机通信时,串口怎么发送MARK位校验啊?stm32的中文参考手册讲的不清楚,没看明白怎么将mark位发出去,谢谢大家!
binglin
(2010-1-27 23:31:39)
一般来说:mark校验就是校验位始终=1,与之相反space校验就是校验位始终=0。
这两种校验方式可用于和多台从机通讯时,PC机发地址时用mark校验,发数据时就用space校验;从机接收时根据校验位判断是地址还是数据。
对于STM32来说,要实现这种方式也是很简单的,就是用9位数据、无校验位、1个开始位、一个停止位的模式来实现,第9位数据就是用来发mark校验及space校验,也就是说在发地址时第9位填写1,发数据时第9位填写0即可,如果STM32作从机,也是收到mark校验后就当收到的数据是地址数据,收到space校验就是数据了。
proco
(2010-1-28 11:20:06)
我用这个方法来写第九位为1,但是好像从机没反应,USART1->DR = (1<<8) | Data; // Data 包含8位数据
trinove
(2010-1-28 12:04:45)
先确定一下,从机的程序是不是有问题
我也来说两句
查看全部回复
网络资源
思蜕盟QQ群: 65081316(满) 68584951(满) 61958672(空) 59804115(空)
最新发表
haiyuexing
自制STM32板完成温度传感器并验证通过
yyjslna
谁调试成功STM32 中的DS18B20程序,可否
luding
各位可有模拟仿真的例子说明?
luding
关于SysTick_Config()函数请教
luding
怎么找不到systick具体的寄存器说明?
skyline1982
新手求助,请问把别人移植好的FAFS如何加
vvccyy
新手问题 松鼠 isp
eemkutay
I'm looking to buy for stm32 and oth
voidx
自己写的多任务内核移植IARSTM8
这两种校验方式可用于和多台从机通讯时,PC机发地址时用mark校验,发数据时就用space校验;从机接收时根据校验位判断是地址还是数据。
对于STM32来说,要实现这种方式也是很简单的,就是用9位数据、无校验位、1个开始位、一个停止位的模式来实现,第9位数据就是用来发mark校验及space校验,也就是说在发地址时第9位填写1,发数据时第9位填写0即可,如果STM32作从机,也是收到mark校验后就当收到的数据是地址数据,收到space校验就是数据了。