我是靠谱客的博主 复杂鞋垫,最近开发中收集的这篇文章主要介绍51单片机控制数码管显示hello,012345,以及apple自动切换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我使用的是老师发的普中51开发板(哈哈哈哈哈哈哈哈大家开始学单片机都是这个开发板),其中用到了74hc138译码器,动态数码管段选和位选,74hc138译码器abc最低位为a位,显示原理为八个数码管按位进行闪烁,到达一定时间后切换为下一个八位数码管的段选值,以此类推。对于上述描述仅为个人观点,希望大家不吝赐教,如有错误请告知,一经采纳,有红包奖励

#include<reg51.h>
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
unsigned char code tab[3][8]={0X76,0X79,0X38,0X5C,0X00,0x00,0x00,0x00,
                                                            0X3F,0X06,0X5B,0X4F,0X66,0X00,0X00,0X00,
                                                            0X77,0X73,0X73,0X38,0X79,0X00,0X00,0X00};
unsigned char row;
void digdisplay();
void main()
{
    while(1)
    {
        for(row=0;row<3;row++)
        {
            digdisplay();
        }
        
    }
}
void digdisplay()
{
    unsigned int col,times,delaynum;
    for(times=0;times<1000;times++)
    {
        for(col=0;col<8;col++);
        {
            switch(col)
            {
                case 0: LSA=0;LSB=0;LSC=0;break;
                case 1: LSA=1;LSB=0;LSC=0;break;
                case 2: LSA=0;LSB=1;LSC=0;break;
                case 3: LSA=1;LSB=1;LSC=0;break;
                case 4: LSA=0;LSB=0;LSC=1;break;
                case 5: LSA=1;LSB=0;LSC=1;break;
                case 6: LSA=0;LSB=1;LSC=1;break;
                case 7: LSA=1;LSB=1;LSC=1;break;
            }
            P0=tab[row][col];
            delaynum=10;
            while(delaynum--);
                P0=0X00;
        }
    }
    delaynum=60000;
    while(delaynum--);
}

最后

以上就是复杂鞋垫为你收集整理的51单片机控制数码管显示hello,012345,以及apple自动切换的全部内容,希望文章能够帮你解决51单片机控制数码管显示hello,012345,以及apple自动切换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部