实训任务二:控制LED灯点亮
实训准备:KeilC51软件, proteus仿真软件,STP-ISC下载软件,单片机实验板,电源线、下载线
分组情况:每4人为一组,组长一名。小老师两名协助老师指导操作过程。知识目标:1.了解单片机各引脚功能;
2.理解单片机最小系统组成部分;
3.掌握C51赋值语句用法;
4.掌握C51语言编程、编译基本方法;
5.掌握proteus仿真软件基本操作方法;
6.掌握C51程序编写、编译、仿真调试、下载流程及方法。
能力目标:1.培养学生数字逻辑分析能力;
2.培养学生分析问题及解决问题的能力;
情感目标:1.培养学生团队合作的精神;
2.培养学生的创新意识;
教学重点:1.C51赋值语句用法;
2.C51语言编程、编译基本方法
教学难点:1.半英文操作界面的理解
2.调试程序的方法
课时:8课时
讲授新课1.单片机引脚功能(40引脚)
电源、接地、I/O端口、控制引脚、时钟引脚、
复位引脚
2.单片机最小系统
组成部分:单片机、电源、接地、复位电路、
时钟电路。
解释时钟电路,比喻为学校的铃声。
区分:单片机系统与最小系统
3.C51语言基本格式
#include
void main( )
{
P2=0XF0;
}
宏定义,头文件,主函数,分号结束
重点:赋值语句(A=B)
4.硬件电路分析
共阳极,低电平亮
观察单片机实物,
区分各引脚功能。
查
相关电路
了
求
小组回答,
习任务
实训任务三:控制LED流水灯
实训准备:KeilC51软件, proteus仿真软件,STC-ISP下载软件,
单片机实验板,电源线、下载线
分组情况:每3-4人为一组,组长一名。小老师两名协助老师指导操作过程。知识目标:1.理解C51语言数据类型;
2.了解单片机的机器周期;
3.理解数组概念及用法;
4.掌握for循环语句的用法;
5.掌握while循环语句的简单用法;
6.掌握C51程序编写、编译、仿真调试、下载流程及方法。
能力目标:1.培养学生思维逻辑分析能力;
2.培养学生分析问题及解决问题的能力;
情感目标:1.培养学生团队合作的精神;
2.培养学生的创新意识;
教学重点:1.for循环语句的用法;
2.数组的概念及用法;
3.C51语言数据类型;
教学难点:1.for循环语句的用法;
2.数组的概念及用法;
课时:4课时
子任务一:控制LED灯闪烁(2课时)
讲授新课一、控制P2口8位LED灯实现闪烁
1.电路原理图分析:
2.分析P2口每位的状态值;
3.写出对应的十六进制,以0X开头;
4.赋值语句:
P2=0X00; 灯亮
P2=0XFF; 灯灭
5.编程实现闪烁功能
#include
void main( )
{
P2=0X00;
P2=0XFF;
}
6.分析出现问题的原因
单片机执行程序的速度在微秒级,人眼无法识别LED
灯亮灭变化,由此引入延时概念,需要循环语句来实
现此功能。
P2=0X00;
延时,等待
P2=0XFF;
延时,等待
7.引入循环语句
(1)for语句
●格式:
for(初始化表达式;条件表达式;增量表达式)
{
语句;
}
●执行过程:
1.初始化表达式
学
出
态值
学
作
程
档,编写仿真
程序,观察仿
真效果。
出现问题
察
效果,让学生
分析原因?
了
式要求
实例分析
for( i=0; i<3; i++) {
P2=0XFE;
11.无限循环(While(1))
while 语句
●格式:
while(条件表达式)
循环体;
●执行过程:
先判定循环条件的真假,
条件为真,则执行循环体
条件为假,则跳出循环体,执行后续程序●实例分析
i=0;
while(i<3)
{
P2=0XFE;
i++;
}
1.赋初值:i=0;
2.判断是否满足条件(i<3)
(0<3)为真,成立。
3.执行语句:P2=0XFE;
i++;
i=0+1=1;
4.判断是否满足条件(i<3)
(1<3)为真,成立。
5.执行语句:P2=0XFE ;
i++;
i=1+1=2;
6.判断是否满足条件(i<3)小组讨论,复述
流程
小组讨论
分
行过程?
赋
行次数?
循
变
系?
总结:指定循环
置方法。
讲授新课(2)分号的用法
分号用做一条语句的结束标志,语句必须与分号“;”
结尾。
(3)中英文输入法。
程序必须用英文输入法,程序中不能出现中文字符。
中文输入法主要用来对程序进行注释,提高程序的可
读性。(多行注释,单行注释)
(4)层次性:结构清晰,提高可读性。
2.子函数
C语言程序是由函数组成的,由一个主函数和若干个其
他函数构成。
子函数定义的一般形式如下:
类型说明符函数名()
{
数据说明部分;
语句执行部分;
}
以延时函数为例讲解,各部分讲解
void delay( )
{
unsigned int i;
for(i=0;i<40000;i++)
;
}
强调子函数要在主函数main( )之前定义。
作用:减少重复书写具有相同功能的语句。
3.通过单灯闪烁,编程实现LED灯流水功能。
◆电路原理分析
由上到下,即由低位到高位。(P2.0,P2.1-----P2.7)
◆分析P2口每位的状态值
学生在软件界
面操作,观察
注释后字体变
化。
了解子函数基
本格式要求,
对延时函数功
能
解。
小组讨论实现
方
1-2
◆P2口赋值
0XFE—0XFD—0XFB—0XF7—0XEF—0XDF—0XBF—0X7F ◆功能实现
While(1)
{
赋值;
延时;
}
◆编程调试
◆仿真下载
4.学生完成本次任务后,将while(1)去掉,观察仿真的效果。
现象:只流水一次停止。
讲解:无限循环(While(1))
while 语句
1.格式:
while(条件表达式)
循环体;
2.执行过程:
先判定循环条件的真假,
条件为真,则执行循环体
条件为假,则跳出循环体,执行后续程序
3.实例分析
i=0;
while(i<3)
{
P2=0XFE;
i++;
}
当条件表达式为常量“1”时,实现无限循环。
While(1)
{ 决方案。
掌握赋值的规律。
学生分组上机编程操作,小组
助。
观
象。让学生直观理解语句的作用,然后在具体讲解语句功能。
实训任务四:控制LED流水灯(三)
实训准备:Keil C51软件, proteus仿真软件,STC-ISP下载软件,
单片机实验板,电源线,下载线。
分组情况:每3-4人为一组,组长一名。小老师两名协助老师指导操作过程。
子任务三:数组方式控制LED灯流水(4课时)
实训任务五:控制LED数码管显示数字
实训准备:Keil C51软件, proteus仿真软件,STC-ISP下载软件,
单片机实验板,电源线,下载线。
分组情况:每3-4人为一组,组长一名。小老师两名协助老师指导操作过程。
子任务三:控制单个数码管显示数字(4课时)