1设计要求
控制实验平台的发光二极管LED1、LED2、LED3、LED4,使它们有规律的点亮,具体顺序如下:
LED1亮->LED2亮->LED3亮->LED4亮,如此反复,当按下开发板上的B3按钮时,灯全部熄灭,
2秒钟后发光二极管全部点亮,再过一秒钟后返回被中断前的状态,有规律的依次点亮。
2 硬件电路设计
在评估板上,LED1、LED2、LED3、LED4分别与PC6、PC7、PC8、PC9相连,按键Key与PB9相连。
3软件程序设计
根据任务要求,程序内容主要包括:
(1)配置PB口第9个引脚作为外部中断,下降延触发;
(2)读取端口数据输出寄存器GPIOC_ODR[15:0]的值,因为C口[9:6]位和四个LED灯连通。
(3)初始化时,LED依次点亮,当按下Key键时产生中断;
(4)中断服务子程序内容:灯全部熄灭,2秒钟后发光二极管全部点亮,再过1秒钟后中断返回。
整个工程包含3个源文件:STM32F10x.s、stm32f10x_it.c和main.c,其中STM32F10x.s为启动代码,
所有中断服务子程序均在stm32f10x_it.c中,其它函数则在main.c中。下面分别介绍相关的函数,
具体程序清单见参考程序。
GPIO_Configuration函数负责配置GPIO端口,其中GPIO_InitStructure数据结构包含所有GPIO端口
配置所需各项ÿ