《匠人手记》推荐网上购书渠道:
互动出版网(china-pub)购书入口   >>>
当当网(dangdang)购书入口   >>>
卓越亚马逊网 购书入口   >>>
淘宝网(taobao)购书入口   >>>
更多购书渠道……   >>> 

设为首页加入收藏联系匠人管理入口21IC首页21IC博客21IC社区侃单片机回复的贴参与的贴

天气预报
百宝日历
载入中...

百宝专栏

载入中...
最新货色

载入中...

粉丝评论

载入中...

载入中...



百宝信息

载入中...

百宝流量

(2006-07-01开始)


匠人手记

 匠人观点: 好记性不如烂笔头  
 黑色幽默:三鹿门——后世畅想

关于LCD/LED段码
程序匠人 发表于 2007-7-18 11:33:00  阅读全文 | 回复(1) | 引用通告 | 编辑

 

救火车 发表于 2007-7-15 12:19 侃单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

104楼: 救火车倾情奉献,数码管段位计算工具。

对于单片机初学者来说.调试数码管时的转码是件很麻烦的事.很多初学者会浪费很多时间去计算转码.我在工作中总结出一些转码的经验,做了一个小程序.希望能给初学者在数码管显示方面有一定帮助.以下为软件截图. 先输入A-G段对应的管脚,可以计算出0-F的转换码。如果要计算特殊的符号,可以点左边的数码管,调成需要的图案,转码就自动算出来了。
另外以此做为本人竞选三版的最后冲刺之作,无论能否当选,本人以后将继续活跃在侃单片机版块之中.非常感谢大家一直以来的支持。


程序匠人 发表于 2007-7-17 12:56 侃单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

123楼: 关于段码,匠人曾经苦苦追寻,直到那一天…………

用了下面的方法后,救火车的软件就彻底没有用了。


使用方法:
在项目中,先定义以下8个参数:
    ;****************************
    ;显示段定义
    ;定义每一段的位地址
    ;(说明:根据不同项目需要重新设置)
    ;****************************
    ;bit_a        EQU    0
    ;bit_f        EQU    1
    ;bit_e        EQU    2
    ;bit_d        EQU    3
    ;bit_b        EQU    4
    ;bit_g        EQU    5
    ;bit_c        EQU    6
    ;bit_h        EQU    7

;--------------------------------------------------------
;****************************
;字符笔画代码表:
;           A
;         -----
;        F| G |B
;          -----
;        E| D |C
;          -----
;            ·H
;(说明:根据不同项目不需重新设置)
;****************************
;====段定义
s_a         EQU    1 << bit_a
s_b         EQU    1 << bit_b
s_c         EQU    1 << bit_c
s_d         EQU    1 << bit_d
s_e         EQU    1 << bit_e
s_f         EQU    1 << bit_f
s_g         EQU    1 << bit_g
s_h         EQU    1 << bit_h

;====定义有效性判断
IF    s_a + s_b + s_c + s_d + s_e + s_f + s_g + s_h != 0XFF
    MESSAGE    "段码定义可能有误,请核查!"    
    ;说明:    bit_a,bit_b.....bit_h的定义为0~7,顺序可调,但不得重复
ENDIF

