点亮第一个LED灯实验(stm32f103c8t6)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

一、补充文件夹和引入相关文件

 二、创建分组

三、“C/C++"选项卡设置

四、完成点灯实验的main.c代码

五、编译运行(测试+报错+解决方案)

六、使用FlyMcu.exe的编译工具

七、点灯实验成功

八、总结


一、补充文件夹和引入相关文件

在上一次实验的基础上进行(嵌入式keil5工程的详细建立及应用),先在找到该项目的位置并建两个文件夹,分别为并引入相关的文件(相关文件在上一个实验的固件库中)。点亮第一个LED灯实验(stm32f103c8t6)_第1张图片

 点亮第一个LED灯实验(stm32f103c8t6)_第2张图片

点亮第一个LED灯实验(stm32f103c8t6)_第3张图片 

点亮第一个LED灯实验(stm32f103c8t6)_第4张图片 

 二、创建分组

   打开keil 5 软件,在把这个项目打开;或者直接双击上面图片中最后一个文件带有keil 5图标的文件,再点击“品“图标。

点亮第一个LED灯实验(stm32f103c8t6)_第5张图片

 

    在“Project Components (工程组件)”选项卡中,在“Groups (分组) "栏中单击“创建分组”图标,把之前在硬盘上创建的文件夹名手工写入“Groups"的框里。并且在每个分组里单击下方的"Add Files (添加文件)”按钮;把前面建的Basic和Hardware中对应文件夹下方的“.c"文件加入到分组里。具体哪个文件加到哪个组里,参照下方第二张图操作。

点亮第一个LED灯实验(stm32f103c8t6)_第6张图片

点亮第一个LED灯实验(stm32f103c8t6)_第7张图片 

点亮第一个LED灯实验(stm32f103c8t6)_第8张图片 

 

三、“C/C++"选项卡设置

点击工具栏的“魔法棒“,在“C/C++".选项卡中“Define: (定义)输入框中手工输入“USE_STDPERIPH_DRIVER,STM32F10X_MD”,字母全部大写。然后单击下方的“Include Paths (包含路径)”输入框后面的“...“按钮。

点亮第一个LED灯实验(stm32f103c8t6)_第9张图片

点亮第一个LED灯实验(stm32f103c8t6)_第10张图片 

四、完成点灯实验的main.c代码

#include "stm32f10x.h" //STM32头文件

#include "sys.h"

#include "delay.h"

#include "led.h"


int main (void) //主程序

{

    RCC_Configuration(); //时钟设置

    LED_Init();



    while(1)

    {

        //方法1:

        GPIO_WriteBit(LEDPORT, LED1, (BitAction)(1)); //LED1接口输出高电平1

        delay_us(50000); //延时1秒

        GPIO_WriteBit(LEDPORT, LED1, (BitAction)(0)); //LED1接口输出低电平0

        delay_us(50000); //延时1秒

        //方法2:

//      GPIO_WriteBit(LEDPORT,LED1,(BitAction)(1-GPIO_ReadOutputDataBit(LEDPORT,LED1))); //取反LED1

//      delay_ms(500); //延时1秒

        //方法3:

//      GPIO_SetBits(LEDPORT,LED1); //LED灯都为高电平(1)

//      delay_s(1); //延时1秒

//      GPIO_ResetBits(LEDPORT,LED1); //LED灯都为低电平(0)

//      delay_s(1); //延时1秒

        //方法4

//      GPIO_Write(LEDPORT,0x0001); //直接数值操作将变量值写入LED

//      delay_s(2); //延时1秒

//      GPIO_Write(LEDPORT,0x0000); //直接数值操作将变量值写入LED

//      delay_s(2); //延时1秒

    }

}

五、编译运行(测试+报错+解决方案)

点亮第一个LED灯实验(stm32f103c8t6)_第11张图片

 

报错:缺少stm32f10x_flash.c的文件(关键字flash)

点亮第一个LED灯实验(stm32f103c8t6)_第12张图片

 

解决:点击“品“字工具,在Lib组中添加stm32f10x_flash.c文件。

点亮第一个LED灯实验(stm32f103c8t6)_第13张图片

 

再运行,运行成功,并生成"STM32demo.axf"文件。

点亮第一个LED灯实验(stm32f103c8t6)_第14张图片

 

六、使用FlyMcu.exe的编译工具

  打开FlyMcu.exe的编译工具,并连接STM32F103C8T6单片机对应的端口,再找到刚刚生成的"STM32demo.axf"文件,点击“开始编程“

点亮第一个LED灯实验(stm32f103c8t6)_第15张图片

 

七、点灯实验成功

点亮第一个LED灯实验(stm32f103c8t6)_第16张图片


 

八、总结

这里对文章进行总结:

   在这一次的实验中,又学到许多的知识,了解到了从最开始的安装Keil 5工具再到文件夹还有引入相关的文件,接着熟悉Keil 5工具的使用,还有导入相关的包,接着写main.c的代码,了解了如何使用代码编程;在引入头文件时出现了报错,在经过查阅资料后发现还缺少相关的文件,接着继续引入相关的.c文件和.h文件,到最后的运行编译过程中也出现小小的问题,经过查阅资料发现,还是缺少了相关的文件,修改运行成功,最后点灯实验成功。

   总结,总的来的第一个点灯实验从建文件夹开始到最后的灯亮起来,虽然看是简单,但还是亲去动手实验,才知道这个运行成功,才能更好的了解嵌入式编程这个知识点。最后,实验很有兴趣,收获很丰富!

你可能感兴趣的:(嵌入式入门,单片机,stm32,c语言)