内容正文:
任务3 显示模块设计与制作
单片机技术与应用
项目二 智能车间生产线计数系统设计与制作
任务3 显示模块设计与制作
三诺生物传感有限公司
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
【基础任务要求】利用红外光电传感器检测产品进行计数,当计数值达到3时报警,显示产品数,并且每1秒钟信号灯闪烁一次(用中断方式实现)。
任务3 显示模块设计与制作
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
任务实现四步骤
绘制控制电路图
搭接硬件电路
硬件设计
调试控制电路
调试控制程序
软硬件调试
仿真运行
实物运行
功能实现
绘制流程图
编程实现功能:数码管静态和动态显示产品数
软件设计
01
02
03
04
重点、难点
难点
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
STC89C52
单片机
时钟电路
复位电路
电源电路
指示灯电路
系统框图
任务3 显示模块设计与制作
蜂鸣器电路
红外光电传感器
电路
显示电路
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
任务3 显示模块设计与制作
红外光电
传感器
时钟电路
复位电路
指示灯电路
蜂鸣器电路
显示电路
按键电路
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
任务名:显示模块设计与制作
元件名称 图片 型号 数量 Proteus中的名称
单片机芯片 AT89C51 1 用AT89C51代替STC89C52
晶振 12MHZ 1 CRYSTAL
电容 22pF 2 CAP
电解电容 22μf/16V 1 CAP-ELEC
电阻 0.1KΩ 1 RES
电阻 470Ω 1 RES
电阻 10KΩ 1 RES
发光二极管 1 LED-RED
红外光电传感器 1 用按钮button代替
三极管 1 PNP
蜂鸣器 1 BUZZER
数码管 共阳极数码管 1 7SEG-COM-AN-BLUE
共阴极数码管 1 7SEG-COM-CAT-BLUE
元器件选型
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
硬件电路图
任务3 显示模块设计与制作
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
硬件设计-绘电路
细致
规范
严谨
小锦囊
电路绘制规范:
用统一规定的元件符号
尽量避免导线的交叉
导线要求横平竖直
设置元器件参数
元件放在编辑区内
元器件之间要用导线连接
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
软件设计
1
如何用数码管静态显示产品数?
重点、难点
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
知识链接
1. LED数码管静态显示
静态显示:当数码管显示某一个字型时,相应笔划的发光二极管恒定发光。
特点: 亮度高
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
知识链接
1. LED数码管静态显示
一位数码管的电路连接
位选:固定连接到+5V或者地;
-共阳极:COM端固定接+5V;
-共阴极:COM端固定接地;
段选:连接到单片机的一个I/O口。例如:P0口、P1口等。
特点:8个段选要占用一个端口。
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
知识链接
LED数码管静态显示电路连接
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
知识链接
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
知识链接
1. LED数码管静态显示
unsigned int shumaguan[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char display(unsigned char xs) //显示函数
{
P2=shumaguan[xs] ;
}
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
void jishu() //计数函数
{
unsigned int js;
if(IRIN==0) // 如果红外输入=0
{ delay(10); // 延时10ms
if(IRIN==0)
{
while(!IRIN); // 松手检测
js++;
display(js);
if(js==3)
{
baojing(); //调用报警函数
display(js);
js=0;
display(js);
}
}
}
}
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
如果产品数达到4位呢?
数码管动态显示
四位一体共阴极数码管
7SEG-MPX4-CC
四位一体共阳极数码管
7SEG-MPX4-CA
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
知识链接
动态显示是把各显示器的相同段选线并联在一起,由一个8位I/O控制,其公共端由其它的I/O口控制,然后采用扫描方法轮流点亮各位数码管,使每位数码管分时显示各自应该显示的字符。
2. LED数码管动态显示
特点: 占用端口资源少,适用于连接多个数码管。
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
段选端
位选端
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
3.动态显示的编程思路
核心:逐位扫描显示
位选:选中第一个数码管
段选:输出相应字型码
延时
位选:选中第二个数码管
段选:输出相应字型码
延时
……
位选:选中第四个数码管
段选:输出相应字型码
延时
0
0x3f
延时时间足够短,利用人眼的视觉暂留效应
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
void display(unsigned int xs)
{
unsigned int sge,sshi,sbai,sqian;
sge =xs%10; //拆分个位
sshi =xs%100/10; //拆分十位
sbai =xs%1000/100; //拆分百位
sqian =xs%10000/1000; //拆分千位
led4=0; //第一位打开
P2=shumaguan[sge]; //送数据
delay(1); //延时
led4=1; //关显示
led3=0;
P2=shumaguan[sshi];
delay(1);
led3=1;
led2=0;
P2=shumaguan[sbai];
delay(1);
led2=1;
led1=0;
P2=shumaguan[sqian];
delay(1);
led1=1;
}
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
【进阶任务】数码管动态显示中国共产党成立时间
【任务要求】用单片机控制一个八位的共阳极LED数码管显示
中国共产党成立时间19210723。
八位一体共阴极数码管
7SEG-MPX8-CC-BLUE
八位一体共阳极数码管
7SEG-MPX8-CA-BLUE
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
【拓展任务要求】利用红外光电传感器检测产品进行计数,当计数值达到3时报警,数码管动态显示产品数,并且每1秒钟信号灯闪烁一次。
增加4个独立式按键,第1个按键功能为设置报警值,第2个按键功能为减按键,第3个按键功能为加按键,第4个按键功能为复位。
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
【拓展任务】数码管移动动态显示国庆节
【任务要求】单片机控制4位一体的数码管移动显示1001。
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
1
第1屏
第2屏
1 0
第3屏
1 0 0
第4屏
1 0 0 1
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
0 0 1
第5屏
第6屏
0 1
第7屏
1
虚拟仿真
方案设计
任务拓展
实物联调
总结评价
任务引入
每天学习一点点,变成更好的自己
单片机技术与应用
Lavf57.58.101
Lavf58.76.100
$$