导航:首页 > 操作系统 > 单片机共阳极数码管0到9重复

单片机共阳极数码管0到9重复

发布时间:2024-10-16 16:41:04

‘壹’ 我用lpc900系列的单片机,怎么用一组如八位p0口,加2个位选,来控制两个共阳极的七段led,是从00-90来回显

p0做数据用,cs_1和cs_2做led的选择。共阳的就是输出低电平有效。然后,在程序里边做个计数器count,count从00-->90-->00循环加,每加到一个数,分别用count/10和count%10得到个位和十位的数字,比如count=90,那么个位就是0,十位就是9。然后就是分别先后把cs_1=0,p0的值为要显示的数的段码,然后cs_1=1;接着cs_2=0,p0的值为要显示的数的段码,然后cs_2=1;计数周期和两个数码管显示的时间间隔可以添加适当的延时。大概思路就是这样

‘贰’ 共阳极数码管显示0~9对应的段码

共阳极数码管显示0~9对应的段码。
#include//单片机寄存器相关的文件
#include//具有空指令的文件
#defineucharunsignedchar//宏定义以后用uchar替代unsignedchar
#defineuintunsignedint//宏定义作用同上ucharcodeDSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//数码管0-9的段码值//延时
voidDelayMS(uintx)//延时函数
{
uchart;//定义变量数值范围0-255
while(x--)for(t=0;t<120;t++);
}//主程序
voidmain()//主函数
{uchari=0;//定义变量i并且i=0P0=0x00;//P0口=0x00P0口全部为低电平
while(1)//主循环
{
P0=~DSY_CODE[i];//P0=取反的数码管段码值
i=(i+1)%10;//i=i自加1个位的数
DelayMS(300);//延时}}/

‘叁’ 单片机汇编:LED数码管从0---9之间,依次每按一下亮一位数字,并循环!

START: MOV P3, #0FFH MOV DPTR, #SEGPT MOV A, #0 LOOP: MOVC A, @A+DPTR MOV P1, A KEY: JB P3.2, KEY INC A CJNE A, #10, LOOP MOV A, #0 SJMP LOOP SEGPT: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;共阳极 ABCDEFGH对应x.01234567

阅读全文

与单片机共阳极数码管0到9重复相关的资料

热点内容
服务器为什么不能搬走 浏览:313
三年无工作经验空窗期的程序员 浏览:559
来球网app怎么样 浏览:300
51单片机哈佛 浏览:571
无法下载华为移动服务器地址 浏览:679
phplinux重启命令 浏览:110
厦门软二程序员 浏览:580
tv共享文件夹 浏览:621
bec词汇词根pdf 浏览:65
服务器如何开启上网吗 浏览:159
永久修改linuxip 浏览:748
每个文件单独压缩 浏览:470
你编译一下 浏览:850
程序员打车票 浏览:100
厚大119pdf 浏览:979
jpeg开源编译cjpeg 浏览:86
无主之地免安装版要全部解压吗 浏览:631
什么拼图软件不压缩 浏览:864
苹果app更新不了软件怎么办 浏览:768
程序员的发展是 浏览:294