STM32 Cube点亮第一个LED

嗯,本人高职生一枚,机电一体化专业,第一次写博客,技术的话很菜,也刚刚学的,目前学到ADC,其实讲的很菜,所以请见谅,废话不多说
1.首先打开Cube,NewProject
STM32 Cube点亮第一个LED_第1张图片
2.在红色方框处搜索你的STM32型号,找到后双击,我的是F103ZET6
STM32 Cube点亮第一个LED_第2张图片
3.接下来我们选择RCC和GPIO口
STM32 Cube点亮第一个LED_第3张图片
RCC一个是外部高速时钟和低速时钟,我把两个都开了,选择了Crystal/Ceramic Resonator,好像是晶振,一般板子上自带LED,所以我查看了一下我单片机的原理图,分别是PE5和PB5,这里我选择了PE5,左击你的IO口,选择OUTPUT
4.我们配置时钟
STM32 Cube点亮第一个LED_第4张图片
我的单片机时钟频率最高72M,你们的我不知道,反正想办法根据乘除配置出你想要的时钟,一般配置到最大(红色圆圈处)
5.配置GPIO
STM32 Cube点亮第一个LED_第5张图片
点击红色箭头处,再点击原谅色箭头,弹出这个界面,我们点击那行,会发现有几个参数让我们配置
GPIO Pin Level:这是管脚输出(还是管脚输出的初始化),我们选择低电平,根据原理图,我的LED是低电平触发的,应该都一样的,选择LOW
GPIO mode:这是GPIO口的模式设置,我们选择OUTPUT PULL PUSH,(推挽输出)自行百度
第三个:我们选择PULL UP上拉
Maximum output speed:最大输出速度,我们选择慢
最后一个就是给你的管脚取个名字,嗯,倒时候写程序号分辨
还有,差点忘了,点击Apply,再点OK
6.哈哈哈,激动人心的时刻到了,下载编译了
STM32 Cube点亮第一个LED_第6张图片
点击project,选择最后一个,seetings
1.这个是你的工程名字
2.这是你的保存路径
3.这是你的编译器,我的是MDK5,所以我选了这个
STM32 Cube点亮第一个LED_第7张图片
点击红色箭头,再点击水蓝蓝,ok,水蓝蓝的作用是未来帮你分文件,不然一些配置文件都写到man.c里去了,就不好找了
STM32 Cube点亮第一个LED_第8张图片点击红色箭头,就是大饼上插了一跟棒子的,好了之后会弹出
一个界面直接点Open object,也可以选择×掉,当然你要到你保存目录里去找了,找到后我的在这里
STM32 Cube点亮第一个LED_第9张图片
STM32 Cube点亮第一个LED_第10张图片
7.打开工程后
我们直接选择下载,
STM32 Cube点亮第一个LED_第11张图片
然后用这个软件找到HEX文件把程序烧进去,你会发现你板子上的灯亮了
STM32 Cube点亮第一个LED_第12张图片一般HEX文件都是在这里,STM32 Cube点亮第一个LED_第13张图片

我们要修改工程了,找到有main.c的这个文件
STM32 Cube点亮第一个LED_第14张图片
看,我们还会发现一个gpio.c的文件,这就是水蓝蓝的作用了,不然会把这个.c文件写到main.c里去;
进入gpio.c,我们会发现这里都是我们之前配置好的GPIO口的一些东西,找到这个,选中前面的,右击,选择第一个goto,我们会发现来到了这里STM32 Cube点亮第一个LED_第15张图片
看到这两个函数了吗,一个是读取IO口的(ReadPin),一个是输出IO口的(WritePin),接下来我们复制gpio.c里的一些东西,就是我们刚刚goto的那句话,粘贴到main.c的文件的While循环里
STM32 Cube点亮第一个LED_第16张图片

HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET);
HAL_Delay(1000);

用这个函数写出一些代码,这个函数我们上面解释了,是GPIO口输出函数,两个圆圈里是的参数管脚状态,红色的REST是0,蓝色的是1,你可以这么理解,你把他们替换成0或者1也可以,我用的只不过是官方的东西,每次延迟1000毫秒(1秒),大家下载编译,烧录后会发现那个灯一闪一闪的

你可能感兴趣的:(STM32 Cube点亮第一个LED)