;====字符定义
SEG_0        EQU    s_a + s_b + s_c + s_d + s_e + s_f            ;'0'        
SEG_1        EQU    s_b + s_c                        ;'1'        
SEG_2        EQU    s_a + s_b + s_d + s_e + s_g                 ;'2'        
SEG_3        EQU    s_a + s_b + s_c + s_d + s_g                ;'3'        
SEG_4        EQU    s_b + s_c + s_f + s_g                    ;'4'        
SEG_5        EQU    s_a + s_c + s_d + s_f + s_g                ;'5'        
SEG_6        EQU    s_a + s_c + s_d + s_e + s_f + s_g            ;'6'        
SEG_7        EQU    s_a + s_b + s_c                        ;'7'        
SEG_8        EQU    s_a + s_b + s_c + s_d + s_e + s_f + s_g            ;'8'        
SEG_9        EQU    s_a + s_b + s_c + s_d + s_f + s_g            ;'9'
SEG_A        EQU    s_a + s_b + s_c + s_e + s_f + s_g            ;'A'大写    
SEG_B        EQU    s_a + s_b + s_c + s_d + s_e + s_f + s_g            ;'B'大写        
SEG_B_        EQU    s_a + s_d + s_e + s_f + s_g                ;'b'小写     
SEG_C        EQU    s_a + s_d + s_e + s_f                     ;'C'大写    
SEG_C_        EQU    s_d + s_e + s_g                        ;'c'小写    
SEG_D_        EQU    s_b + s_c + s_d + s_e + s_g                ;'d'小写    
SEG_E        EQU    s_a + s_d + s_e + s_f + s_g                ;'E'大写    
SEG_F        EQU    s_a + s_e + s_f + s_g                    ;'F'大写    
SEG_G        EQU    s_a + s_c + s_d + s_e + s_f + s_g            ;'G'大写
SEG_G_        EQU    s_a + s_b + s_c + s_d + s_f + s_g            ;'g'小写    
SEG_H        EQU    s_b + s_c + s_e + s_f + s_g                ;'H'大写    
SEG_H_        EQU    s_c + s_e + s_f + s_g                    ;'h'小写
SEG_I        EQU    s_b + s_c                        ;'I'大写    
SEG_I_        EQU    s_c                            ;'i'小写    
SEG_J        EQU    s_b + s_c + s_d                        ;'J'大写    
SEG_J_        EQU    s_c + s_d                        ;'j'小写    
SEG_K        EQU    s_b + s_d + s_e + s_f + s_g                ;'K'大写    
SEG_L        EQU    s_d + s_e + s_f                        ;'L'大写    
SEG_M        EQU    s_a + s_c + s_e + s_g                    ;'M'大写    
SEG_N        EQU    s_a + s_b + s_c + s_e + s_f                  ;'N'大写    
SEG_N_        EQU    s_c + s_e + s_g                        ;'n'小写    
SEG_O        EQU    s_a + s_b + s_c + s_d + s_e + s_f            ;'O'大写    
SEG_O_        EQU    s_c + s_d + s_e + s_g                    ;'o'小写    
SEG_P        EQU    s_a + s_b + s_e + s_f + s_g                ;'P'大写    
SEG_Q_        EQU    s_a + s_b + s_c + s_f + s_g                ;'q'小写    
SEG_R_        EQU    s_e + s_g                        ;'r'小写    
SEG_S        EQU    s_a + s_c + s_d + s_f + s_g                ;'S'大写    
SEG_T_        EQU    s_d + s_e + s_f + s_g                    ;'t'小写    
SEG_U        EQU    s_b + s_c + s_d + s_e + s_f                  ;'U'大写    
SEG_U_        EQU    s_c + s_d + s_e                        ;'u'小写    
SEG_V        EQU    s_b + s_c + s_d + s_e + s_f                  ;'V'大写    
SEG_V_        EQU    s_c + s_d + s_e                        ;'v'小写    
SEG_W        EQU    s_b + s_d + s_f + s_g                    ;'W'大写    
SEG_X        EQU    s_b + s_c + s_e + s_f + s_g                ;'X'大写    
SEG_Y_        EQU    s_b + s_c + s_d + s_f + s_g                ;'y'小写    
SEG_Z        EQU    s_a + s_b + s_d + s_e + s_g                 ;'Z'大写    
SEG_O__        EQU    s_a + s_b + s_f + s_g                    ;'o'上半圈    
SEG_        EQU    0                            ;' '空格        
SEG__        EQU    s_d                            ;'_'下划线        
SEG___        EQU    s_g                            ;'-'中划线        
SEG____        EQU    s_a                            ;'-'上划线    


签名:

               ____________________________
    ∽∽∽    /                            \
   ( 。 。)  ( 技术源于积累,成功源于执着! )
-oOOo-∪-oOOo-\ ___________________________/
              |/ 


2007年的新目标是写书(点击查看匠人写书近况……)


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)
热门讲座:如何降低FPGA设计的成本与功耗


程序匠人 发表于 2007-7-17 12:58 侃单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

124楼: 上述方法是汇编方法,在C中同样可以实现。

 

签名:

               ____________________________
    ∽∽∽    /                            \
   ( 。 。)  ( 技术源于积累,成功源于执着! )
-oOOo-∪-oOOo-\ ___________________________/
              |/ 


2007年的新目标是写书(点击查看匠人写书近况……)


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)
热门讲座:如何降低FPGA设计的成本与功耗


大雁塔菜农 发表于 2007-7-17 13:08 侃单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

125楼: 哈哈~~~俺喜欢这样

enum enum_SystemLedSeg
{
    LedSegA = PORTB0,
    LedSegB = PORTB1,
    LedSegC = PORTB2,
    LedSegD = PORTB3,
    LedSegE = PORTB4,
    LedSegF = PORTB5,
    LedSegG = PORTB6,
    LedSegH = PORTB7
};

enum enum_SystemLedBit
{
    LedBit1 = PORTD4,
    LedBit2 = PORTD5,
    LedBit3 = PORTD6,
    LedBit4 = PORTD7,
};

