好文档 - 专业文书写作范文服务资料分享网站

项目单片机应用技能实训C语言教案 - 图文

天下 分享 时间: 加入收藏 我要投稿 点赞

单片机应用技能实训(C语言)教案—项目2

项目2 广告灯电路制作

任务1 MCS-51单片机I/O端口及C语言相关指令 一、案头 任务 MCS-51单片机并行接口及C语言相关指令 授课时间 年 月 日 授课班级 教学形式 讲授 授课时数 2课时 教学用具 多媒体 教学资源 课件、单片机应用制作成品 课前准备 教学目标 1、了解MCS-51单片机并行接口的结构。 2、掌握MCS-51单片机并行接口的使用方法。 3、掌握项目相关C语言指令的作用及使用方法。 教学重点 1、MCS-51单片机并行接口的使用方法。 2、项目相关C语言指令的作用及使用方法。 教学难点 1、MCS-51单片机并行接口结构原理。 2、项目相关C语言指令的灵活使用。 教学过程 1、通过生活中实际情境的介绍,引出项目任务。 2、MCS-51单片机P0口结构原理,重点学习P0口的使用方法。 3、P1~P3口结构原理及使用方法。 4、项目相关C语言指令的作用及使用方法。 教学后记 二、教学实施过程 实施环节 教学内容 导学方法 组织教学 1、检查学生出勤情况并做好记录。 互动交流 2、调整学生的注意力,为上课作准备。 复习提问 1、MCS-51单片机由哪几部分组成? 提问导思 2、MCS-51单片机有多少个I/O口引脚? 导入 夜晚的商业街上,各种各样的广告彩灯光彩夺目,变启发学习幻无穷,非常好看。那么功能强大的单片机是否能完成积极性 广告彩灯的控制任务呢?本项目的任务就是制作一个用单片机控制的广告灯电路。为完成项目制作,先进行相关基本知识的学习。 讲授新课 一、MCS-51单片机并行接口 使用多媒1、P0口的结构和工作原理 体展示图P0口每一位的结构如图2-2所示,它由一个输出锁存2-2。 器,上下两个三态缓冲器,一个输出驱动电路和一个输参照图出控制电路组成。 图2-2 P0口的结构 从P0口输出数据的方法有两种,一种是执行以P0口为目的操作数的数据传送指令来实现,另一种是执行以P0口位为目的操作数的位操作指令来实现。分别举例如下: P0=0x66; //将立即数66H送到P0口 P0_0=0; //将P0.0清0。 P0口的主要功能如下: (1)作为通用I/O端口输出数据。使用时注意外接上拉电阻。该功能在前面已介绍过。 (2)作为通用I/O端口输入数据。在输入数据时,要先向锁存器写“1”。 (3)扩展外部设备时,作为低8位地址线和8位数据线分时复用。 2、P1口的结构和工作原理 P1口每一位的结构如图2-13所示。由P1口的结构图可以得知P1口的主要功能是: (1)作为通用I/O端口输出数据。由于P1口已有内部上拉电阻,输出数据时不必外接上拉电阻。 (2)作为通用I/O端口输入数据。在输入数据时,要先向锁存器写“1”。 图2-13 图2-14 3、P2口的结构和工作原理 P2口的位结构如图2-14所示,P2口的主要功能是: (1)作为通用I/O端口输出数据。输出数据时可以不外接上拉电阻。 (2)作为通用I/O端口输入数据。在输入数据时,要先向锁存器写“1”。 (3)系统扩展外部设备时,作为高8位地址总路线使用。 4、P3口的结构和工作原理 图2-15 P3口的位结构如图2-15所示,P3口的主要功能如下: 2-2介绍其工作原理。 说明为什么接上拉电阻,输入数据为什么是先写1。 使用多媒体展示图2-13,重点介绍使用方法。 同上 同上 相关指令作为重点进行讲授,除教案中的举例之外,还要再通过更多的例子让学生练习以达到理解和灵活运用指令编写程序的目的。 对while语句也要根据学生的理解情况进行相适应的举例说明。 (1)作为通用I/O接口输出数据,输出数据时可以不外接上拉电阻。 (2)作为通用I/O接口输入数据。同样,在输入数据时,要先向锁存器写“1”。 (3)每位都有专有的第二功能(替代的输入或输出)。 二、项目相关C语言指令 下面我们进行C语言相关知识的介绍,以便顺利地编写项目应用程序。 1、Keil C的预处理命令 预处理命令是指先经过预处理处理器处理过后,才进行编译的命令。通常,预处理命令放在整个程序的开头。 (1)文件包含命令 #include是一个文件包含命令,其功能是将一些必要的头文件加入到程序体中。例如: #include //将头文件reg51.h加入到程序体中。 (2)宏定义命令 #define是一个宏定义命令,它常用来指定常数、字符串或者宏函数的代用标识符。其指令格式如下。 #define 代名词 常数(字符串或者宏函数) 例如: #define outputs P0 //定义使用outputs代替P0。 定义后,当程序中用P0口输出时,如P0=0xFF就可以用outputs=0xFF代替。 2、Keil C的循环指令 当我们需要将程序流程控制在某个指定的循环里面时,就会用到循环指令,直到符合指定的结束条件才会结束循环。Keil C提供了for语句、while语句、do-while语句几种循环指令。 (1)计数循环 for语句是一个计数循环语句,其格式如下。 for(表达式1;表达式2;表达式3) { 语句; … } 其中表达式1是循环的初始值,表达式2是判断的条件,表达式3是循环变量增值,其中\为分隔符,不能被省略。举例说明一下。 for(int i=0;i<8;i++) { … } 该语句先给i置0,大括号中的语句循环执行8次后,i不小于8,循环结束。当循环语句中的条件判断部分缺省时,无论另外两个表达式怎样,这个for循环语句成为死循环。 若该循环只需要执行一条指令时,可省略大括号。例如: for(int i=0;i<8;i++) P0=i; // P0=i循环执行8次。 若循环未达到跳出条件而需要强制跳出时,可在循环内加入其他条件和break指令。例如: for(int i=0;i<8;i++) { … if(sw==0)break; //当sw=0时,跳出循环体。 … } (2)前条件循环 while语句将判断条件放在语句开始,称为前条件循环,其特点是先判断再执行。使用格式如下: while(表达式) { 语句; … } 其中表达式是循环语句的判断条件,当条件满足时,循环执行大括号中的语句;当条件不满足时,循环结束。当表达式条件始终满足时,该语句成为无限循环。 与for循环语句一样,若大括号内只有一条指令,则可以省略大括号。若循环未达到跳出条件而需要强制跳出时,可在循环内加入其他条件和break指令。 (3)后条件循环 do while语句将判断条件放在后面,称为后条件循环,其特点是先执行再判断。格式如下: do { 语句; … } while(表达式); 在这个循环语句里,会先执行一次循环后,再判断表达式条件是否成立,若成立则继续执行循环体语句,若不成立则跳出该循环语句。 三、指令周期与延时估算 1、几个概念 (1)时钟周期:单片机时钟振荡电路的振荡周期。 (2)机器周期:单片机执行一种基本操作所用的时间,1个机器周期等于12个振荡周期。 (3)指令周期:单片机执行一条指令所用的机器周期数。 设单片机系统晶振频率fsoc=6MHz,则机器周期为: 11机器周期=?12=?12=2?s fsoc6?1062、延时程序的延时时间粗略计算 根据for语句和while语句的特点,我们可以利用它们编写简单的延时程序,来满足粗略的延时要求。以6MHZ晶振为例。 (1)利用for语句进行简单延时。 Void delay(int x) { int i,j; for(i=0;i

项目单片机应用技能实训C语言教案 - 图文

单片机应用技能实训(C语言)教案—项目2项目2广告灯电路制作任务1MCS-51单片机I/O端口及C语言相关指令一、案头任务MCS-51单片机并行接口及C语言相关指令授课时间年月日授课班级教学形式讲授授课时数2课时教学用具多媒体教学资源课件、单片机应用制作成品课前准备教学目标1、了解MCS-51单片机并行接
推荐度:
点击下载文档文档为doc格式
5g2zs3g7pz3pit886asl2xn8u9whcj0045r
领取福利

微信扫码领取福利

微信扫码分享