技师技能鉴定方案说明
一.鉴定内容:
本方案为技能考核内容。考核题目:交通信号灯的设计
二.技能考核鉴定方式:
(1)根据题目要求,在规定的时间内用Proteus 软件画出设计的电路图,编写工作源程序,下载程序、调试和运行程序,实现规定的功能,并将调试成功的软件下载到单片机试验箱实现功能。
(2)鉴定时间:2小时 (3)评分:100分
(4)技能鉴定考题及评分标准见相关课题。
三.技能考核鉴定考核任务书
题目:交通信号灯的设计 (一) 鉴定要求:
用AT89C51单片机设计交通信号灯,单片机外接11.0592 MHz晶体,采用T0中断控制,交通灯运行步骤如下:
①东西向绿灯与南北向红灯亮30s ;
②东西向绿灯与南北向红灯灭,东西向黄灯与南北向黄灯闪烁5次; ③东西向红灯与南北向绿灯亮30s ;
④东西向红灯与南北向绿灯灭,东西向黄灯与南北向黄灯闪烁5次。
①~④状态循环操作,用试验箱的开关量输入显示电路,东西向灯由左边的红绿黄灯表示,南北向灯由右边的红绿黄灯表示,同时用2位带BCD 译码的共阳极数码管倒计时显示当前的秒数。
P0作为输出口,控制6只LED 灯(红绿黄) 的点亮。P1作为输出口控制数码管。
(二) 鉴定硬件平台:
DVCC-MCU2试验箱。
图1为实验箱的开关量输入显示电路原理图,左边的红绿黄灯表示东西向灯,右边的红绿黄灯表示南北向灯。用P0口控制:
东西 南北
P0.7 P0.6 P0.5 | P0.4 P0.3 P0.2
红 绿 黄 | 红 绿 黄
图2为2位带译码的共阳极数码管原理图,数码管的段码是通过BCD 译码器送入的,用P1口给两位数码管送入BCD 码即可。
图1 开关量输入显示电路原理图
译码的共阳极数码管原理图
(三) 鉴定内容:
1. 在E 盘建一个文件夹,以自己名字命名; 2. 参数设置:
红绿黄灯点亮时间采用AT89C51内部定时器 T X 来定时, 定时 X ms ,在两位数码管上显示倒计时的时间,从“30”到“01 ”显示。设置其工作方式字TMOD 和初值TH0、TL0: T X 、 、 、
、
3.用软件Proteus ISIS 绘制仿真硬件电路图,包括AT89C51的复位电路、时钟电路、东西南北四个方向红绿黄灯电路、数码管显示电路,电路文件以自己名字的汉语拼音首字母命名。 4.运用Keil 集成开发环境在E 盘自己的文件夹下建立一个工程项目,项目名以自己名字的汉语拼音首字母命名,根据原理图,编写源程序,程序名与项目名一致,存入E 盘自己的文件夹下,编辑、编译源程序。
5.在Proteus ISIS软件环境中自己绘制的硬件电路上进行仿真调试。
6.在DVCC-MCU2实验箱中按设计的电路连接好,在仿真调试无误后将软件下载到实验箱的单片机中,进行联机调试,若联机运行有问题,进行查错。 7.在答卷纸上写出你编写的源程序。
( 四) 相关知识点:
1. 红绿黄灯采用对应颜色的LED 发光二极管,用P2口线控制LED 的正端,加高电平点亮,加低电平熄灭。灯点亮的时间由P1口控制的2位带BCD 译码的数码管来显示。 2.MCS-51中断系统
(1) MCS-51中断系统内部结构示意图
图4 MCS-51中断系统内部结构示意
(2) MCS-51有5个中断源,两个中断优先级。 五个中断源: 入口地址 外部中断0(/INT0) 0003H T0溢出中断 000BH 外部中断1(/INT1) 0013H T1溢出中断 001BH 串口中断 0023H
外部中断源、定时/计数器的中断请求标志位分布在 TCON 中。
TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
TF1—— T1的溢出中断标志。硬件置1,硬件清0(也可软件清0)。 TF0—— T0的溢出中断标志。(同TF1,只是针对T0的)
IE1 —— 外部中断1(/INT1)请求标志。 外部有中断请求时,硬件使IE1置1,硬件清0。
IE0 —— 外部中断0(/INT0)请求标志。
IT1 —— 外部中断1(/INT1)触发类型控制位。 IT1 = 0 ,低电平触发。 IT1 = 1 ,下降沿触发。 IT0 —— 外中断0(/INT0)触发类型控制位,用法同IT1。 (3)中断控制(两级管理) 1) 中断屏蔽
在中断源与CPU 之间有一级控制,类似开关,其中第一级为一个总开关,第二级为五个分开关,由IE 控制。
IE EA ES ET0 EX0
EA —— 总控制位
ES —— 串口控制位 若为“1”,允许(开关接通) ET1—— T1中断控制位 若为“0”,不允许(开关断开) EX1—— /INT1控制位 ET0—— T0中断控制位 EX0—— /INT0控制位 2) 中断优先级
CPU 同一时间只能响应一个中断请求。若同时来了两个或两个以上中断请求,就必须有先有后。为此将5个中断源分成高级、低级两个级别,高级优先,由IP 控制。
IP PS PT1 PX1 PT0 PX0 以上各位与IE 的低五位相对应,为“1”时为高级。初始化编程时,由软件确定。
同一级中的5个中断源的自然优先顺序是: /INT0中断 高
T0中断 厂家出厂时已固化好顺序 /INT1中断 ——事先约定 T1中断
串口中断 低
(五) 参考答案
1. 参数设置:
红绿黄灯点亮时间采用AT89C51内部定时器 T X 来定时, 定时 X ms ,在两位数码管上显示秒表的数值,秒表从“29”到“00 ”显示。设置其工作方式字TMOD 和初值TH0、TL0。
T X 、 、 、 、
2.用软件Proteus ISIS绘制仿真硬件电路图。
3. 编写的软件源程序: #include
#define uchar unsigned char #define uint unsigned int
sbit RED_A = P0^7; sbit GREEN_A = P0^6; sbit YELLOW_A = P0^5; sbit RED_B = P0^4; sbit GREEN_B = P0^3; sbit YELLOW_B = P0^2; sbit P01 = P0^1; sbit P00 = P0^0;
uint Time_Count =0; uchar Flash_Count =0; uchar a = 30;
uint a_Count =0; uchar Operation_Type =1;
void T0_INT () interrupt 1 { TH0 = -46080/256; TL0 = -46080%256; P1 = (a/10
switch (Operation_Type) { case 1:
RED_A = 0; YELLOW_A = 0; GREEN_A = 1; RED_B = 1; YELLOW_B = 0; GREEN_B = 0; if(++ a_Count %20 == 0) a--;
if(++ Time_Count != 600) return; Time_Count = 0; P1=0x00; a_Count = 0; a = 4;
Operation_Type = 2; break; case 2:
if(++ a_Count %20 == 0) a--; if (++ Time_Count != 8) return; Time_Count = 0;
YELLOW_A = ! YELLOW_A; YELLOW_B = ! YELLOW_B; GREEN_A = 0; RED_B = 0; if (++ Flash_Count != 10) return; Flash_Count = 0; P1=0x00; a_Count = 0; a = 30;
Operation_Type = 3; break ; case 3: RED_A = 1; YELLOW_A = 0; GREEN_A = 0; RED_B = 0; YELLOW_B = 0; GREEN_B = 1; if(++ a_Count %20 == 0) a--;
if(++ Time_Count != 600) return; Time_Count = 0; P1=0x00; a_Count = 0; a = 4; Operation_Type = 4; break; case 4: if(++ a_Count %20 == 0) a--; if (++ Time_Count != 8) return; Time_Count =0;
YELLOW_A = ! YELLOW_A; YELLOW_B = ! YELLOW_B; GREEN_B = 0; RED_A = 0; if (++ Flash_Count != 10) return; Flash_Count = 0; P1=0x00; a_Count = 0; a = 30; Operation_Type = 1; break ; } }
void main () { P00=0; P01=0;
TMOD = 0x01; TH0 = -46080/256; TL0 = -46080%256; EA=1 ; ET0=1; IT0=1;
EX0=1; TR0 = 1 ; while(1) ; }
评分表(单片机)
技师技能鉴定方案说明
一.鉴定内容:
本方案为技能考核内容。考核题目:交通信号灯的设计
二.技能考核鉴定方式:
(1)根据题目要求,在规定的时间内用Proteus 软件画出设计的电路图,编写工作源程序,下载程序、调试和运行程序,实现规定的功能,并将调试成功的软件下载到单片机试验箱实现功能。
(2)鉴定时间:2小时 (3)评分:100分
(4)技能鉴定考题及评分标准见相关课题。
三.技能考核鉴定考核任务书
题目:交通信号灯的设计 (一) 鉴定要求:
用AT89C51单片机设计交通信号灯,单片机外接11.0592 MHz晶体,采用T0中断控制,交通灯运行步骤如下:
①东西向绿灯与南北向红灯亮30s ;
②东西向绿灯与南北向红灯灭,东西向黄灯与南北向黄灯闪烁5次; ③东西向红灯与南北向绿灯亮30s ;
④东西向红灯与南北向绿灯灭,东西向黄灯与南北向黄灯闪烁5次。
①~④状态循环操作,用试验箱的开关量输入显示电路,东西向灯由左边的红绿黄灯表示,南北向灯由右边的红绿黄灯表示,同时用2位带BCD 译码的共阳极数码管倒计时显示当前的秒数。
P0作为输出口,控制6只LED 灯(红绿黄) 的点亮。P1作为输出口控制数码管。
(二) 鉴定硬件平台:
DVCC-MCU2试验箱。
图1为实验箱的开关量输入显示电路原理图,左边的红绿黄灯表示东西向灯,右边的红绿黄灯表示南北向灯。用P0口控制:
东西 南北
P0.7 P0.6 P0.5 | P0.4 P0.3 P0.2
红 绿 黄 | 红 绿 黄
图2为2位带译码的共阳极数码管原理图,数码管的段码是通过BCD 译码器送入的,用P1口给两位数码管送入BCD 码即可。
图1 开关量输入显示电路原理图
译码的共阳极数码管原理图
(三) 鉴定内容:
1. 在E 盘建一个文件夹,以自己名字命名; 2. 参数设置:
红绿黄灯点亮时间采用AT89C51内部定时器 T X 来定时, 定时 X ms ,在两位数码管上显示倒计时的时间,从“30”到“01 ”显示。设置其工作方式字TMOD 和初值TH0、TL0: T X 、 、 、
、
3.用软件Proteus ISIS 绘制仿真硬件电路图,包括AT89C51的复位电路、时钟电路、东西南北四个方向红绿黄灯电路、数码管显示电路,电路文件以自己名字的汉语拼音首字母命名。 4.运用Keil 集成开发环境在E 盘自己的文件夹下建立一个工程项目,项目名以自己名字的汉语拼音首字母命名,根据原理图,编写源程序,程序名与项目名一致,存入E 盘自己的文件夹下,编辑、编译源程序。
5.在Proteus ISIS软件环境中自己绘制的硬件电路上进行仿真调试。
6.在DVCC-MCU2实验箱中按设计的电路连接好,在仿真调试无误后将软件下载到实验箱的单片机中,进行联机调试,若联机运行有问题,进行查错。 7.在答卷纸上写出你编写的源程序。
( 四) 相关知识点:
1. 红绿黄灯采用对应颜色的LED 发光二极管,用P2口线控制LED 的正端,加高电平点亮,加低电平熄灭。灯点亮的时间由P1口控制的2位带BCD 译码的数码管来显示。 2.MCS-51中断系统
(1) MCS-51中断系统内部结构示意图
图4 MCS-51中断系统内部结构示意
(2) MCS-51有5个中断源,两个中断优先级。 五个中断源: 入口地址 外部中断0(/INT0) 0003H T0溢出中断 000BH 外部中断1(/INT1) 0013H T1溢出中断 001BH 串口中断 0023H
外部中断源、定时/计数器的中断请求标志位分布在 TCON 中。
TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
TF1—— T1的溢出中断标志。硬件置1,硬件清0(也可软件清0)。 TF0—— T0的溢出中断标志。(同TF1,只是针对T0的)
IE1 —— 外部中断1(/INT1)请求标志。 外部有中断请求时,硬件使IE1置1,硬件清0。
IE0 —— 外部中断0(/INT0)请求标志。
IT1 —— 外部中断1(/INT1)触发类型控制位。 IT1 = 0 ,低电平触发。 IT1 = 1 ,下降沿触发。 IT0 —— 外中断0(/INT0)触发类型控制位,用法同IT1。 (3)中断控制(两级管理) 1) 中断屏蔽
在中断源与CPU 之间有一级控制,类似开关,其中第一级为一个总开关,第二级为五个分开关,由IE 控制。
IE EA ES ET0 EX0
EA —— 总控制位
ES —— 串口控制位 若为“1”,允许(开关接通) ET1—— T1中断控制位 若为“0”,不允许(开关断开) EX1—— /INT1控制位 ET0—— T0中断控制位 EX0—— /INT0控制位 2) 中断优先级
CPU 同一时间只能响应一个中断请求。若同时来了两个或两个以上中断请求,就必须有先有后。为此将5个中断源分成高级、低级两个级别,高级优先,由IP 控制。
IP PS PT1 PX1 PT0 PX0 以上各位与IE 的低五位相对应,为“1”时为高级。初始化编程时,由软件确定。
同一级中的5个中断源的自然优先顺序是: /INT0中断 高
T0中断 厂家出厂时已固化好顺序 /INT1中断 ——事先约定 T1中断
串口中断 低
(五) 参考答案
1. 参数设置:
红绿黄灯点亮时间采用AT89C51内部定时器 T X 来定时, 定时 X ms ,在两位数码管上显示秒表的数值,秒表从“29”到“00 ”显示。设置其工作方式字TMOD 和初值TH0、TL0。
T X 、 、 、 、
2.用软件Proteus ISIS绘制仿真硬件电路图。
3. 编写的软件源程序: #include
#define uchar unsigned char #define uint unsigned int
sbit RED_A = P0^7; sbit GREEN_A = P0^6; sbit YELLOW_A = P0^5; sbit RED_B = P0^4; sbit GREEN_B = P0^3; sbit YELLOW_B = P0^2; sbit P01 = P0^1; sbit P00 = P0^0;
uint Time_Count =0; uchar Flash_Count =0; uchar a = 30;
uint a_Count =0; uchar Operation_Type =1;
void T0_INT () interrupt 1 { TH0 = -46080/256; TL0 = -46080%256; P1 = (a/10
switch (Operation_Type) { case 1:
RED_A = 0; YELLOW_A = 0; GREEN_A = 1; RED_B = 1; YELLOW_B = 0; GREEN_B = 0; if(++ a_Count %20 == 0) a--;
if(++ Time_Count != 600) return; Time_Count = 0; P1=0x00; a_Count = 0; a = 4;
Operation_Type = 2; break; case 2:
if(++ a_Count %20 == 0) a--; if (++ Time_Count != 8) return; Time_Count = 0;
YELLOW_A = ! YELLOW_A; YELLOW_B = ! YELLOW_B; GREEN_A = 0; RED_B = 0; if (++ Flash_Count != 10) return; Flash_Count = 0; P1=0x00; a_Count = 0; a = 30;
Operation_Type = 3; break ; case 3: RED_A = 1; YELLOW_A = 0; GREEN_A = 0; RED_B = 0; YELLOW_B = 0; GREEN_B = 1; if(++ a_Count %20 == 0) a--;
if(++ Time_Count != 600) return; Time_Count = 0; P1=0x00; a_Count = 0; a = 4; Operation_Type = 4; break; case 4: if(++ a_Count %20 == 0) a--; if (++ Time_Count != 8) return; Time_Count =0;
YELLOW_A = ! YELLOW_A; YELLOW_B = ! YELLOW_B; GREEN_B = 0; RED_A = 0; if (++ Flash_Count != 10) return; Flash_Count = 0; P1=0x00; a_Count = 0; a = 30; Operation_Type = 1; break ; } }
void main () { P00=0; P01=0;
TMOD = 0x01; TH0 = -46080/256; TL0 = -46080%256; EA=1 ; ET0=1; IT0=1;
EX0=1; TR0 = 1 ; while(1) ; }
评分表(单片机)