码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【Stm32】【Lin通信协议】Lin通信点亮灯实验


    Lin通信点亮灯实验

    通过STM32的串口发送数据,然后通过串口转换模块将数据转换成LIN(Local Interconnect Network)协议,最终控制点亮灯。需要工程和入门资料的可以私信我,看到了马上回。
    入门书本推荐: 在这里插入图片描述

    在这里插入图片描述

    一、Lin协议 帧结构

    在这里插入图片描述
    在这里插入图片描述

    二、代码讲解

    这个结构写成代码如下:

    1. 同步间隔段(Break Field)是至少(注1)持续 13 位(以主机节点的位速率为准)的显性(低电平)电平,直接用hal库自带的HAL_LIN_SendBreak函数就行啦;
    2. 同步段(Sync Byte Field)LIN 同步以下降沿为判断标志,采用字节 0x55(转换为二进制为 01010101b);
    3. 受保护的ID,是用函数计算出来的 把从厂家那得到的设备ID,我这里是0X03,传入函数,计算得出受保护的ID;
      在这里插入图片描述
      在这里插入图片描述
    4. 数据段,从厂家那得到的点灯报文0x01,0x10,0xFF,0xFF,0x10,0x05,0x05,0x05(每种设备的不同);
    5. 校验和段,传入参数计算得到;
      在这里插入图片描述
      在这里插入图片描述

    三、while函数

    通过STM32的串口发送数据,然后通过串口转换模块将数据转换成LIN(Local Interconnect Network)协议,最终控制点亮灯。

    在这里插入图片描述

    四、注意点

    1、Lin通信需要设置正确的波特率;

    我是这么做的,在确保串口可以发送,Lin信息口有信号的(通信打通了)前提下,使用逻辑分析仪(示波器也行),测出了它接收的波特率,然后设置对应串口波特率。

    利用逻辑分析仪测波特率

    波特率就是每秒能发送多少个位,计算器算一下 1÷53 差不多是 0.1887,而 1s = 10^6us,乘一下18870差不多,波特率就设为19200(有误差嘛)。然后我灯就点亮了。
    在这里插入图片描述

    测一下前面的显性电平的数量

    在这里插入图片描述
    四舍五入,没错,是13个。
    在这里插入图片描述

    2、间隔段的发送前要设置 显性电平数量;

    HAL_LIN_Init() 中的13 就是设置13个显性电平,我测过,没有这句,它只会产生10个,不符合要求,灯点不亮。这句是配合下面那个sendbreak 一起用的。

    每天进步一点点 如果我的试错经历有帮到你,可以支持一下吗

  • 相关阅读:
    mybatis-3.5.0使用插件拦截sql以及通用字段赋值
    JAVA工程师面试专题-《消息队列》篇
    全局Ceph节点宕机处理
    [feign]远程调用实现token信息的传递
    史上最猛“员工”,疯狂吐槽亿万富翁老板小扎:那么有钱,还总穿着同样的衣服!
    MySQL了解视图View (视图篇 一)
    J2L3x 最大的优势:灵活的功能和易于扩展性
    Pandas统计列NaN值,这4步轻松搞定!
    基于风控特征相关度,挖掘贷中等场景中的存量客户价值|来看看相关实操
    权限提升WIN篇(腾讯云,CS,MSF)
  • 原文地址:https://blog.csdn.net/m0_55251293/article/details/133014716
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号