【电子设计】按键LED控制与FreeRTOS
1. 安装Keilv5
打开野火资料,寻找软件包
解压后得到的信息
百度网盘 请输入提取码 提取码:gfpp
安装526或者533版本都可以
下载需要的 F1、F4、F7、H7 名字的 DFP pack 芯片包 安装完 keil 后直接双击安装
注册操作,解压注册文件夹后根据里面的图示步骤操作
打开说明
STM32用户选择下载MDK536
瑞萨用户选择下载更高版本MDK538A
安装完keil后关闭弹窗和整个keil 然后双击安装芯片包
注册相关请看KEIL注册压缩包内的图示操作
下载MDK536
等待ing……
安装成功!
2. 注册Keilv5
下载注册机(先关闭防火墙Windows系统如何关闭防火墙保姆式教程,超详细-CSDN博客)
以管理员身份运行Keil uVision5 ,打开
生成注册码注册
看到“步骤5” 的时候说明注册成功了。
3. 安装STM32芯片包
双击安装
安装成功之后,在KEIL5 的 Pack Installer 中就可以看到我们安装的包, 以后我们新建工程的时候,就有单片机的型号可选。
4. 用DAP仿真器下载程序
4.1. DAP仿真器简介
本书配套的仿真器为Fire-Debugger,遵循ARM公司的CMSIS-DAP标准,支持所有基于Cortex-M内核的单片机,常见的M3、M4和M7都可以完美支持。
Fire-Debugger支持下载和在线仿真程序,支持XP/WIN7/WIN8/WIN10这四个操作系统,免驱,不需要安装驱动即可使用,支持KEIL和IAR直接下载,非常方便。
4.2. USB线跟板子连接
4.3. 仿真器配置
在仿真器连接好电脑和开发板且开发板供电正常的情况下,打开编译软件KEIL,在魔术棒选项卡里面选择仿真器的型号,具体过程看图示:
Fire-Debugger遵循的是CMSIS-DAP标准,故选择CMSIS-DAP Debugger
选择默认配置的仿真器
4.4. 选择目标板
选择Sectors擦除,如果选择Full Chip擦除则会非常慢。
勾选Reset and Run,则下载完程序会自动运行,不用手动复位。
4.5. 下载程序
如果前面步骤都成功了,接下来就可以把编译好的程序下载到开发板上运行。
要先点编译(Build),确认编译正确后再点击下载,下载程序不需要其他额外的软件,直接点击KEIL中的LOAD按钮即可。
5. 不依赖 FreeRTOS
5.1. 下载相应程序
main.c
#include "stm32f10x.h"
#include "bsp_led.h"
#include "bsp_exti.h"
int main(void)
{
LED_GPIO_Config();
EXTI_Key_Config();
while(1)
{
}
}
stm32f10x_it.c
#include "stm32f10x_it.h"
#include "bsp_led.h"
#include "bsp_exti.h"
void NMI_Handler(void)
{
}
void HardFault_Handler(void)
{
while (1)
{
}
}
void MemManage_Handler(void)
{
while (1)
{
}
}
void BusFault_Handler(void)
{
while (1)
{
}
}
void UsageFault_Handler(void)
{
while (1)
{
}
}
void SVC_Handler(void)
{
}
void DebugMon_Handler(void)
{
}
void PendSV_Handler(void)
{
}
void SysTick_Handler(void)
{
}
void KEY1_IRQHandler(void)
{
if(EXTI_GetITStatus(KEY1_INT_EXTI_LINE) != RESET)
{
LED1_TOGGLE;
EXTI_ClearITPendingBit(KEY1_INT_EXTI_LINE);
}
}
void KEY2_IRQHandler(void)
{
if(EXTI_GetITStatus(KEY2_INT_EXTI_LINE) != RESET)
{
LED2_TOGGLE;
EXTI_ClearITP