这是本文档旧的修订版!
银杏科技有限公司旗下技术文档发布平台 | |||
技术支持电话 | 0379-69926675-801 | ||
技术支持邮件 | Gingko@vip.163.com | ||
技术论坛 | http://www.eeschool.org | ||
版本 | 日期 | 作者 | 修改内容 |
---|---|---|---|
V1.0 | 2020-04-11 | gingko | 初次建立 |
1. 新建工程:在主界面选择File–>New Project 或者直接点击ACCEE TO MCU SELECTOR
2. 出现芯片型号选择,搜索自己芯片的型号,双击型号,或者点击Start Project进入配置
在搜索栏的下面,提供的各 种查找方式,可以选择芯片内核,型号,等等,可以帮助你查找芯片。本实验选取的芯片型号为:STM32F407IGTx。
3. 配置RCC,使用外部时钟源
4. 配置调试引脚
5. 将LED对应的3个引脚(PI5,PI6,PI7)设置为GPIO_Output
6. 将ARM_KEY对应的引脚(PH15)设置为GPIO_EXTI15
7. 引脚模式配置
8. 配置IWDG
9. 时钟源设置,选择外部高速时钟源,配置为最大主频
10. 工程文件的设置, 这里就是工程的各种配置 我们只用到有限几个,其他的默认即可 IDE我们使用的是 MDK5
11. 点击Code Generator,进行进一步配置
自行选择方式即可
int main(void) { HAL_Init(); //重置所有外围设备。 SystemClock_Config(); //配置系统时钟 MX_GPIO_Init(); //初始化所有已配置的外围设备 LED_RED_ON; //初始化LED状态 while (1) { } }
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);
功能:中断函数具体要响应的动作。
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) { static int led_work_status = 0; HAL_Delay(10); if(ARM_KEY_STATE == KEY_DOWN){ led_work_status += 1; if(led_work_status > 2)led_work_status = 0; } switch(led_work_status){ case 0: LED_RED_ON; LED_GREEN_OFF; LED_BLUE_OFF; break; case 1: LED_RED_OFF; LED_GREEN_ON; LED_BLUE_OFF; break; case 2: LED_RED_OFF; LED_GREEN_OFF; LED_BLUE_ON; break; default: break; } __HAL_GPIO_EXTI_CLEAR_FLAG(GPIO_PIN_9); }
按键每按下一次,三色LED颜色变换(红色、绿色、蓝色轮流变换)一次。