打印
[STM8]

请教 STM8S207C8做LIN主模式发送的问题

[复制链接]
970|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zuo2016|  楼主 | 2016-12-7 13:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
按ST网上中文版的数据书中说的步骤
LIN 报文头(header)
1. 将UART_CR2的SBK位置1来请求发送断开符+分界符。
2. 等待UART_CR4的标志位LBDF为1。
3. 对UART_DR写入0x55来请求发送同步域。
4. 等待UART_SR的标志位RXNE为1,并读回UART_DR。
5. 对UART_DR写入被保护识别符值来请求发送识别符域。
6. 等待UART_SR的标志位RXNE为1,并读回UART_DR。

写了个发送的程序,问题如下
1,在9600波特率时,利用逻辑分析仪的LIN解码析仪,能够解码,但在同步场和标志符场之间的脉冲宽与模拟器的宽度不符。
2,在19200波特率时,逻辑分析仪的解码析仪不能够解码,同步场和标志符场之间的脉冲宽与模拟器的宽度不符。
请教大家是否上述的步骤中少了些啥?
谢谢!!


沙发
天灵灵地灵灵| | 2016-12-7 18:08 | 只看该作者
能否正常接收发送呢?波特率不符合很正常啊,那时钟电路一般都有少许误差。

使用特权

评论回复
板凳
zuo2016|  楼主 | 2016-12-7 19:24 | 只看该作者
关键是9600和19200时的间隔符波形宽度不对,在9600时能解码,在19200时解不了码

使用特权

评论回复
地板
mmuuss586| | 2016-12-7 19:29 | 只看该作者
换个波特率就不能解码,是不是波特率误差太大了,逻辑分析仪解不了;
如果稍微差一点,应该可以解码啊;
时钟的误差应该没这么大,你算下现成差了多少,是不是波特率计算上有啥问题;

使用特权

评论回复
5
zuo2016|  楼主 | 2016-12-7 22:44 | 只看该作者
波特率没问题,有误差,但都在范围内

使用特权

评论回复
6
we167527| | 2016-12-8 09:20 | 只看该作者
ST的UART的波特率好像不对。你使用16M以上设置才对。但是波形是可以看出的。就是解不了码。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

18

帖子

0

粉丝