找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3113|回复: 7
打印 上一主题 下一主题
收起左侧

抛砖之二“LED数码管驱动”

[复制链接]
跳转到指定楼层
楼主
数码管有很多驱动形式,如7219、138、595、164等等,对于我们初学者来说,由浅入深,由简入繁是最有效的学习方法,今天我给大家介绍一个用元件最少,程序最简单的显示数码管0-F。与大家分享。


#include< reg52.h >         
#define INT8 unsigned char  
#define INT16 unsigned int  

INT8 code table[] =            //共阴码表。(阴阳码灵活选用)。
{
        0x3F, 0x06, 0x5B, 0x4F, 0x66,
        0x6D, 0x7D, 0x07, 0x7F, 0x6F,
        0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71
};

/*                       
INT8 code table[] =                   //共阳码表。(阴阳码灵活选用)。         
{
        0xC0, 0xF9, 0xA4, 0xB0, 0x99,
        0x92, 0x82, 0xF8, 0x80, 0x90,
        0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E
};
*/
         
void Delay( INT16 xms )      //延时函数,有参函数
{  
        INT16 x,y;   
        for( x = xms;x > 0;x -- )   
                for( y = 110;y > 0;y -- );  
}

void main()  
{      
        INT8 Number = 0;
        while( 1 )
        {            
                P2 = table[ Number ];
                Delay( 500 );
                Number++;
                if( Number == 16 )
                {
                        Number = 0;
                }      
        }
}



下次发电路。

评分

参与人数 1威望 +50 黑币 +40 收起 理由
admin + 50 + 40 共享资料的积分奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1 发表于 2014-10-25 20:58 | 只看该作者
好家伙  初学者有用
回复

使用道具 举报

板凳
ID:67370 发表于 2014-10-26 08:26 | 只看该作者
运用时的关键点:
1.要了解自己的数码管是共阴还是共阳,选用相应的码表。
2.实战时,最好使用红色数码管,理由就不用说了。

共阴模式.png (15.38 KB, 下载次数: 121)

共阴模式.png

共阳模式.png (15.09 KB, 下载次数: 138)

共阳模式.png
回复

使用道具 举报

地板
ID:67844 发表于 2014-10-26 12:05 | 只看该作者
学习啊
回复

使用道具 举报

5#
ID:67336 发表于 2014-10-26 14:23 | 只看该作者
好东西。。。。。。
回复

使用道具 举报

6#
ID:67370 发表于 2014-10-27 19:52 | 只看该作者
分享了。
回复

使用道具 举报

7#
ID:67678 发表于 2014-11-2 01:08 | 只看该作者
学习学习
回复

使用道具 举报

8#
ID:165792 发表于 2017-3-20 21:37 | 只看该作者
谢谢分享,值得收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表