文档详情

单片机技术与应用电子教案 3.双键控制LED灯.doc

发布:2024-10-23约4.05千字共7页下载文档
文本预览下载声明

PAGE

PAGE1

课时教案

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

课题

双键控制LED

课时

8

教学

目标

知识:

1.掌握按键SW2的电路状态及相关寄存器的设置。

2.理解按键SW2的中断初始化函数的设计流程。

3.掌握按键SW2中断服务函数的设计思想。

技能:

1.会分析按键SW2的电路,并会设置相关寄存器。

2.会设计编写按键SW2的中断初始化函数及中断服务函数。

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

素质:

1.具备绿色生产、环境保护、安全防护、质量管理等相关知识与技能。

2.在任务实施过程中具备创新能力。

重点

1.按键SW2的电路状态分析及其相关寄存器的配置

2.按键SW2中断服务函数的设计

难点

双键控制LED灯的程序设计

教法

做中教做中学任务驱动式

学法

学练结合自主探究

教具

试验

多媒体、PPT课件

教学过程

问题设计及知识点

师生互动设计

(问题与任务)

双键控制LED

【任务描述】

基于ZigBee模块做基础开发,采用中断的方式开发按键功能,当按下SW1键时,LED1亮,LED2灭;按下SW2键时,LED1灭,LED2亮。

【任务分析】

1.知识分析

实现双键控制LED,必须熟悉每个按键及LED端口相关寄存器,并会设置相关端口寄存器。

2.设备分析

实训任务选择ZigBee实训模块如下图2-3-1所示,会识读此实训模块电路图,明确此模块上SW1、SW2、LED1灯电路及其与CC2530单片机端口关系,理解按键电路的工作原理。

3.技能分析

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

【知识储备】

一、SW2的电路状态及相关寄存器的设置

1.按键SW1和SW2电路

ZigBee模块两个按键的电路及其与CC2530的端口关系

2.电路分析

1)初始状态,按键SW2未按下,端口P1_6、INT(P0_1)通过电阻R7(上拉电阻)与电源相连,端口P1_6、INT(P0_1)端口为高电平,端口P1_6、INT(P0_1)的输入模式为上拉模式。

2)当按键按下时,端口P1_6、INT(P0_1)端口直接与地相连,端口P1_6、INT(P0_1)端口为低电平。

所以当端口P1_6、INT(P0_1)由1变0时(下降沿触发),表示按键按下,产生中断请求。

3.与按键SW2端口相关寄存器及其设置

1)端口寄存器:P1、P0。

2)功能寄存器:P1SEL、P0SEL。

3)方向寄存器:P1DIR、P0DIR。

4)配置寄存器P1INP、P0INP、P2INP。

二、SW2中断初始化函数的设计流程

1.开总中断,设置总中断为1,即EA=1;或IEN0|=0x80;

2.开中断源,P1INT或P0INT,IEN2|=0x10;或IEN1|=0x20;

3.设置P1IEN或P0IEN的P1_6或P0_1位中断使能位为1。

P1IEN|=0x40;或P0IEN|=0x02;

4.在PICTL寄存器中设置P1或P0为下降沿触发。

PICTL|=0x04;或PICTL|=0x01;

三、SW2中断服务函数的设计流程

按键SW2的端口中断位有两个,P1_6和P0_1,其中断服务函数与按键SW1的中断服务函数设计流程一样。其基本格式如下:

#pragmavector=中断向量

__interruptvoid函数名称(void)

{

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

}

1)如果使用P1_6作为按键SW2外部中断位,则:

#pragmavector=P1INT_VECTOR

__interruptvoidP1_ISR(void)

{

if(P1IFG0x40)//判断P1_6端口是否产生中断

{

……

}

P1IF=0x00;

P1IFG=~0x40;

}

2)如果使用P0_1作为按键SW2外部中断位,则:

#pragmavector=P0INT_VECTOR

__interruptvoidP0_ISR(void)

{

if(P0IFG0x02)//判断P0_1端口是否产生中断

{……}

P0IF=0x00;

P0IFG=~0x02;

}

【任务指导】

1.搭建开发环境

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

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

3

显示全部
相似文档