《AlientekSTM32开发板》外部中断实验--整理后
[复制链接]
1.注意我们的教材讲解是基于寄存器操作,方便初学者理解透彻,
2.我们另外还提供了该实例的库函数源码, 下载链接:https://bbs.eeworld.com.cn/icview-210815-1-1.html
3.此实验的教程在《Alientek STM32不完全手册》的 3.1节:
下载地址:《Alientek STM32不完全手册》
4.源码:
R的对应位写1清除中断线上的中断请求。
我们将exti.c文件保存,然后加入到HARDWARE组下。在exti.h文件里面,我们输入如下代码:
#ifndef __EXTI_H
#define __EXIT_H
void EXTIX_Init(void);//IO初始化
#endif
这部分代码就很简单了,我们这里不多废话,保存就可以了。接着我们在test.c里面写入如下内容:
#include <stm32f10x_lib.h>
#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "led.h"
#include "key.h"
#include "exti.h"
//Mini STM32开发板范例代码4
//外部中断实验
//正点原子@ALIENTEK
//2010.5.27
int main(void)
{
Stm32_Clock_Init(9); //系统时钟设置
delay_init(72);
//延时初始化
uart_init(72,9600);
//串口初始化
LED_Init();
//初始化与LED连接的硬件接口
EXTIX_Init();
//外部中断初始化
while(1)
{
printf("OK\n");
delay_ms(1000);
}
}
该部分代码很简单,在初始化完中断后,就进入死循环等待了,这里死循环里面通过一个printf函数来告诉我们系统正在运行。其他在在这里不再多说。
3.4.4 下载与测试
在编译成功之后,我们就可以下载代码到MiniSTM32开发板上,实际验证一下,我们的程序是否正确。下载代码后,可以通过按下KEY0、KEY1、KEY2来观看DS0、DS1是否跟着按键的变化而变化。
店铺:http://shop62057469.taobao.com/
QQ讨论群:95288038(验证:21ic)
QQ:389063473/ 497610476
|