例子:六位共阳数码管,动态显示一行数据,自左向右依次显示654321
/**************************************************************************************
* 数码管动态显示** 现象:自左向右依次显示654321***************************************************************************************/#include"reg52.h"unsignedchar code duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};unsignedchar code wei[]={0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//共阴数码管段选表/******************************************************************************* * 函数名 : delay *函数作用 : 延时一段时间 *******************************************************************************/voiddelay(unsignedint i){while(i--);}/******************************************************************************* * 函数名 : DigDisplay * 函数作用	:数码管显示 *******************************************************************************/voidDigDisplay(){char i;for(i=6;i>0;i--){ P2=~wei[i];//仿真图用的共阳数码管,把共阴段选表取反 P0=duan[i];delay(100);}}/******************************************************************************* * 函数名 : main * 主函数 *******************************************************************************/voidmain(){while(1){DigDisplay();//调用数码管显示函数}}
完
收藏
一键三连
扫一扫,分享海报
如何用Proteus仿真8086 对应实例 http://blog.csdn.net/qq_27403925/article/details/78923924
硬件设计 (末尾附文件) 仿真图:数码管显示,支持整数加减乘除,不支持小数和负数及连续运算; (20x3 和20÷3的结果 ) 程序设计 //************************************************************************************************* //********************************************************************************
首先,针对于51单片机有以下概念 51单片机的IO口每个引脚的电流驱动百能力比较弱: ①拉电流:即单片机引脚置高电平时对外输度出的电流,不超过1毫安。 ②灌电流:即单片机引脚置低电平时知对外吸收的电流,不超过10毫安。 所以需要利用三极管进行电流放大进行驱动, 针对于共阳极: 共阴极: 因为是二极管,所以不仅电压的高低电平需要满足条件,电流的方向也需要满足条件! 比如说: 该数码管为一位共阴...
[单片机学习笔记01]