- 博客(78)
- 收藏
- 关注
原创 STM32-SPI通讯使用NORFLASH案例
3、0x06指令+等待空闲+0x20指令+24位地址+等待空闲实现我们nor flash NM25Q128的扇区擦除;2、通过0x03指令+24位地址+读取数据,读取我们的nor flash NM25Q128中的数据;4、NM25Q128写入:擦除扇区+0x06指令+0x02指令+24位地址+写入数据+等待空闲;1、初始化相关GPIO,SPI初始化(模式。位数,分频,MSB等);在本次实验中,我们使用nor flash进行我们的SPI案例的实验。
2023-07-01 00:14:56 1243
原创 STM32-I2C通信在AT24C02的应用
AT24C02是一种失去电源供给后依旧能保持数据的储存器,常用来储存一些配置信息,在系统重新上电之后也可以加载。它的容量是2k bit的EEPROM存储器,采用I2C通信方式。
2023-06-14 20:59:49 2038 5
原创 STM32-I2C基础代码原理介绍
简单介绍ACK的应答信号原理:主机数据线拉高,表示一个高电平的状态,而此时如果从机发送一个低电平信号时,主机的高电平就会被导入到从机的低电平中,从而使得主机得数据线读取PIN值的函数读取到的是低电平,表示收到ACK应答信号,继续传输数据;反之,如果从机继续发送上拉电阻的高电平,则主机的数据线将保持高电平状态,主机数据线PIN值读取函数读取到的是高电平,表示读取到的是NACK非应答信号,不再发送数据,发送结束信号结束此次IIC通讯传输。以上就是I2C通讯方式中比较基础的一些操作。
2023-06-11 10:08:43 246
原创 STM32实验-PWM DAC模拟输出
一般一个STM32只有2个DAC输出通道,如果需要多路DAC输出,可以选择外扩DAC,但成本回相当高。于是在一些精度要求不高的场合,我们采用定时器输出PWM和RC滤波器模拟DAC来代替外扩DAC。
2023-06-09 21:24:06 2905
原创 LCD1602介绍和各报错经验总结
LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。
2023-05-24 21:08:09 6290
原创 STM32-DAC输出三角波
实验要求:输出DAC1通道1(PA4)输出三角波。然后关闭通道1触发(TEN1位置0),关闭输出缓冲(BOFF1位置1),使用12位右对齐模式,将数字量写入DAC_DHR12R1寄存器。接下来介绍产生三角波的函数。
2023-05-19 20:30:08 1598
原创 STM32-关于DAC的笔记
数模转换器,又称D/A转换器,简称DAC,它是把数字量转变成模拟的器件。D/A转换器基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关。模数转换器中一般都要用到数模转换器,模数转换器即A/D转换器,简称ADC,它是把连续的模拟信号转变为离散的数字信号的器件。
2023-05-19 09:57:24 1042
原创 STM32-光敏传感器实验
光敏传感器的主要是光敏二极管,核心是PN结,利用了光电效应,对光强很敏感,有单向导电性,工作时需要加反向电压。光照越强,等效电阻越小。
2023-05-17 11:00:45 1811
原创 STM32-ADC过采样实验
将采样结果求和,再将求和结果右移N位(N为用户想提升的位数,本例中为4),就能得到提高分辨率的结果了,这个过程称为抽取。首先确定我们的最小刻度,Vref = 3.3V,所以0V <= Vin <= 3.3V,所以最小刻度是3.3V / 65536(2^16)。本次ADC过采样实验的实验要求是:通过ADC1通道1(PA1)过采样实现16位分辨率采集电压,并显示ADC转换的数字量和转换后的电压值。fos = 4^w * fs,fos是过采样频率,w是希望增加的分辨率位数,fs是初始采样频率要求。
2023-05-16 09:59:56 5128 1
原创 STM32-ADC多通道输入实验
通过ADC1通道0/1/2/3/4/5(PA0/1/2/3/4/5)采集测试电压,并现实ADC转换的数字量和换算后的电压值。
2023-05-15 20:48:06 1110
原创 STM32-单通道ADC采集(DMA读取)实验
实验要求:通过ADC1通道1(PA1)采集电位器的电压,并显示ADC转换的数字量和换算后的电压值。
2023-05-14 17:36:16 3620
原创 关于ADC的笔记1
ADC,全称Anlog-to-Digital Converter,模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件,我们能通过ADC将外界的电压值读入我们的单片机中.
2023-05-10 21:03:50 1484
原创 关于OLED屏的笔记
OLED即有机发光管(Organic Light-Emitting Diode,OLED)。OLED显示技术具有自发光、广视角、几乎无穷高的对比度、较低功耗、极高反应速度、可用于绕曲性面板、使用温度范围广、构造及制程简单等有点,被认为是下一代的平面显示屏新兴应用技术。
2023-05-04 18:16:14 2231
原创 关于MPU的笔记
MPU(memory protection unit)内存保护单元。这些系统必须提供一种机制来保证正在运行的任务不破坏其他任务的操作。即要防止系统资源和其他一些任务不受非法访问。嵌入式系统有专门的硬件来检测和限制系统资源的访问。
2023-05-02 16:55:10 1359
原创 STM32-PWM输入捕获实验
PWM输入捕获模式是输入捕获模式的特例。输入捕获就是当连接到定时器的引脚上产生电平变化时对应的捕获装置会立即将当前计数值复制到另一个寄存器中。你可以开启捕获中断然后在中断处理函数中读出保存的计数值。
2023-04-24 17:09:42 1154 2
原创 STM32-高级定时器互补输出带死区控制实验
实验要求为通过定时器1通道1输出频率为1kHz,占空比为70%的PWM输出,输出模式设置为PWM1模式。
2023-04-21 11:43:51 716
原创 STM32-互补输出带死区和刹车断路笔记
高级控制定时器(TIM1 和 TIM8)可以输出两路互补信号,并管理输出的关断与接通瞬间。这段时间通常称为死区,用户必须根据与输出相连接的器件及其特性(电平转换器的固有延迟、开关器件产生的延迟…)来调整死区时间。
2023-04-19 23:13:16 1761
原创 STM32-高级定时器输出比较模式实验
比较输出功能:定时器通过对预设的比较值与定时器特定寄存器的值做比较之后,并依据相应的输出模式从而实现各类输出,如PWM输出、电平翻转、单脉冲模式等。一般来说,STM32的通用定时器和高级定时器都具有比较输出功能,不同的定时器可能通道数量上有差异。
2023-04-17 20:55:21 1524
原创 STM32实验-高级定时器输出指定个数PWM
STM32F103ZET6中有TIM1,TIM8两个高级定时器,每一定时器都有1、一个16位向上、向下、向上/下自动装载计数器2、一个16位预分频器和四个独立从输入输出通道3、每一个通道都可用于输入捕获、输出比较、PWM和单脉冲模式(除了基本定时器,高级定时器和通用定时器都能产生PWM)
2023-04-15 18:05:11 1666 1
原创 STM32-窗口看门狗WWDG实验
窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,否则看门狗电路在达到预置的时间周期时,会产生一个MCU复位。
2023-04-14 21:10:28 594
原创 关于DMA的笔记
DMA(Direct Memory Access, 直接储存器访问),是部分总线架构提供的功能,DMA传输功能能将数据从一个地址空间复制到另一个地址空间,实现从附加设备/外设与储存器或储存器与储存器之间的高速传输。
2023-04-14 12:38:43 727
原创 通用定时器输入捕获实验
输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能。
2023-04-11 21:05:17 769
原创 关于定时器宽频输出PWM的一些笔记
PWM由通用定时器(TIM2/3/4/5)作为时钟源,它有16位递增、递减、中心对齐计数器(计数值:0~2^16-1)和16位预分频器(预分频系数1~2^16),可用于触发ADC和DAC,在更新事件、触发事件、输入捕获、输出比较时产生中断或DMA请求。
2023-04-09 19:14:58 436
原创 STM32实验:利用PWM输出制作呼吸灯
脉冲宽度调制(Pulse width modulation,即PWM)是一种模拟控制方式,根据相应载荷的变化来调制晶体管基极或MOS管栅极的偏置,来实现晶体管或MOS管导通时间的改变,从而实现开关稳压电源输出的改变。这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。广泛应用在从测量、通信到功率控制与变换的许多领域中。
2023-04-09 17:34:53 1075
原创 关于STM32_IWDG独立看门狗的一些笔记
独立看门狗(IWDG,Independent watchdog),本质是一个可以定时产生系统复位信号、并且可以通过”喂狗“复位的计时器。
2023-04-07 20:12:04 265 3
原创 STM32--IWDG独立看门狗实验
独立看门狗(IWDG)由专用的40kHz的低速时钟驱动,即使主时钟发生故障它也仍然有效。窗口看门狗由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。
2023-04-07 15:49:47 631
原创 关于STM32的USART串口的一些笔记
USART是Universal Synchronous/Asynchronous Receiver/Transmitter 的简称,是通用同步异步收发口。我们常用的是异步通信,所以本笔记以异步通信为例介绍USART串口。
2023-04-03 21:43:27 587
原创 关于数据通信和串口(USART)的一些笔记
在上次的串口通信的实验里,我们简单介绍了一小部分串口和通信的笔记;并且在上一篇笔记里,我们介绍了三个比较常见和重要的通信协议SPI,I2C和CAN总线通信。今天我们来更深地了解数据通信和串口。
2023-04-03 20:48:13 502
原创 SPI、I2C、CAN通信的简单介绍和笔记
标题中的三种通信方式(协议)是比较常见的一些通信协议,对于它们有一定的了解对于我们学习嵌入式单片机的学习有着非常重要的作用。
2023-03-28 21:27:39 3211 1
原创 STM32实验:串口接受和发送消息
在STM32里,USART负责进行串口通信。STM32可以通过串口和其他设备进行传输并行数据,是全双工、异步时钟控制,设备之间进行的是点对点的数据传输。对应的STM32引脚分别是RX(接收端)和TX(发送端)。STM32的USART串口资源有USART1、USART2、USART3。
2023-03-27 11:24:33 3754
原创 STM32通过外部中断控制灯的亮灭
中断是指把正常正在运行的程序打断,运行中断服务函数,运行完之后再回到主程序。之后笔者会附上详细的介绍。这个是相当重要的知识点,相当于插入任务,可以类似的理解为cpp中线程的join()方法。
2023-03-23 15:09:22 1084
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人