打印

超酷8段LED字符宏定义

[复制链接]
2417|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
taoest|  楼主 | 2008-9-28 12:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//EightSegLED.h
//the following is the LED definition
//不同的LED连接电路,修改这个定义就可以了。不同笔画对应不同的BIT
#define MLEDSegA   0x80     //  ***A***
#define MLEDSegB   0x20     //  *     *
#define MLEDSegC   0x08     //  F     B
#define MLEDSegD   0x02     //  *     *
#define MLEDSegE   0x01     //  ***G***
#define MLEDSegF   0x40     //  *     *
#define MLEDSegG   0x10     //  E     C    *
#define MLEDSegDot 0x04     //  ***D***  *DOT*
//如果是共阳驱动:
#define MLEDSegPolarity ~
//共阴驱动:
//#define MLEDSegPolarity 


//EightSegLED.C
//定义数组,这一部分不需要修改。直接引用即可。例如 LEDDigitfont[6],就是字符‘6’
code unsigned char LEDDigitfont[11]=
{
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegB|MLEDSegC|MLEDSegD|MLEDSegE|MLEDSegF),
    MLEDSegPolarity( unsigned char)(MLEDSegB|MLEDSegC),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegB|MLEDSegD|MLEDSegE|MLEDSegG),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegB|MLEDSegC|MLEDSegD|MLEDSegG),
    MLEDSegPolarity( unsigned char)(MLEDSegB|MLEDSegC|MLEDSegF|MLEDSegG),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegC|MLEDSegD|MLEDSegF|MLEDSegG),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegC|MLEDSegD|MLEDSegE|MLEDSegF|MLEDSegG),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegB|MLEDSegC),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegB|MLEDSegC|MLEDSegD|MLEDSegE|MLEDSegF|MLEDSegG),
    MLEDSegPolarity( unsigned char)(MLEDSegA|MLEDSegB|MLEDSegC|MLEDSegD|MLEDSegF|MLEDSegG),
    MLEDSegPolarity( unsigned char)0x0    //blank font, no display;
};

相关帖子

沙发
oumi| | 2008-9-28 12:57 | 只看该作者

不错

使用特权

评论回复
板凳
taoest|  楼主 | 2008-9-29 18:28 | 只看该作者

自己顶起来

使用特权

评论回复
地板
icmap| | 2008-10-1 01:19 | 只看该作者

很巧的方法,谢谢楼主。

使用特权

评论回复
5
yewuyi| | 2008-10-1 13:01 | 只看该作者

戏法变得很好。。。

使用特权

评论回复
6
hotpower| | 2008-10-1 17:04 | 只看该作者

没看出来~~~

使用特权

评论回复
7
taoest|  楼主 | 2008-10-1 23:25 | 只看该作者

修改电路

修改电路连接的时候,可以通过直接修改宏定义,即可完成软件修改。
无需重新手工计算8段LED的字符码。而且不会增加程序大小和计算量。
使用的时候直接使用即可
 P0=LEDDigitfont[6];

使用特权

评论回复
8
呆板书生| | 2008-10-2 05:37 | 只看该作者

班门弄斧

太简单,类似的办法,菜农早就用了

使用特权

评论回复
9
qjy_dali| | 2008-10-2 22:52 | 只看该作者

不错

使用特权

评论回复
10
isbit| | 2008-12-11 10:03 | 只看该作者

能编译通过吗?

我按这个定义,编译一下通不过呢?

使用特权

评论回复
11
cfly| | 2008-12-11 10:55 | 只看该作者

不错

在新项目中用了。
原来都是一个一个写的。

谢了阿。

使用特权

评论回复
12
isbit| | 2008-12-11 10:57 | 只看该作者

我也开始用了,挺好!

使用特权

评论回复
13
ayb_ice| | 2008-12-11 20:48 | 只看该作者

稍有经验的都是这样的啊

使用特权

评论回复
14
taoest|  楼主 | 2008-12-12 02:40 | 只看该作者

10楼

这个是KEIL C51程序,有些关键字在其他编译器里可能不兼容。需要修改一下。

另外,高手们也不要嫌麻烦,贡献一些经验出来,给更多的同行学习学习。

使用特权

评论回复
15
救火车| | 2008-12-12 08:52 | 只看该作者

支持一下,给楼主加条裤子。。

使用特权

评论回复
16
救火车| | 2008-12-12 08:56 | 只看该作者

呵呵,找了好久也没找到,原来发的时间很长了,帮你顶一

使用特权

评论回复
17
taoest|  楼主 | 2008-12-13 00:58 | 只看该作者

救火车

我的红裤衩呢?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

956

帖子

4

粉丝