导航:首页 > 操作系统 > 单片机共阳极数码管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重复相关的资料

热点内容
什么是服务器辨认不了 浏览:126
java如何调用类方法 浏览:481
管理孩子的app叫什么 浏览:544
压缩活动轨迹 浏览:672
6米梁加密筋 浏览:77
怎么学好ps如何学好编程 浏览:298
c编译器厂商 浏览:112
简述编译程序以及解释程序 浏览:1
linux升级kernel 浏览:176
入侵服务器挖矿是什么罪 浏览:47
房屋解压资料丢了怎么办 浏览:808
java文件行读写 浏览:544
影城网上售票系统源码 浏览:634
防疫就是命令歌曲 浏览:204
滴滴号码加密怎么解除 浏览:844
模具编程的职责 浏览:944
华为ssh改加密算法 浏览:149
文件夹空白合同 浏览:763
pythonwebpy开发 浏览:671
不是c编译器的有 浏览:662