0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32单片机寄存器的功能解析

华维单片机林北 来源:华维单片机林北 作者:华维单片机林北 2022-04-12 00:28 次阅读

“大神”叫你先上STM32,51是小朋友玩的,所以你就不学51了

初学者建议从51单片机开始,虽然很多人建议直接上STM32,但本人还是建议先学习51单片机,简单且不容易打消积极性,很多人都是在积极性消退之后就会半途而废,等熟悉了LED、串口、SPI、按键、中断、IIC等这些基础之后,如果对单片机还有兴趣,不妨再去晋升学习STM32单片机,有了51单片机作为基础,这时候学习STM32也是可以非常快的就能上手。

STM32单片机寄存器的功能解析

一般的寄存器的定制是从0开始定义,0000这个寄存器地址存放的是温度的一个数据,然后0001这个采用的是湿度的数据,它们两个数据的范围都是0到65535,并且都是只读的,所以它适用于的是03这个功能,组态地址就不用关心了,这个是PLC当中用的一个组态地址,实际上这个组态地址等于寄存器地址加上4001,要把它转成十进制去加上4001,这个是一个规定,可以去设置自己的寄存器的地址,然后来说明你的寄存器里面存放的是什么值,别人读的时候就知道怎么去读了。

STM32单片机寄存器的功能解析

比如说想读的是你当前的波特率,那我可以用03这个功能,从0067这个地址起始地址开始读,读一个寄存器是不是就读的就是你的波特率,给一个校验码就应该就能够响应什么是你的波特率的数据,同时波特率它也告诉我们,波特率它是可读可写的,既然可读可写,它应该提供的06功能码,就可以写单个寄存器,也可以用0六这个功能码去对它进行操作,比如更改它的设备地址,修改它的波特率,这些都是可以的。

湿度传感器USB接口和485信号,它们俩之间是肯定不能直接通信的,可以借助一个小模块,USB转485的模块,这种模块现在也不贵,感兴趣的可以去入手一个,这里面有四根线,电源线,还有两根信号线,然后A线接传感器的A,B接传感器的B,电路连好了之后就可以借助助手来实现这个通讯的功能的测试,它支持的是主机问询,从机应答的一种方式,所以主机要去问它,它才会给你回答。

STM32单片机寄存器的功能解析

在这种主从系统当中,从机设备是不允许主动的发起通信的,我们要想通信必须由主机发起,我们可以去打开这个串口,然后去发送我们的问询,读两个字节,从0000这个寄存器地址起始地址开始读,读寄存器在读计算器,也就是把温度和湿度都读出来,这个时候还有一个校验码,校验的话是CRC校验,校验码不对它是肯定是不会响应的,这个时候它给出了一个响应0103,然后04,01代表01地址,03的功能码,0四代表返回的数据长度四个字节,返回的值是048915B2,它这里面的数据的值都是16进制的。

STM32单片机寄存器的功能解析

16进制值首先要把它转成十进制数,举个例子0079,它转成十进制是121,假设数据的倍率是100倍,这个值应该是1.21度,湿度也是一样的,所以它这个地方有一个倍率是100,要控制一个485的一个接口芯片,首先转成发送状态,转成发送状态之后发送问询帧,发送问询之后立马切换成接收状态,然后接收这一帧数据,用超时的办法去接收,接收完这么一包数据之后要解析这个数据,把这两个数据取出来转成十进制,然后按照它这个数据的方式把它再除以100,就可以转成当前的温度和湿度。

STM32单片机寄存器的功能解析

对单片机感兴趣的可以查看往期分享内容,希望能帮助大家在学习单片机的路上少走一些弯路,想要入门单片机可以持续关注创为单片机编程,,回复“带我学习”查看更多内容分享。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5027

    浏览量

    117710
  • STM32
    +关注

    关注

    2239

    文章

    10671

    浏览量

    348713
  • 51单片机
    +关注

    关注

    269

    文章

    5648

    浏览量

    120691
