玩转GD32
文章平均质量分 94
折途想要敲代码
_(:ι」∠)_好饿,但是不想动
展开
-
【硬件模块】SGP30气体传感器
这是SGP30官方文档里开头的介绍,简单来说就是SGP30是一个数字多像素气体传感器,然后具有长期稳定性和低漂移。这些我们都不用管,我们只需要知道SGP30是通过I2C来通信的,并且可以采集的数据有CO2和TVOC的含量。TVOC是“Total Volatile Organic Compounds”,意思是总挥发性有机化合物。可以来看一下它的参数。TVOC的输出范围是0~60000ppb,而CO2的范围是400~60000ppm。一开始没注意范围,我看CO2一直都在400以上还以为出了啥问题。原创 2024-07-03 10:48:34 · 1105 阅读 · 0 评论 -
【GD32】08 - IIC(以SHT20为例)
接下来是设置IIC通信的模式与地址,模式我们自然是选择I2C模式的,而地址可以选择7位或者是10位的(10位的参数截图没截上,因为卡在手册的下一页了),这个根据我们通信的模块的从机地址而定。今天来了解一下GD32中的硬件IIC,其实我个人是觉得软件IIC比较方便的,不过之前文章里用的都是软件IIC,今天就算是走出自己的舒适圈,我们来了解了解GD32中的硬件IIC。关于IIC以及本文中演示的SHT20,在之前的文章里都有,并且也不是本文的重点,因此这里就不介绍了,不了解且感兴趣的小伙伴可以去看看之前的文章。原创 2024-06-27 22:08:32 · 1063 阅读 · 0 评论 -
【GD32】07 - UART串口通信
根据之前STM32串口的经验,我们可以将printf重定向到串口上,在STM32中我们直接重写fputc,然后在Keil的设置中勾选Use MicroLlB就行了,但是在GD32F407中勾选Use MicroLlB在编译后会有两个错误。发送数据,注意这边参数的取值范围,发送数据的范围居然是0~0x1FF,类型是uint32_t。今天我用的型号是GD32F407,用其他型号的小伙伴在使用UART的时候注意一下自己手上板子的资源就行,我们使用固件库就算是不同型号其实也是没有什么太大差别的。原创 2024-06-25 21:48:59 · 1759 阅读 · 0 评论 -
【硬件模块】SSD1306 OLED屏幕(含GD32&ESP32驱动代码)
最近在写GD32的文章,之前STM32有OLED屏幕来展示数据,ESP32可以直接打印到电脑屏幕上,GD32的话手上就没有办法了。虽然是可以直接把STM32的OLED屏幕的驱动代码改改移植到GD32上面,不过想了想干脆写一个文章来说说如何驱动,也当是锻炼一下看文档的能力了。没错,SSD1306也是只有英文文档,找网站直接翻译中文的效果不太好,不过我还是把译文结合原文再看看江科大的STM32的OLED驱动代码给啃了啃,因此这很考验我的耐心。原创 2024-06-14 19:39:35 · 1625 阅读 · 1 评论 -
【GD32】06 - SPI (含ST7735S TFT-LCD屏幕驱动)
接下来我们要开启引脚复用,SPI一共是四个引脚,MISO,MOSI,SS,SCK,其中SS一般来说我们不让他硬件控制,通常我们会另外软件控制,因为硬件SPI的SS是固定死的,这样可能会和我们其他要用的引脚冲突,而且使用硬件SPI就是为了速度更快,而SS软件另外控制并不会影响多少速度,因此我们就算使用硬件SPI,也会让SS引脚使用软件控制。有了SPI,我们就可以直接封装ST7735S的驱动了,具体ST7735S的指令什么的我就不在这边啰嗦了,之前的文章有小小地介绍一下,文章链接在本文的开头。原创 2024-06-03 21:10:47 · 1347 阅读 · 0 评论 -
【GD32】05 - PWM 脉冲宽度调制
PWM (Pulse Width Modulation) 是一种模拟信号电平的方法,它通过使用数字信号(通常是方波)来近似地表示模拟信号。在PWM中,信号的占空比(即高电平时间占整个周期的比例)被用来控制平均输出电压或电流。PWM在许多应用中都非常重要,特别是那些需要精确控制模拟信号的应用,如电机控制、LED亮度调节、音频放大器等。在电机控制中,PWM通常用于控制电机的速度和方向。通过改变PWM信号的占空比,可以精确地控制电机的平均电压,从而控制电机的速度和扭矩。在LED亮度调节中,PWM也被广泛使用。原创 2024-05-31 19:12:21 · 1305 阅读 · 0 评论 -
【GD32】04 - Timer定时器
GD32E230中有七个定时器,六种类型,其中通用的L4版本有两个,其他类型的各一个。那我们就以通用L4这个类型来敲代码,其他流程是通用的。原创 2024-05-31 19:12:01 · 1278 阅读 · 0 评论 -
【GD32】03 - EXTI外部中断
EXTI,全称External Interrupt/Event Controller,即外部中断/事件控制器,是微控制器中的一个重要组成部分。它主要用于管理来自外部设备的中断和事件请求。总的来说,EXTI是微控制器中一个重要的外部中断/事件控制器,它可以实现对外部设备的中断和事件请求的管理和处理。在物联网和嵌入式系统等领域中,EXTI具有广泛的应用前景和重要的价值。以上介绍来自文心一言。原创 2024-05-13 22:12:58 · 1292 阅读 · 0 评论 -
【GD32】02-ADC模拟数字转换器
在电子和通信技术中,ADC(模拟数字转换器)是一种将模拟信号转换为数字信号的电子设备。这种转换是电子系统中非常关键的一个环节,因为数字信号更易于处理、存储和传输。ADC的工作原理通常包括采样、保持、量化和编码等步骤。采样是从模拟信号中提取离散的值,保持是确保在采样期间信号值不变,量化是将采样值转换为最接近的数字值,而编码则是将这些数字值表示为二进制代码。ADC的性能指标包括分辨率、转换速率和精度等。ADC在多个领域都有广泛的应用。原创 2024-05-12 19:42:35 · 1206 阅读 · 0 评论 -
【GD32】01-GPIO通用输入输出
这里又开一个系列啦。原因就是之前买了立创开发板的9.9的GD32E230C8T6的板子,买都买了就跟着立创开发板学习一下(属于是一次性支持了两个国产品牌了,立创和兆易创新)。并且我还买了GD32F407VET6的板子,后续也会使用GD32F407VET6这块板子来做一些别的。GD32可以说是STM32的国产平替版,听说部分型号可以直接替换掉STM32(我没试过)。原创 2024-05-11 17:14:39 · 2019 阅读 · 1 评论