Stm32学习笔记一————库函数法点亮LED灯
2019-07-13 10:45
316 查看
没学会走就先学会跑,先问问自己是不是天才,如果不是就一步一步慢慢来。
1、创建文件夹LED,用于存放工程文件
keil5->Project->New $\mu$Vision project,保存在LED文件夹中,工程文件命名为LED。
2、选择自己所用的芯片型号,(我用的是STM32F103C8t6)
3、勾选固件库
选中:CMSIS>CORE;Device>Startup;>StdPeriphDrivers>Flash;>Framework;>GPIO;>RCC;等 CMSIS>CORE:提供与 Cortex-M0、Cortex-M3、Cortex-M4、SC000 和 SC300 处理器与外围寄存器之间的接口; Device>Startup:初始化硬件(比如系统时钟设置),初始化堆栈,安排中断向量表等等,完成这些工作后才执行main函数。 StdPeriphDrivers>Flash;>Framework;>GPIO;>RCC:添加所需要的外设。
4、新建mian.c文件,并添加到工程项目当中。
右击Source Group1文件夹 Add Existing Files to Group 'Source Group1'
5、配置Target,添加方法是点击魔术棒之后,
设置输出HEX文件 ,最终烧录到stm32中。
还需要添加一个全局宏定义标识符。进入 C/C++选项卡,然后在 Define 输入框连输USE_STDPERIPH_DRIVER。(==注意==:如果有多个标识符, 他们之间需要用英文的逗号隔开的)
6、代码
#include "stm32f10x.h" #define uint unsigned int #define uchar unsigned char #define CLOCK 8 //Crystal oscillator is 8M // xx us delay void delay_us(uint us) { uint n; while(us--)for(n=0;n<CLOCK;n++); } // xx ms delay void delay_ms(uint ms) { while(ms--)delay_us(1000); } //Pin configuration void GPIO_Configuration(void) { GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_Init(GPIOC,&GPIO_InitStructure); } /*************************************************************************** main function ***************************************************************************/ int main() { //The GPIOC clock enable RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); GPIO_Configuration(); while (1) { GPIO_SetBits(GPIOC,GPIO_Pin_13); delay_ms(100); GPIO_ResetBits(GPIOC,GPIO_Pin_13); delay_ms(100); } }
7 参考链接
- keil5中新建一个STM32工程
https://www.geek-share.com/detail/2716994880.html - 如何用keil5新建STM32 新工程
https://wenku.baidu.com/view/8fc840f8ac51f01dc281e53a580216fc700a539e.htm - STM32 Keil5建立工程模板步骤
https://www.geek-share.com/detail/2675622929.html - CMSIS 到底是什么?
http://www.eefocus.com/freescale007/blog/13-07/295486_07c15.html - STM32学习笔记(6): 启动代码(Startup Code)
https://www.geek-share.com/detail/2707143725.html
相关文章推荐
- STM32学习笔记之点亮LED灯
- STM32学习笔记1:点亮第一盏LED灯
- STM32学习笔记1-点亮LED
- 【stm32】学习笔记(2)12月28号----------点亮一位LED
- stm32学习笔记:新建工程流程,点亮led灯
- STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)
- [转载]STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)
- STM32学习笔记-点亮第一个led
- MSP430学习笔记1---点亮第一个LED
- ARM底层学习笔记-裸板实验程序解析-点亮LED
- Arduino学习笔记3--用数字IO口点亮LED灯
- mini2440学习笔记 之01 配置ADS1.2编译调试程序(在sram中点亮LED)
- 嵌入式学习笔记(综合提高篇 第一章) -- 利用串口点亮/关闭LED灯
- 零知开源平台学习笔记1-点亮LED
- bb_black_学习笔记——(3)点亮LED之shell命令
- STM32学习之点亮LED
- 【STM32】新手折腾笔记--02:点亮LED灯
- JZ2440裸机点亮LED【学习笔记】
- STM32学习第一课——新建工程与点亮LED灯
- beaglebone_black_学习笔记——(3)点亮LED之shell命令