STM32模块示例代码
文章平均质量分 84
挽天技术
这个作者很懒,什么都没留下…
展开
-
C8T6--SPI读FLASH和双通信
本实验板中的 FLASH 芯片 (型号:W25Q64) 是一种使用 SPI 通讯协议的 NOR FLASH 存储器,它的 CS/CLK/DIO/DO 引脚分别连接到了 STM32 对应的 SPI 引脚 NSS/SCK/MOSI/MISO 上,其中STM32 的 NSS 引脚是一个普通的 GPIO,不是 SPI 的专用 NSS 引脚,所以程序中我们要使用软件控制的方式FLASH 芯片中还有 WP 和 HOLD 引脚。WP 引脚可控制写保护功能,当该引脚为低电平时,禁止写入数据。原创 2024-09-19 22:12:19 · 642 阅读 · 0 评论 -
C8T6超绝模块--DMA
对于DMA我们有三种模式:外设到寄存器寄存器到寄存器寄存器到外设。原创 2024-09-16 14:21:56 · 706 阅读 · 0 评论 -
C8T6超绝模块--USART串口通信
注意USART的引脚请自行查阅相应的数据手册本模块主要实现功能实现开发板与电脑通信,在开发板上电时通过 USART 发送一串字符串给电脑,然后开发板进入中断接收等待状态,如果电脑有发送数据过来,开发板就会产生中断,我们在中断服务函数接收数据,并马上把数据返回发送给电脑。原创 2024-09-09 22:35:43 · 494 阅读 · 0 评论 -
C8T6超绝模块--EXTI
我们在前面使用读取按键的电压,根据返回值来执行小灯的系列操作,详情可见C8T6按键实现点亮小灯,而在这里,我们通过给按键配置一个EXTI中断,当产生中断时,就去中断服务函数里执行(注意:中断服务函数带有weak标签,可以直接进行重写,名字一定要写对,因为必须在中断服务列表当中)LED初始化在本专栏前面细讲过,这里就不过多赘述,请见C8T6超绝模块-点亮LED。原创 2024-09-08 10:44:00 · 565 阅读 · 0 评论 -
C8T6超绝模块--按键检测点亮LED
这里要注意的一点,有些板子在这里外接了一个电容器,当我们按下键位时,可以通过电容的充放电来实现硬件消抖,而如果没有外接电容器,当我们按下按键时,就会产生波纹抖动(高低电压变化不是一蹴而就的),导致按键没有达到我们预期的效果,我们要使用软件消抖(通过延时来判断电压,保证我们按下按键时,电压是处于稳定状态的)(这里针对的是我的板子的原理图,具体的查看自己的板子)注意看,这里按键一端接到的是地,当我们没按下按键时,其默认是低电压,当我们按下按键时,电路连通时,这是高电平。里面有具体的阐述,这里就不一一介绍了。原创 2024-09-04 11:00:10 · 620 阅读 · 0 评论 -
C8T6超绝模块--LED
注意:具体打开哪个时钟还是要通过查阅数据手册,看我们需要初始化的外设具体在哪个线程上,我们这里端口GPIOC在APB2的线程上,所以调用的是APB2时钟的打开函数。如图一边接入的是3.3V的外接电压,而我们需要电流流过需要PC13是低电压,这样有电势差才会使产生电流让小灯亮,初始化时我们一般控制默认接入高电压,使其不亮。首先不同的芯片的接法不一样,需要自己查看自己的芯片的原理图,我使用的是C8T6,使用的PC13接入的LED。下面是LED灯的GPIO的初始化函数。其实,灯的亮灭是通过高低电压来控制的。原创 2024-09-04 10:10:15 · 634 阅读 · 0 评论