安装包来自于老师与同学的分享,相信大家在网上也很容易找到,这里就不提供链接啦!安装包这是个样子的:
(1)打开下载好的安装包,找到文件mdk_510.exe文件,双击。 (2)打开后直接点击next即可。 (3)勾选“I agree to all terms…”,然后点击next即可。 (4)点击Browse,选择自己想要安装的路径,再点击next即可。 注意:路径下不能出现中文,不然会出现问题嘞! (5)填写注册信息,前面三项随意填写,邮箱需要正确填写,填写完成后,点击next。 (6)这一步就开始安装了,等待吧! (7)我的电脑管家比较严格,啥都问,如果你们也有,点击安装就行了。 (8)安装完成后,点击Finish即可。 (10)它会自动弹出一个页面,不用慌张,点击ok就好。 到这一步MDK5就安装完成了,如果有问题,大家互相交流。
(1)之前的安装包里面有以下三项,分别点击,下面以第一个为例。 (2)点开后,会出现以下页面,点击next即可。 (3)在这里就开始安装了,小等一会。 (4)安装完成以后点击Finish,后面两个文件也是这样哦。 (5)到了第三个文件,点击出现问题,没关系,在这里跟大家解释一下。这个框里面说不支持这个“1.4.0”的架构版本,只能支持到“1.2”,对于初学者,已经足够,我们可以不用安装,所以直接点确定就好。 到这一步,STM32也已经安装完成了。
(1)在桌面找到“此电脑”,鼠标右键点击,再点击属性,找到控制面板主页。
(2)按照以下图片顺序一次设置即可。
(1)在桌面“开始”里面找到设置,点击出现以下页面,收索Windows就自动弹出想要的选项,点击即可。 (2)按照以下图片顺序一次设置即可。 注意:在这里准备工作已经完成,如果不关闭,电脑会把注册程序当成垃圾文件删除,会导致后面操作无法完成!
(1)以管理员身份运行已经安装好的keil5软件,点击File,选择License Management,将CID的代码复制好。 (2)将复制好的CID粘贴到相应位置处,Target选择ARM,再选择Prof.Developers Kit(Plus),再点击Generate,会生成一串字符,复制下来。 (3)将生成的字符串复制到New License ID Code(LIC),再点击Add LIC,就会显示成功哦。 注意:如果失败,请注意是不是以管理员身份运行! 到这里注册也已经完成。
(1)打开keil5软件,找到project,选择New μVision Project。 (2)将新建工程的名字输入进去,并选择自己想要储存的路径。
(1)点击file下的New按键,创建一个空文件,将以下代码复制进去。
#define PERIPH_BASE ((unsigned int)0x40000000) #define APB2PERIPH_BASE (PERIPH_BASE + 0x10000) #define GPIOA_BASE (APB2PERIPH_BASE + 0x0800) #define GPIOB_BASE (APB2PERIPH_BASE + 0x0C00) #define GPIOC_BASE (APB2PERIPH_BASE + 0x1000) #define GPIOD_BASE (APB2PERIPH_BASE + 0x1400) #define GPIOE_BASE (APB2PERIPH_BASE + 0x1800) #define GPIOF_BASE (APB2PERIPH_BASE + 0x1C00) #define GPIOG_BASE (APB2PERIPH_BASE + 0x2000) #define GPIOA_ODR_Addr (GPIOA_BASE+12) //0x4001080C #define GPIOB_ODR_Addr (GPIOB_BASE+12) //0x40010C0C #define GPIOC_ODR_Addr (GPIOC_BASE+12) //0x4001100C #define GPIOD_ODR_Addr (GPIOD_BASE+12) //0x4001140C #define GPIOE_ODR_Addr (GPIOE_BASE+12) //0x4001180C #define GPIOF_ODR_Addr (GPIOF_BASE+12) //0x40011A0C #define GPIOG_ODR_Addr (GPIOG_BASE+12) //0x40011E0C #define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)<<5)+(bitnum<<2)) #define MEM_ADDR(addr) *((volatile unsigned long *)(addr)) #define LED0 MEM_ADDR(BITBAND(GPIOA_ODR_Addr,8)) //#define LED0 *((volatile unsigned long *)(0x422101a0)) //PA8 typedef struct { volatile unsigned int CR; volatile unsigned int CFGR; volatile unsigned int CIR; volatile unsigned int APB2RSTR; volatile unsigned int APB1RSTR; volatile unsigned int AHBENR; volatile unsigned int APB2ENR; volatile unsigned int APB1ENR; volatile unsigned int BDCR; volatile unsigned int CSR; } RCC_TypeDef; #define RCC ((RCC_TypeDef *)0x40021000) typedef struct { volatile unsigned int CRL; volatile unsigned int CRH; volatile unsigned int IDR; volatile unsigned int ODR; volatile unsigned int BSRR; volatile unsigned int BRR; volatile unsigned int LCKR; } GPIO_TypeDef; #define GPIOA ((GPIO_TypeDef *)GPIOA_BASE) void LEDInit( void ) { RCC->APB2ENR|=1<<2; //GPIOA ???? GPIOA->CRH&=0XFFFFFFF0; GPIOA->CRH|=0X00000003; } //???? void Delay_ms( volatile unsigned int t) { unsigned int i,n; for (n=0;n<t;n++) for (i=0;i<800;i++); } int main( void ) { LEDInit(); while (1) { LED0=0; Delay_ms(500); LED0=1; Delay_ms(500); } }此代码引用大佬“farsight1”的“最简单的STM32入门教程----闪烁LED” “farsight1”博主还有很多优秀文章,大家可以多多关注! (2)在工程视图窗找到Source Group 1,右键点击,选择“Add Existing Files…”。 (3)找到Options for Target,进行设置。 (5)设置output,点击Greate HEX File,再点击Debug,选择Use Simulator,再在Use后面选择ULINK2/ME Cortex Debugger。
(1)点击Build和Rebuild,观察结果。 build结果: rebuild结果: (2)点击Debug,选择start/stop Debug Session。 (3)点击Step、Step over、Step out等按键,观察程序。 (4)退出点击Debug,选择start/stop Debug Session即可。
以上程序和模块的安装已经完成,演示了简单编辑程序,本人是一名初学者,通过博客的形式记录下来,其中不免有步骤或语言的错误或不严谨,在过程中也遇到许多问题,大家可以互相交流。
代码引用大佬“farsight1”的“最简单的STM32入门教程----闪烁LED”