Skip to content

Latest commit

 

History

History
90 lines (43 loc) · 1.77 KB

README.md

File metadata and controls

90 lines (43 loc) · 1.77 KB

STM32CUBE

自己写的一些ARM实验。

1.LED

实现两个LED灯的交替闪烁。

2.KEY

通过按键控制LED灯。

控制效果:

  • key0:控制同时控制DS0和DS1,按一次,两个灯反转一次
  • key1:控制DS1反转
  • key2:控制DS0反转
  • wkup:控制DS1和DS2互斥点亮

3.UART

串口自发自收。

  • 启动程序向串口1发送Hello, world!
  • 向串口1发送数据,数据原数返回。
  • 队列缓存255个字节。
  • 中断接收,阻塞发送。

4.EXTI

实验效果与实验2相同,但是是通过外部中断触发的方式实现的!

5.TIM6

自实验开始,HAL库版本升级为STM32Cube_FW_F4_V1.25.0。实验实现不同频率点亮两个LED灯。

  • 基本时钟TIM6的时钟频率为500ms。——LED1
  • 延时函数延时时间为1000ms。——LED0

6.PWM

该实验对外有三个输出管脚:

  • PA6 —— 断路管脚,高电平有效。
  • PA7—— OC1N输出管脚。
  • PA8—— OC1输出管脚

该实验通过TIM1的通道1实现,可以在调试修改compare值来调节PWM输出占空比,且通过改变PA6电平来控制PWM是否输出。

7.Capture

该实验通过TIM8实现捕获功能,其捕获管脚为PC6。

  1. testInput:改变PWM波的占空比
  2. testResultPulse:捕获正脉冲时钟数,精度为180MHz
  3. testResultPeriod: 捕获PWM一个周期时钟数,精度为180MHz

在调试模式中,通过修改PWM波的占空比,比较ARM硬件捕获的能力。

8. SRAM(LCD)

该实验通过SRAM来驱动LCD屏幕。

​ 通过该实验可以在屏幕上输出中文,字符串以及数字。

9.DMA

该实验通过DMA驱动串口发送大量数据

1. 每次按下按键0,启动发送 程序
2. LCD屏幕上显示发送的进度
3. LED灯周期1s闪烁