CubeMX使用教程(2)——点亮LED

在上一章,我们完成了CubeMX的环境配置,这一章我们通过CubeMX来完成点亮LED的工作。

通过LED原理图可知,如果我们要点亮LD1(第一个灯),它对应开发板的PC8端口,因此我们应该在CubeMX中将PC8配置为输出端口,如下图所示

由于G431的LED端口和LCD共用了PC8-PC15这8个引脚,因此这8个引脚需统一配置,接下来我们完成剩下7个IO口的配置,同时配置锁存器PD2为输出端口,锁存器的作用是将LED的控制信号锁存器来,使其不受LCD的影响。

接下来我们在main.c的主函数中完成点亮LED代码的编写,从上面的原理图可知,我使用的G431开发板需要把IO口置为低电平(置0)时,对应LED才会亮,因此编写点灯程序时也是这个逻辑。

cs 复制代码
	    HAL_GPIO_WritePin(GPIOC,GPIO_PIN_All,1);
		HAL_GPIO_WritePin(GPIOC,GPIO_PIN_8,0);
		HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2, 1);
		HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2, 0);

将这行代码放入主函数的循环while(1)中

编译之后,通过程序烧录软件或者烧录器下载程序,即可点亮LED1

当然,学会点亮一个灯后,后面的事情就好解决了,可以点亮多个灯,加上延时可以做流水灯等,原理都是一样的,为了更方便的控制LED,大家还可以尝试编写属于自己的控制函数,后续实现控制时在主函数中调用即可。

相信通过这一章,大家对CubeMX的IO口配置有了一定的理解,也知道了如何去通过你手上的开发板去看原理图,从而完成IO口配置,生成代码,思考编程逻辑,完成主函数的编写,实现预期功能这一系列的工作流程。

相关推荐
小僧景贤1 小时前
STM32F407 时钟系统超详解
stm32·单片机·嵌入式硬件
西城微科方案开发2 小时前
胎压计方案开发
单片机·嵌入式硬件
国科安芯2 小时前
卫星星务计算机数据管理中SEU容错机制的技术实现研究——以AS32S601存储器ECC架构为例
网络·单片机·算法·fpga开发·架构·云计算·risc-v
JckOLF04Z2 小时前
自动开机调用迅雷下载数据库备份,完成后自动关机
数据库·单片机·嵌入式硬件
国科安芯3 小时前
卫星电推进系统阀门驱动控制中的宽温域高可靠MCU应用研究——基于AS32S601电气特性与辐照试验数据的工程分析
单片机·嵌入式硬件·fpga开发·云计算·信息与通信·卫星·抗辐射芯片
Hello_Damon_Nikola4 小时前
CZL-601微型称重传感器从入门到精通
单片机·嵌入式硬件
llilian_164 小时前
基于PCI总线校时时钟同步卡的高精准授时解决方案
大数据·服务器·功能测试·单片机
破晓单片机5 小时前
093、STM32项目分享开源:蓝牙智能晾衣架系统
stm32·单片机·嵌入式硬件·开源
木由里予5 小时前
TEE(Trusted Execution Environment)技术详解
java·linux·开发语言·网络·嵌入式硬件·android-studio
zcmodeltech6 小时前
火电厂模型多设备时序控制系统设计:基于STM32与Modbus RTU的燃煤-燃机全流程联动方案
分布式·stm32·单片机·嵌入式硬件·物联网