蓝桥杯单片机 基础篇1——————数码管的显示
来源:互联网 发布:淘宝千人千面 编辑:程序博客网 时间:2024/06/08 04:21
下面是官网提供给我们的原理图,关于数码管这个模块我们可以看到,主控芯片是通过 74hc138控制74hc02再去控制74hc573 为了节约单片机的io 官网采取了这种方式。
如果想让数码管显示我们可以通过p25 p26 p27 三个io控制 其中我们可以这样写 :
P2=0xc0; 138的Y6端输出低电平 WR端一直是低电平,Y6C输出高电平 使u8(573)使能端打开,打开数码管位选端。
P0=0x01; 选择第一位数码管。
P2=0x1f; 数据锁存。
P0=0xff ; 用于消隐。
P2=0xe0; U7(573)使能,打开数码管段选端。
P0=table【】; 显示数字相应的段码 。
P2=0x1f; 数据锁存。
P0=0x00; 消隐 。
以上是对数码管的操作主要方法,对于将数码管显示放到中断里面,后面回讲到,本期附带程序 ,数码管显示 1~8 ;(蓝桥杯官网开发板)。
#include "reg52.h"
uchar table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff};
uchar yi,er,san,si,wu,liu,qi,ba;
void delayms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=114;y>0;y--);
}
void display1(uchar yi,er)
{
P2=0xc0;
P0=0x01;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[yi];
P2=0x1f;
P0=0x00;
delayms(1);
P2=0xc0;
P0=0x02;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[er];
P2=0x1f;
P0=0x00;
delayms(1);
}
void display2(uchar san,si)
{
P2=0xc0;
P0=0x04;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[san];
P2=0x1f;
P0=0x00;
delayms(1);
P2=0xc0;
P0=0x08;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[si];
P2=0x1f;
P0=0x00;
delayms(1);
}
void display3(uchar wu,liu)
{
P2=0xc0;
P0=0x10;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[wu];
P2=0x1f;
P0=0x00;
delayms(1);
P2=0xc0;
P0=0x20;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[liu];
P2=0x1f;
P0=0x00;
delayms(1);
}
void display4(uchar qi,ba)
{
P2=0xc0;
P0=0x40;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[qi];
P2=0x1f;
P0=0x00;
delayms(1);
P2=0xc0;
P0=0x80;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=table[ba];
P2=0x1f;
P0=0x00;
delayms(1);
P2=0xc0;
P0=0x80;
P2=0x1f;
P0=0xff;
P2=0xe0;
P0=0xff;
P2=0x1f;
P0=0x00;
delayms(1);
}
void main()
{
yi=1;er=2;san=3;si=4;wu=5;liu=6;qi=7;ba=8;
while(1)
{
display1(yi,er);
display2(san,si);
display3(wu,liu);
display4(qi,ba);
}
}
- 蓝桥杯单片机 基础篇1——————数码管的显示
- 51单片机—数码管显示
- 单片机—数码管静态显示
- 单片机——数码管
- 单片机入门——数码管动态显示
- 单片机数码管动态显示—C语言版
- 单片机实验——电子表(数码管动态显示技术)
- 单片机学习笔记(三)——数码管显示
- 51单片机——数码管驱动
- 好玩的单片机——数码管原理(一)
- 好玩的51单片机——数码管实现(二)
- 20141108 【 单片机——万年历DS1302——中断 】 用DS1302模块 & 数码管显示万年历
- 20141109 【 单片机——串口通讯——中断 】 八段数码管显示通信内容
- 51单片机(HC6800—EM3 V2.2)数码管操作——静态显示
- 51单片机学习笔记【三】——数码管实验
- 数码管显示的温湿度计——DHT11
- 单片机控制的数码管显示
- verilog之计数器0~9999——数码管显示
- Oracle数据库索引
- 解决<input type=“file” multiple> 多文件上传问题(可以多次选取文件,也可以一次选取多个文件),而且点击的是一个同一个div
- java编程思想读书笔记二:一切都是对象
- 使用C#编程解决数独求解(从图片识别到数独求解)
- java从入门到弃坑十七><
- 蓝桥杯单片机 基础篇1——————数码管的显示
- 系统事件触发器
- java按多个分割符分割字符串
- BZOJ3390: [Usaco2004 Dec]Bad Cowtractors牛的报复
- php设置允许跨域
- CDN选择合适的回源策略很重要
- 八年老司机总结了产品工作的5大神坑
- 20 张赤裸裸的人性图,你敢看吗?
- docker 的mysql镜像使用手册 官网原文 日期2017-05-25