收藏 人收藏

    评论

    相关推荐

    STM32单片机使用寄存器是如何进行操作的

    以下实例为STM32单片机使用寄存器进行操作的一个头文件中的代码因为直接对寄存器进行操作,也就是直接对地址中的数据进行操作,因为知道了寄存器
    发表于 07-15 06:15

    STM32单片机的GPIO寄存器有哪些

    单片机一样只有高低电平两个参数,STM32的每个GPIO口都有八种输出方式,通过寄存器配置确定是哪一种方式,除此
    发表于 01-05 07:52

    单片机的特殊功能寄存器有哪些?

    单片机的特殊功能寄存器有哪些?
    发表于 02-16 07:27

    单片机教程七:单片机的特殊功能寄存器

    单片机教程七:单片机的特殊功能寄存器 通过前面的学习,我们已知单片机的内部有ROM、有RAM、有并行I/O口,那么,除了这些东西之外,
    发表于 05-15 23:01 1924次阅读
    <b class='flag-5'>单片机</b>教程七:<b class='flag-5'>单片机</b>的特殊<b class='flag-5'>功能</b><b class='flag-5'>寄存器</b>

    51单片机汇编语言教程_单片机的特殊功能寄存器

    51单片机汇编语言教程:7课单片机的特殊功能寄存器
    发表于 01-19 15:26 0次下载

    CAN寄存器功能

    fesscale的8位单片机can寄存器对应的功能
    发表于 03-29 14:44 4次下载

    51单片机寄存器功能一览表

    本文主要详细介绍51单片机寄存器功能,首先介绍了51单片机引脚图及功能,其次阐述了51单片机
    发表于 05-22 16:12 4.9w次阅读
    51<b class='flag-5'>单片机</b><b class='flag-5'>寄存器</b><b class='flag-5'>功能</b>一览表

    STM32单片机GPIO寄存器功能解析

    对于GPIO端口,每个端口有16个引脚,每个引脚的模式由寄存器的四个位控制,每四位又分为两位控制引脚配置(CNFy[1:0]),两位控制引脚的模式及最高速度(MODEy[1:0]),其中y表示
    发表于 12-04 14:54 1.2w次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>GPIO<b class='flag-5'>寄存器</b>的<b class='flag-5'>功能解析</b>

    STM32单片机不完全手册之寄存器版本

    STM32单片机不完全手册之寄存器版本
    发表于 07-31 16:10 0次下载

    7课:单片机的特殊功能寄存器 2020/11/15

    7课:单片机的特殊功能寄存器 2020/11/15
    发表于 11-20 12:51 7次下载
    7课:<b class='flag-5'>单片机</b>的特殊<b class='flag-5'>功能</b><b class='flag-5'>寄存器</b> 2020/11/15

    STM32寄存器操作

    STM32寄存器操作在使用STM32单片机编程时一般都用ST给的库函数编程,库函数编程的底层就是对单片机
    发表于 01-13 15:43 18次下载
    <b class='flag-5'>STM32</b>的<b class='flag-5'>寄存器</b>操作

    STC单片机常用特殊功能寄存器速查

    STC单片机常用特殊功能寄存器速查(STC-SFR2-b9正式版)
    发表于 09-30 17:20 0次下载

    单片机寄存器和存储器哪个好

    单片机寄存器和存储器哪个好 单片机的运用在生活中是很常见的,随着科技的发展,单片机更新速度和发展速度也非常快。对于单片机来说,
    发表于 03-21 15:18 404次阅读

    单片机寄存器有哪些 单片机寄存器怎么理解 寄存器单片机的关系

    单片机寄存器是一种特殊的存储器件,用于存储和处理程序中的数据和指令。可以将单片机寄存器看作是CPU内部的工作区域,类似于人的大脑,用于暂时存储和处理当前的任务和信息。
    发表于 04-01 15:47 4672次阅读

    单片机工作寄存器作用 单片机常用专用寄存器

    除了通用寄存器(如累加器、通用寄存器等),单片机中还会有特定功能寄存器,如定时器寄存器、中断控
    的头像 发表于 04-08 14:46 5746次阅读