项目6单片机应用技能实训C语言教案.docx
- 文档编号:1340972
- 上传时间:2022-10-21
- 格式:DOCX
- 页数:28
- 大小:133.19KB
项目6单片机应用技能实训C语言教案.docx
《项目6单片机应用技能实训C语言教案.docx》由会员分享,可在线阅读,更多相关《项目6单片机应用技能实训C语言教案.docx(28页珍藏版)》请在冰豆网上搜索。
项目6单片机应用技能实训C语言教案
单片机应用技能实训(C语言)教案—项目6
项目6数字时钟电路制作
任务1项目相关知识学习
一、案头
任务
项目相关知识学习
授课时间
年月日
授课班级
教学形式
讲授、讨论
授课时数
2课时
教学用具
教学资源
项目制作成品、课件
课前准备
教学目标
1、了解并行通信与串行通信。
2、理解串行口结构,工作方式。
3、掌握串行口工作方式0的应用。
4、了解LED数码管结构及显示方式。
教学重点
1、串行口控制寄存器的作用与用法。
2、串行口工作方式0的应用。
教学难点
1、对串行口发送启动和接收启动的理解。
教学过程
1、通过对生活中数字时钟的讨论,引出项目任务。
2、LED数码管结构及显示方式。
3、并行通信与串行通信。
4、MCS-51单片机串行口的结构。
5、用于串行口的专用寄存器介绍。
6、串行口工作方式0的应用。
教学后记
二、教学实施过程
实施环节
教学内容
导学方法
组织教学
1、检查学生出勤情况并做好记录。
2、调整学生的注意力,为上课作准备。
互动交流
复习提问
1、MCS-51定时器有哪几种工作方式?
2、如何用定时器来完成数字时钟的定时?
本项目的终极目标是制作一个单片机控制的LED数码管静态显示数字时钟电路。
提问导思
导入
在项目5中学习了单片机的定时器,本项目要用定时器定时,用数码管显示时间,至少要用4个数码管,每个数码管占用8位,4个LED数码管占用4个I/O端口。
所以,在本项目中要扩展用于显示电路的输出端口。
下面,我们在进行项目制作之前,学习LED数码管结构原理以及MCS-51单片机的串行口。
启发学习积极性
讲授新课
一、LED数码管结构及工作原理
1、LED数码管结构
通常使用的是七段LED显示器,这种显示器由8个发光二极管构成,有共阴极和共阳极两种,如图6-3所示。
图6-3数码管结构
2.LED数码管工作原理
共阴极LED数码管的8个发光二极管的阴极连在一起,接公共端COM。
使用时公共端接地,当发光二极管的阳极为高电平时,发光二极管点亮。
共阳数码管则与之相反。
从管脚a~g及dp输入不同的8位二进制数,可显示不同的数字或字符,把控制数码管显示不同字符的8位二进制数称为段码。
例如:
对于共阳极数码管,若要显示0,其段码为C0H。
二、LED数码管的显示方法
数码管的显示方式有静态显示和动态显示两种。
1、静态显示
静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。
这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或接正电源(共阳极)。
每个数码管的8个字段分别与一个8位I/O口相连。
2、动态显示
动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。
通常,各位数码管的相应段选线并联在一起,由一个8位的I/O口控制;各位数码管的位选线(公共阴极或阳极)由另外的I/O口线控制。
三、MCS-51单片机串行接口
1、并行通信和串行通信
并行通信是指将组成数据字节的各位同时发送或接收,不宜用于远距离通信。
串行通信是组成数据的字节中的各位按顺序逐一传送的方式,最少只需3根传输线即可,如图8-2所示。
串行通信适用于远距离通信,但通信的传送速度较低。
图6-4串行通信
2、MCS-51单片机串行接口
MCS-51单片机的串行接口由串行口缓冲寄存器SBUF、串行口控制寄存器SCON和电源控制寄存器PCON构成,通过引脚TXD(P3.1)、RXD(P3.0)来完成串行数据的发送和接收与外界进行串行通信。
(1)串行口缓冲寄存器SBUF
SBUF是按字节寻址的专用寄存器,它用来存放将要发送或接收到的数据。
在物理上有两个独立的SBUF寄存器,一个用于发送,一个用来接收。
(2)串行口控制寄存器SCON
SCON是一个可以位寻址专用寄存器,它用于串行口的方式选择、发送、接收控制及保存串行口的状态信息等。
SCON中各位的名称如表6-2所示。
SCON位
D7
D6
D5
D4
D3
D2
D1
D0
位名称
SM0
SM1
SM2
REN
TB8
RB8
TI
RI
SCON中各位的定义如下:
SM0、SM1:
串行口工作方式选择位。
4种不同取值对应4种工作方式如表6-3所示。
SM2:
在方式2、3中用作多机通信控制位。
REN:
允许接收控制位。
REN=0时禁止接收,REN=1时允许接收。
TB8:
发送数据的第九位。
RB8:
接收数据的第九位。
TI:
发送中断请求标志位。
RI:
接收中断请求标志位。
(3)电源控制寄存器PCON
PCON对串行口的影响是通过其SMOD位改变串行口的波特率。
SMOD位位于PCON的最高位,即PCON.7,当SMOD=1时串行口的波特率是SMOD=0时的两倍(方式0除外)。
PCON在单片机复位时,SMOD=0。
二、MCS-51单片机串行口工作方式0的应用
1、串行口方式0的发送与接收
串行口工作方式0是8位同步移位寄存器方式。
串行数据由RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。
方式0主要用于I/O端口的扩展。
(1)方式0的发送
方式0的发送操作是在TI=0的情况下,执行以SBUF为目的字节的数据传送指令开始的。
例如:
SBUF=a;
8位数据发送完成后,由硬件将TI置1,向CPU请求中断。
若中断不开放,TI可作为发送完成的查询标志位。
TI=1后,必须用软件将其清0,以便再次发送数据。
(2)方式0的接收
方式0的接收操作是在RI=0的条件下,由REN置1指令来启动接收。
收到8位数据后,由硬件将RI置1,向CPU请求中断。
若中断不开放,RI可作为接收完成的查询标志位。
RI=1后,必须用软件将其清0,以便再次接收数据。
2、方式0应用举例
例1:
使用串入并出芯片74LS164与单片机相连,使用串行口方式0扩展8位并行输出,接线示意图如图6-5所示。
8位并行输出接8个发光二极管,要求控制8个发光二极管反复亮灭。
程序设计如下(采用查询方式):
图6-5方式0扩展并行输出
#include
#defineucharunsignedchar
voiddelay_ms(ucharxms);//定义延时函数
/*******以下是主函数****************/
voidmain()
{
uchara=0xff;
SCON=0;//置串行口方式0,相关标志位、控制位清0。
while
(1)
{
SBUF=a;//启动串行发送
while(!
TI);//等待串行发送完成
TI=0;//TI清0,准备再次发送数据
a=~a;
delay_ms(200);
}
}
用多媒体展示图6-3。
提问学生其他数字的段码。
介绍连接方法并说明静态显示的优缺点。
介绍连接方法并说明动态显示的优缺点。
重点说明SCON的使用。
对方式0的发送与接收详细说明。
用多媒体展示课件图6-5
简单介绍集成电路芯片74LS164工作特点。
对应用程序进行介绍,延时程序由学生进行编写。
课堂小结
1、LED数码管结构原理及显示方式。
2、并行通信、串行通信的概念。
3、MCS-51单片机串行口结构及SCON各位作用。
4、串行口方式0应用举例。
课后作业
自我测评1题、2题、3题、4题。
任务2数字时钟电路硬件、软件设计
一、案头
任务
数字时钟电路硬件、软件设计
授课时间
年月日
授课班级
教学形式
讲授、讨论
授课时数
2课时
教学用具
教学资源
课件、单片机应用制作成品
课前准备
教学目标
1、掌握串行口工作方式0的应用。
2、掌握数字时钟电路的整体构成。
3、掌握C语言数值计算的方法。
4、理解应用程序的编程思路。
教学重点
1、串行口工作方式0的应用。
2、应用程序的编程思路及相关指令使用。
教学难点
1、应用程序的编写思路及相关程序。
教学过程
1、复习提问串行口方式0的主要应用。
2、介绍项目任务要求。
3、根据项目任务要求引导设计硬件电路。
4、C语言数值计算方法。
4、应用程序流程图绘制。
5、应用程序设计。
教学后记
二、教学实施过程
实施环节
教学内容
导学方法
组织教学
1、检查学生出勤情况并做好记录。
2、调整学生的注意力,为上课作准备。
互动交流
复习提问
1、串行口控制寄存器SCON各位的作用?
2、如何用方式0扩展并行输出?
提问导思
导入
在学习了串行口结构及方式0应用后,我们应用串行口方式0扩展4个并行输出口来输出显示时间,项目要求如下:
(1)用4个LED数码管采用静态显示,分别显示时和分,用一个发光二极管表示秒。
(2)用两个按键,一个用来调小时,一个用来调分钟。
启发学习积极性
讲授新课
一、数字时钟电路设计
1、数字时钟电路构成方案设计
根据项目要求,本项目硬件由按键电路(调时)、单片机最小应用系统、扩展输出电路和数码管显示电路构成。
关键是扩展输出电路构成。
扩展输出用芯片74HC595来完成。
2、电路设计
根据电路构成方案设计,对各组成部分进行设计。
关键是扩展输出及显示电路的设计。
硬件电路原理图如图6-7所示。
图6-7数字时钟电路原理
2、元件选择
(1)复习晶振电路元件及复位电路元件的选择。
(2)复习发光二极管电路元件选择。
(3)数码管的选择。
二、应用程序编写
1、C语言数值计算的方法。
(1)算术运算
算术运算常用的有:
+、-、*、/、%五种。
“/”是除法运算,即两个整数相除,商仍为整数,舍去小数部分(余数)。
“%”为取模运算(取余运算),参与运算的两个整数,结果为两个数相除之后的余数。
例如:
unsignedinta,b,c,d;
a=12;b=8;
c=a/b;//结果是c=1。
d=a%b;//结果是d=4。
(2)复合运算
C语言中的复合运算符使得语句的书写更加简洁,符号左则的变量既是源操作数又是目的操作数。
例如:
unsignedchara=0x01,b=0x02,c=0x03,d=0x04;
a/=b;//a=a/b=0
b+=0x01;//b=b+1=0x03
c|=0x80;//c=c|0x80=0x83
d<<=1;//d=d<<1=0x08
2、应用程序流程图绘制
根据项目要求,分别绘制主程序和中断服务程序流程图如图6-8所示。
图6-8程序流程图
3、程序设计
根据流程图编写程序,参考程序如下:
#include
#defineucharunsignedchar
#defineuintunsignedint
ucharhour=12,min=0,sec=0;//定义小时、分钟、和秒变量
ucharcont_1s;//定义1S定时次数变量
sbitS1=P1^0;//定义S1键
sbitS2=P1^1;//定义S2键
sbitxskzw=P2^1;//定义显示控制位
sbitled=P2^0;
uchardisp_buf[4];//定义显示缓冲单元
ucharcodetab[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,
0xf8,0x80,0x9
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 项目 单片机 应用 技能 语言 教案