enum enum_SystemLedChar
{
    LedChar0 = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegF)),
    LedChar1 = ((1 << LedSegB)
               |(1 << LedSegC)),
    LedChar2 = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegG)),
    LedChar3 = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegG)),
    LedChar4 = ((1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedChar5 = ((1 << LedSegA)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedChar6 = ((1 << LedSegA)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedChar7 = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegC)),
    LedChar8 = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedChar9 = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedCharA = ((1 << LedSegA)
               |(1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegE)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedCharB = ((1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedCharC = ((1 << LedSegA)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegF)),
    LedCharD = ((1 << LedSegB)
               |(1 << LedSegC)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegG)),
    LedCharE = ((1 << LedSegA)
               |(1 << LedSegD)
               |(1 << LedSegE)
               |(1 << LedSegF)
               |(1 << LedSegG)),
    LedCharF = ((1 << LedSegA)
               |(1 << LedSegE)
               |(1 << LedSegF)
               |(1 << LedSegG))
};


签名:

●█〓██▄▄▄▄▄▄ ●●●●●●→ ''''╭WWWW╮
▄▅██████▅▄▃▂ 灌水入坛传播非典 ( ●_●)
██████████████ '''',,,;,;,;'''/▇\''
◥⊙▲⊙▲⊙▲⊙▲⊙▲⊙▲◤ 东戳西顶一片天/MMMM\
点击遨游水上蔬菜批发市场


打造菜农最倒塌的BLOG


KEITHLEY 2007移动终端测试技术方案研讨会(北京、深圳)
热门讲座:如何降低FPGA设计的成本与功耗


程序匠人 发表于 2007-7-17 13:12 侃单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

126楼: 菜农的方法和匠人一样的原理

 

签名:

               ____________________________
    ∽∽∽    /                            \
   ( 。 。)  ( 技术源于积累,成功源于执着! )
-oOOo-∪-oOOo-\ ___________________________/
              |/ 


2007年的新目标是写书(点击查看匠人写书近况……)

看《匠人手记》,与匠人同行!北航出版,正在热卖!

Re:关于LCD/LED段码
st103发表评论于2007-7-23 22:01:00  个人主页 | 引用 | 返回 | 删除 | 回复

st103ding

看《匠人手记》,与匠人同行!北航出版,正在热卖!

发表评论:
载入中...

芯片专题

器件专题

软件专题

硬件专题

综合专题

项目专题

原创专题

器件检测
LCD LED
按键 触摸键
E2PROM
电池 电机
电阻 电容 电感

指令系统
软件算法
编程规范
滤波算法
串行通讯

PCB设计
I2C PWM
红外遥控
充电技术
中断 ADC 

匠人手记
匠人夜话
网络心路
一周热点串烧
从零开始玩PIC
DIY旋转时钟

广告5号位 [投放]


学习板、开发板、编程器、下载器、仿真器(查看详情……)

广告3号位 [投放]

站内搜索


站外搜索


百度  google
mp3  歌词 
图片  FLASH 
知道  文档
新闻  词典 
地图  mp3 
软件  天网 
雅虎  爱问 
搜狗  讯雷 
网讯  华军 
天空 

21IC器件搜索
百宝箱分站
  • 《匠人的百宝箱》21IC站
  • 《匠人的百宝箱》21IC笔记团队
  • 《匠人手记》21IC书友会
  • 《匠人的百宝箱》MCUBLOG站
  • 《匠人的百宝箱》MCUBLOG笔记团队
  • 《匠人的百宝箱》EDN站
  • 《匠人手记》EDN书友会
  • 《匠人的百宝箱》与非网站
  • 《匠人的百宝箱》新浪站
  • 《匠人的百宝箱》百度站
  • 《匠人的百宝箱》网易126站
  • 《匠人的百宝箱》网易163站
  • 《匠人的百宝箱》互动出版网站
  • 广告4号位 [投放]

     
     

    匠人原创

    往日酷贴

     
     
     

    大千八卦

    友情连接

    新浪新闻:
    新浪财经:
    AK58新闻:
    新浪股票:
    新浪股票:
    证券之星:

     [更多酷站连接]

     

     

    [欢迎交换连接]

    [百宝箱之与非门分舵]

    [电脑圈圈的家当]

    [IC921的博客]

    [柔月阁]

    [八楼的呼吸]

    [hotpower 的水潭]

    [xwj的文君阁]

    [所长的BLOG]

    [阿摆手记]

    [电子伙伴]

    [unaided的笔记]

    [小飞的笔记]

    [单片机开发联盟]

    [网址之家]

    [好东西网址大全]

    [美萍中文精选]

    [数字电视之家]

    [SMARTCODE电子书斋]

    [软件开发之窗]

    [Armoric]

    [我爱研发网]

    [infernal的笔记]

    [雄鹰的空中加油站]

    [SunK]

    [逍遥电子]

    [ningpanda的博客]

    [C-Design]

    [一网见天下]

    [海边淘沙]

    [嵌入式365]

    [水牛的仓库]

    [股剩是怎样炼成的]

    [PIC论坛]

    [ICC AVR开发网]

    [中国高校自动化网]

     

     

     

    MCU博客-中国电子工程师博客网 

    大学生电子网 

     

     

     

     

     

    !!! 《匠人的百宝箱》 !!!