硬件资源:
1,DS0(连接在PF9)
2,蜂鸣器(连接在PF8)
3,按键KEY0(PE4)/KEY1(PE3)/KEY2(PE2)/KEY_UP(PA0,也称之为WK_UP)
实验现象:
本实验,利用外部中断,实现与实验3类似的效果,即:通过开发板上载有的4个按
钮(KEY_UP、KEY0、KEY1和KEY2),来控制板上的2个LED(DS0和DS1)和蜂鸣器
,其中WK_UP控制蜂鸣器,按一次叫,再按一次停;KEY2控制DS0,按一次亮,再按
一次灭;KEY1控制DS1,效果同KEY2;KEY0则同时控制DS0和DS1,按一次,他们的
状态就翻转一次。
单片机源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "beep.h"
- #include "exti.h"
-
- int main(void)
- {
- Stm32_Clock_Init(336,8,2,7);//设置时钟,168Mhz
- delay_init(168); //延时初始化
- uart_init(84,115200); //串口初始化
- LED_Init(); //初始化与LED连接的硬件接口
- BEEP_Init(); //初始化蜂鸣器IO
- EXTIX_Init(); //初始化外部中断输入
- LED0=0; //先点亮红灯
- while(1)
- {
- printf("OK\r\n");
- delay_ms(1000);
- }
- }
复制代码
所有资料51hei提供下载:
实验5 外部中断实验.rar
(122.13 KB, 下载次数: 17)
|