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

发布时间:2023-07-03  

“大神”叫你先上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单片机寄存器的功能解析

对单片机感兴趣的可以查看往期分享内容,希望能帮助大家在学习单片机的路上少走一些弯路


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    是将刚刚声明的变量led1,即P1端口寄存器的第一位写入0,意思就是然他输出低电平。为什么这样就达到目的了呢?因为我们原理图中二极管的阴极接的是单片机,阳极接的是电源,所以要使LED发光,它阴极就必须是低电平,所以我们把对应的单片机......
    一点需要强调一下,如果未来你并不打算做单片机相关的工作的话,那么下面的东西你可以量力而行,可以作为了解的内容,并不用深入的了解。 大家学习51单片机的时候,是不是经常进行一些寄存器操作,为什么我们在32......
    就有各种寻址方法,立即、寄存器、直接、间接等等 双向并行 I/O 口中的'双向'是什么意思?是不是既可以输入又可以输出,也就是双工的意思?锁存器的作用是什么? 答:是,双工方式是串行通信里提到的,学串......
    都是32位的。1个字节是8位,4个字节就是32位。32位单片机的寄存器基本上是32位的,8位单片机的寄存器基本上也是8位的。 打开你曾经用过的reg51.h文件,看看普通51单片机的寄存器......
    指令。 到这里我们就可以理解复位向量为什么是 0x0800_00C9 了。 接下来我们来看复位向量 0x0800_00C8 指向的第一条指令: 单片机将要执行的第一条指令 0x4804,这是什么意思......
    不同,你想用单片机的资源,对不起,你需要自己去配置芯片的寄存器。 这个时候你需要去查询芯片手册的寄存器说明,每个位置1和置0是什么意思。 虽然你只是在学习单片机,实际上你学到了很多附加的知识,比如......
    51单片机CPU的基本构成及作用;单片机是什么,是在一个集成硅片中集成了一些部件,构成了一个微型的计算机系统的东西,这些只是对单片机的基础概念是简单了解,会用单片机C语言的编程来实现一些简单的ALU......
    是一个规定,可以去设置自己的寄存器的地址,然后来说明你的寄存器里面存放的是什么值,别人读的时候就知道怎么去读了。 比如说想读的是你当前的波特率,那我可以用03这个功能,从0067这个地址起始地址开始读,读一个寄存器是......
    定时器中断是什么意思,定时器中断的工作原理;定时器中断是由单片机中的定时器溢出而申请的中断。51单片机中有两个定时器T0和T1。STM32中共有11个定时器。 一、定时器中断是什么意思 定时器中断是由单片机......
    stm32f103最小系统的组成及各部分功能;今天来跟大家普及一下stm32f103单片机的最小系统组成和各部分功能。 一、 什么叫最小系统 最小系统就像我们人,我们活着每天都要吃饭,喝水。 饭和......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>