
stm32
文章平均质量分 65
stm32入门
小小快刀手
力扣刷题:
GitHub:https://github.com/panrujiang/leetcodes.git
展开
-
stm32之DS18B20
DS18B20与stm32之间也是通过单总线进行数据的传输的。单总线协议在DHT11中已经介绍过。虽说这两者外设都是单总线,但时序电路却很不一样,DS18B20是更为麻烦一点的。原创 2023-08-26 00:22:16 · 5017 阅读 · 0 评论 -
stm32的ADC配置
接下来就是打开GPIO与ADC的时钟,用的是GPIOA中的PA4引脚,PA4在GPIOA中,也在ADC1中。第一个参数为ADC1还是ADC2,指的是此时配置ADC的引脚是属于ADC1还是ADC2(以下为stm32f103的引脚属于哪个组)。今天,在学习MQ2烟雾传感器的时候,涉及到了stm32的ADC转化。对输入引脚的配置可谓是十分熟悉,但要值得注意的是,这里引脚的模式要设置为模拟输入。第三个参数指的是该引脚的ADC的转换顺序,如果为1说明是第一个转换。第二个参数该引脚是哪个通道的,相关的定义如下所示。原创 2023-07-30 00:13:17 · 3295 阅读 · 2 评论 -
stm32的IIC协议以及IIC通信驱动OLED屏幕
这里是直接根据写入的汉字,然后在hz_index[]数组中遍历寻找,所以你要想输出汉字,得现在hz[]和hz_index[]数组中补充。如果在hz_index[]数组中找到了对应的汉字,那就对应地在hz[]数组中找到字节,输出,完成OLED的汉字显示。I2C器件一般采用开漏结构与总线相连,所以I2C_SCL和I2C_SDA均需接上拉电阻,也正因此,当总线空闲时,这两条线路都处于高电平状态,当连到总线上的任一器件输出低电平,都将使总线拉低。汉字是16*16的形式。我用的是四引脚的,用的是IIC通信驱动。原创 2023-07-30 15:56:51 · 2633 阅读 · 1 评论 -
stm32的USART串口通讯
在stm32与个人计算机连接的时候,当程序下载完之后,下载线又可以成为了串口数据传输的通道,怪不得在串口调试助手未关闭串口的时候,直接下载程序,会出现当前串口被占用的错误。至于stm32如何与计算机通信,如下所示。stm32发送数据的程序(比如给主机发送数据)(这篇是关于usart的发送与接受数据)stm32接受主机发送过来的数据。原创 2023-07-30 20:53:13 · 103 阅读 · 1 评论 -
stm32之DHT11
今天,记录一下DHT11,涉及到了单总线协议,所以先花点时间谈论一下单总线协议(DS18B20也是用的单总线)。原创 2023-08-25 15:35:09 · 693 阅读 · 0 评论 -
stm32之点亮LED
今天,记录一下stm32如何点亮一个LED,程序本身十分简单,但主要是学习编程的格式。原创 2023-08-25 00:49:04 · 1036 阅读 · 0 评论 -
stm32usart串口通信出现问题
10的十六进制为0A,又是换行,0D是回车。一个串口发送数据,会经常加回车和换行,很正常。勾选16进制发送,取消勾选发送新行。今天,在调试stm32的usart串口通信的时候,出现了读取到的数据永远都是10的现象。原创 2023-07-30 22:25:43 · 713 阅读 · 0 评论 -
stm32的位带操作
在51单片机中,我们可以使用P2^1来对单片机的某一位进行操作,到了stm32,我们通过位带操作,将寄存器的每一位映射到一个32位的地址。如下是我查资料摘录的一些图片。原创 2023-08-24 01:45:34 · 862 阅读 · 0 评论 -
stm32入门
stm32是基于ARM内核框架的,ARM的发展如下所示。stm32的基本信息。stm32的命名规则。原创 2023-08-23 22:54:53 · 156 阅读 · 0 评论 -
Systick滴答定时器
配置Systick滴答定时器的时钟源,一个是AHB时钟,另外一个是对AHB时钟频率8分频的时钟。/***/else。原创 2023-08-25 00:15:11 · 200 阅读 · 0 评论 -
STM32操控外设为什么要先使能时钟
*只不过,在51单片机一个时钟系统把一切都包了,在STM32中,我们很明确地做好了分工,让大家各司其职,其实这样还有一个好处就是,不是每个外设都需要系统时钟那么高的频率,就像是高射炮打蚊子一个道理。我也是,就是所谓的”时钟问题“。可是随着电子产品集成度越来越高,功耗和发热越来越严重,芯片厂商非常无奈也在开始想办法避免这个问题,而最直接的思路当然就是用多少功能就使能多少功能,对每个外设的时钟都设置了开关,让用户可以精确地控制,关闭不需要的设备,达到节省供电的目的。,所以就出现了这么多的时钟和IO配置。转载 2023-07-29 21:55:57 · 679 阅读 · 1 评论 -
关于stm32的串口通信协议
所以,对于这三种协议,不用额外的物理层支持,因为他们不像MODBUS协议一样与物理层脱离的干干净净(这里也体现出了MODBUS协议的优点,通信的时候不需要考虑硬件层),自身包括了物理层的基础,所以也不会有这种什么基于RS485的SPI协议。所以串口通信协议包括硬件层的协议以及软件层的协议,像RS232协议就是硬件层的协议,MODBUS协议就是典型的软件层的协议。像SPI,IIC,CAN总线等就是既包括了硬件层的协议也包括了软件层的协议,可以说是软硬件的结合体。UART的意思是通用异步收发器,结构上一般由。原创 2023-07-29 20:57:00 · 486 阅读 · 1 评论 -
stm32的keil软件中遇到的问题
今天,在使用keil软件的时候,在APP目录下添加此次需要的外设MQ2烟雾传感器的C文件的时候,出现了如下的问题(无法打开MQ2.h文件)。后面上网查阅了资料,得到了解决方案。这样,就解决问题了。原创 2023-07-28 11:13:17 · 258 阅读 · 1 评论 -
关于stm32的文件管理
这样写的意思是软件在编译的时候,会现在工程的文件夹中找有没有led.h文件,如果没有再去安装keil软件的目录下找有没有此文件。第二种方法是直接在Target下新建C文件以及H文件,之后保存的时候根据是C文件还是H文件修改后缀名即可,保存到APP文件夹下。综上,完成简单的文件管理,其实,有些文件夹了解即可,之后也不需要这样一步一步来,直接找个模板就行了,后面的工作就是在User中修改main.c文件以及在APP中增加修改外设相关的C文件以及H文件。下面以在APP文件夹中添加led.c文件为例。原创 2023-07-26 23:36:34 · 889 阅读 · 2 评论