stm32系列32位微控制器基于arm® cortex®-m处理器,旨在为mcu用户提供新的开发自由度。它包括一系列产品,集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。
1.硬件接口
stm32g431开发板有一个用户按钮和led灯。
根据原理图,ld2和pa5相连,想要点亮led则pa5应该为高电平。
用户按键b1和pc13相连,按下为高电平;
2.软件设计
2.1 芯片型号选择
本示例所使用芯片型号为:stm32g431rbt6;128kb flash 和32kb sram,工作频率高达170mhz。
2.2 时钟配置
2.3 gpio配置
2.4 生成代码
2.5 led和按钮引脚配置
2.6 获取按键值函数编写
/*获取按键值*/uint8_t get_keyval(void){ uint8_t static stat=0; if(hal_gpio_readpin(user_gpio_port,user_pin)==1 && stat==0)//判断按键是否按下 { hal_delay(20);//延时消抖 stat=1; if(hal_gpio_readpin(user_gpio_port,user_pin))return 1; } else if(hal_gpio_readpin(user_gpio_port,user_pin)==0) { stat=0; } return 0;}
2.7 主函数
uint8_t key; /* user code end 2 */ /* infinite loop */ /* user code begin while */ while (1) { /* user code end while */ /* user code begin 3 */ key=get_keyval(); if(key) { hal_gpio_togglepin(ld2_gpio_port, ld2_pin); } }
开发板本身集成st_link下载器,只需安装st_link驱动即可直接下载。
中央空调为什么要办理使用登记并定期检验?
英特尔与长城汽车合作推动汽车产业智能化创新
深入分析802.11ac技术及生产测试面临的挑战
谷歌与英飞凌携手实现全新人机互动方式
加密货币应该被禁止因为不可能被有效地监管
STM32G431之点灯和按键配置
电气图分类有哪些
步进电机分哪几种及种类
小米智能电视在印度市场的份额占比持续六连胜
防水连接器定制安装需要注意哪些事项?
高通创锐讯推出电力线通信单芯片解决方案
Android Q的第五个Beta版本 即将面世
话筒使用注意事项
叠衣机器人怎么叠衣服?速度极快10秒一件
实时光补偿算法是AR行业技术革新的驱动力量
宝马电动汽车的未来和挑战
fireflyAIO-3399C主板电源适配器简介
如何通过优化模块布局解决芯片缩小带来的电气性能挑战
led芯片的类型
suaoki推出一款便携式储能移动电源,支持车充充电,并能够使用太阳能供电