一、使用STM32cubeMX新建工程并初始化
1、打开STM32cubeMX并新建工程,芯片输入STM32F103C8T6,双击芯片进入配置界面,首先选择调试方式SYS->debug->serial wire,这步是选择调试方式,然后RCC中选择高速时钟,有三种选择:
Disable 这个是不用外部晶振
Crystal/Ceramic Resontor 这个是用无源外部晶振
BYPASS Clock Source 这个是有源外部晶振
咱们选择无源外部晶振,然后是配置时钟树,点击上面的Clock Configuration,在时钟树的HCLK(Mhz)中输入72回车,然后在点击后面的Project Manager,在里面设置工程名,路径,使用的软件,然后在此界面的Code Generator中勾选生成独立的.h.c文件(Generated files里的第一排),这样就设置好了,保存然后打开代码,编译,0error,0warning即可。
二、点亮小灯
首先得知道LED的引脚和解法,如图:
引脚为PC13,共阳接法,所以只要PC13引脚输出低电平即可点亮
所以接下来就是在cubeMX里面配置引脚:
1、从芯片图片中找到PC13引脚,点击设置为GPIO_Outputs输出模式,然后点击左边的GPIO设置相关初始化:
gpio output level 是输出模式时选择默认输出电平,这里我们选择高电平,因为选择低电平LED就会亮,我们都没有参与感就实现了,这怎么能惹?
第二个是选择输出模式,有推挽输出和开漏输出两种,区别是推挽可以输出高低电平,而开漏无法输出高电平,需借助外部上拉电阻,所以我们选择推挽输出(output push pull)
第三个选择上下拉是对于输入模式而言的,上拉就是高电平,下拉就是接地,因为输入时悬空的,电平状态无法保证,所以才会选择上下拉,这儿我们是输出就不管
下一个是输出速度选择,选择一个自己喜欢的速度就好啦
最后是给这个引脚起名,起名要有标志性,要看到名字知道这个的引脚作用,所以我们取名为LED
保存后生成代码,打开代码,可以看到我们选择的引脚被定义了而且进行了宏替换:
接下来我们只需要在主函数中编写将引脚设置为低电平的代码就好啦,如下:
自己写的代码要在BEGIN和END之间写,不然下次初始化其他的东西时会消失
这样我们的点亮LED就完成啦,烧录进去看到LED点亮,大功告成!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)