文档详情

单片机技术与应用电子教案 2.外部中断控制LED亮灭.doc

发布:2024-10-26约3.94千字共5页下载文档
文本预览下载声明

PAGE

PAGE1

课时教案

课程:单片机技术与应用-基于CC2530的ZigBee技术开发与应用

课题

外部中断控制LED亮灭

课时

4

教学

目标

知识:

1.掌握CC2530中断处理流程

2.掌握中断服务函数的格式

3.掌握外部中断控制LED亮灭的设计流程

技能:

1.会设计编写程序

2.会应用IAR软件编写、编译、链接、下载、调试程序,能够将CCDebugger仿真下载器的下载线连接到ZigBee实训模块与电脑,进行仿真演示。

素质:

1.程序设计过程中,具备严谨求实、认真负责的学习态度。

2.学习中具备守纪律、讲规矩、明底线、知敬畏的道德意识。

重点

1.中断服务函数的格式

2.外部中断控制LED亮灭的设计流程

难点

外部中断控制LED亮灭的程序设计

教法

做中教做中学任务驱动式

学法

学练结合自主探究

教具

试验

多媒体、PPT课件

教学过程

问题设计及知识点

师生互动设计

(问题与任务)

外部中断控制LED亮灭

【任务描述】

基于ZigBee实训模块做基础开发,采用中断的方式开发按键功能,每次按下SW1键,LED1亮灭状态反转。

【任务分析】

1.知识分析

实现按键控制LED,必须理解CC2530单片机中断处理过程,从而理解其中断服务函数的格式及含义,掌握外部中断程序设计流程。

2.设备分析

实训任务选择ZigBee实训模块,能够依据实训模块电路图,明确按键、灯与CC2530单片机端口的关系。

3.技能分析

实现按键控制LED亮灭,必须会运用IAR软件进行编程,并能够编译、链接、调试程序;会利用CCDebugger仿真下载器,将仿真器的下载线连接到ZigBee实训模块与电脑,进行仿真演示。

【知识储备】

一、中断的概念及作用

二、中断系统的相关概念

三、CC2530中断源

四、中断相关寄存器

五、中断使能步骤

六、CC2530中断处理

在中断源使能的条件下,当中断发生时,CPU就指向中断向量地址,进入中断服务函数。在“iocc2530.h”头文件中有中断向量的定义,如下所示:

1)#defineRFERR_VECTORVECT(0,0x03)/*RFTXFIFOUnderflowandRXFIFOOverflow*/

2)#defineADC_VECTORVECT(1,0x0B)/*ADCEndofConversion*/

3)#defineURX0_VECTORVECT(2,0x13)/*USART0RXComplete*/

4)#defineURX1_VECTORVECT(3,0x1B)/*USART1RXComplete*/

5)#defineENC_VECTORVECT(4,0x23)/*AESEncryption

/DecryptionComplete*/

6)#defineST_VECTORVECT(5,0x2B)/*SleepTimerCompare*/

……//共有18个中断源

二、CC2530中断服务函数

中断服务函数与一般自定义函数不同,有特定的书写格式:

#pragmavector=中断向量

__interruptvoid函数名称(void)

{

/*在这里编写中断处理函数的具体程序*/

}

说明:

在每一中断服务函数之前,都要加一句起始语句:

#pragmavector=中断向量

其中中断向量表示接下来要写的中断服函数是为哪个中断源服务的。

例如:要在P1端口引入外部中断,可以写为:

#pragmavector=0x7B或者#pragmavector=P1INT_VECTOR

0x7B是中断向量的入口地址,P1INT_VECTOR是头文件“iocc2530.h”中的宏定义。

__interrupt关键字表示该函数是一个中断服务函数,函数名称可以自定义,函数体不能带有参数,也不能有返回值。

由于不管中断源有没有被使能,硬件都会自动把该中断源对应的中断标志位设置为1,所以在执行中断服务函数结束后,需要把中断使能标志位清零。

【任务指导】

1.搭建开发环境

1)新建工作区,工作区名为:work2_1。

2)新建工程,工程名为:project2_1。

3)新建源程序文件,命名为test2_1.c。

4)将test2_1.c文件添加到project2_1工程中。

5)按键CTRL+S保存工作区。

6)配置工程选项,“Project”-“Options”-“GeneralOptions”,“Device”-“TexasInstruments”-“CC2530F256”。

7)配置lin

显示全部
相似文档