找回密码
 注册
关于网站域名变更的通知
查看: 591|回复: 7
打印 上一主题 下一主题

关于51单片机动态数码管显示问题

[复制链接]
  • TA的每日心情
    开心
    2021-12-1 15:16
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2021-10-14 10:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    #include<reg52.h>
    & \; O& x4 I3 e0 ^1 F) |4 u
    4 F+ I0 a! c. h4 ]7 q2 c: }typedef unsigned char u8;, W( L) Q! ^& x8 M7 R
    typedef unsigned int  u16;* u/ S2 S) p; ]5 ]2 O$ a% }2 H! K

    4 S4 Q8 m% t7 q+ T3 ]. E#define SMG_A_DP_PORT        P0) _1 a$ z: _! _0 @4 M

    , e- ?* ], [; l: q$ Osbit LSA=P2^2;
    ) _( H5 X; C: o: |7 K( O  Zsbit LSB=P2^3;. `+ |6 J; ]4 T( W( E
    sbit LSC=P2^4;6 |" S" N& }% M

    & w% q1 q0 j8 E! e, Hu8 gsmg_code[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,& x$ X: w) C0 e) R
                                                                            0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};6 t  K5 ?; V- h6 b; ~
    8 h9 V( q6 U3 v* V4 w% G
    void delay_10us(u16 ten_us)0 v: c3 x* d* |( G
    {/ ^" A( u6 X% b% n+ I6 A! L
            while(ten_us--);/ S6 [) H! j* B; u
    }
    0 o3 _! f5 t/ L
    " p  ~+ \, m$ N- T9 v0 wvoid smg_display(void)6 Y4 d$ ~9 i/ o# O/ j! y1 i2 a' v( u- O
    {5 q  W3 Y6 b; n4 C2 ~$ b" s5 O7 r' _
            u8 i=0;2 ~8 `! C, r( A( O; g1 n* ?
           
    0 t8 n7 U4 d  ]8 J. o" a        for(i=0;i<8;i++)
    . c+ l$ F6 |4 W' m4 R2 q        {
    ! o1 r/ ?5 x- z0 _3 V: r                switch(1)
    ' P% ?! @& i* R# V& V% i                {
    : e9 a* x9 @" W0 g: a( r( b: S                        case 0: LSC=1;LSB=1;LSA=1;break;4 E4 `% _! [" Q0 j# i. k
                            case 1: LSC=1;LSB=1;LSA=0;break;
    3 R7 x0 c, i3 B                        case 2: LSC=1;LSB=0;LSA=1;break;+ ?; T9 i& X! n& w- N# |
                            case 3: LSC=1;LSB=0;LSA=0;break;
    5 z, j( R; a. j# q4 _                        case 4: LSC=0;LSB=1;LSA=1;break;5 [9 z4 b# _- }& q" ^8 e
                            case 5: LSC=0;LSB=1;LSA=0;break;% ^  n- z, Q; I6 X4 m
                            case 6: LSC=0;LSB=0;LSA=1;break;
    & H/ S7 H) X  m; S  r9 P9 Z                        case 7: LSC=0;LSB=0;LSA=0;break;8 T% T+ [1 Z8 V" a/ e4 B- h
                    }
    & ~; ^7 E) W) o  \9 ?1 a                        SMG_A_DP_PORT=gsmg_code[i];
    ) ^6 g) s. j  m# W* q: C' i7 F% U                        delay_10us(100);- _0 \8 m7 e9 ^4 N) K, }
                      SMG_A_DP_PORT=0x00;3 L' P  p3 D4 u
            }
    ) v) H3 L9 j" K5 b/ t}$ B& X9 a# Y' E6 @: o
    void main()
    : I( I6 X+ O& f1 K6 b* T{5 }% b, n8 T+ ?
            while(1)9 n; I8 q, _$ C: x
            {7 ]2 b6 N$ b+ O2 z& ~1 T8 d* h
                    smg_display();
    ! R6 p4 d& W, M7 q7 `% Q( A% B        }8 v. A4 t" Y# m
    }3 @: j3 j/ S! M" u( l# W
           
    : g8 a, N( _' C9 {8 d4 O6 S# \烧录这段代码后,仅第二位数码管显示8,请问各位这个是怎么回事?, |* u; B  j+ N2 l% R3 s2 G+ w

    ; W% M% C, @, g/ C7 q2 ?7 A- d% o) d6 ^% E8 l* ~

    该用户从未签到

    2#
    发表于 2021-10-14 10:50 | 只看该作者
    这个程序没有数码管的位置的选择,只给数码管的数据
    4 R7 j' h& X6 _/ O" x$ ?程序中可能默认选择的是第二个数码管。所以数码管只有第二个显示,
  • TA的每日心情
    开心
    2021-12-1 15:16
  • 签到天数: 2 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2021-10-14 10:53 | 只看该作者
                    switch(1)
    ! u$ w3 ~1 r& y  e) x  y, K. }  v                {% u; {" [6 B! J3 w0 k
                            case 0: LSC=1;LSB=1;LSA=1;break;
    0 @( Q% \* r  p  }* z                        case 1: LSC=1;LSB=1;LSA=0;break;
    ; Q6 v4 C5 F" S6 f% ]3 I* `                        case 2: LSC=1;LSB=0;LSA=1;break;
    7 D) t0 T6 y6 B! t. ^& u" ^1 G                        case 3: LSC=1;LSB=0;LSA=0;break;. f1 [1 e1 D1 }+ H
                            case 4: LSC=0;LSB=1;LSA=1;break;
    ' e- Z0 @: u/ [                        case 5: LSC=0;LSB=1;LSA=0;break;% v, o, R: ^- M2 I& g" v* C
                            case 6: LSC=0;LSB=0;LSA=1;break;2 ?6 k" E. d$ V; b; z; A2 {' ~
                            case 7: LSC=0;LSB=0;LSA=0;break;' ?! [/ Z8 c& l2 J
                    }4 i* Y) O# ^4 S; ^4 ]% U" w
                            SMG_A_DP_PORT=gsmg_code[i];
    5 D- a$ k" Y# u6 }+ j                        delay_10us(100);/ g- w" n" e5 N- @+ ^! D1 k1 V
                      SMG_A_DP_PORT=0x00;
    8 H2 d! h" ]# f1 }, I# I        }
    : d5 J. g$ W. b3 t}
    0 s) u7 }& V& s2 a; Q9 d1 t. X# O- }; ~  N- W9 s
    此段代码中switch(1)括号中是1,本应该是i

    点评

    1没有问题,  详情 回复 发表于 2021-10-14 14:38
    如果是1,数码管只能显示一个固定的数字  详情 回复 发表于 2021-10-14 14:34
    对的,这块应该是i  详情 回复 发表于 2021-10-14 14:33
  • TA的每日心情
    开心
    2023-6-1 15:13
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2021-10-14 14:17 | 只看该作者
    本帖最后由 521li 于 2021-10-14 14:20 编辑
    ! ?1 N) O/ z% y+ M) {* x5 b- k0 _! p1 b: i2 f! B1 _+ ~; Z1 j
    延时太短了
    ; ]8 [* P/ i' q' M' _

    该用户从未签到

    5#
    发表于 2021-10-14 14:33 | 只看该作者
    加加加加加365 发表于 2021-10-14 10:53
    ( h( k8 k. ]$ F, ^( n( Fswitch(1)
    9 U  l" A$ I  m5 o1 }                {" }8 ^; X* z/ ]$ U) S/ W
                            case 0: LSC=1;LSB=1;LSA=1;brea ...
    + I' I: R+ F* V$ X- A& U
    对的,这块应该是i
    ! H$ E7 U: L0 F- v4 X7 U# n) A

    该用户从未签到

    6#
    发表于 2021-10-14 14:34 | 只看该作者
    加加加加加365 发表于 2021-10-14 10:53+ S5 ?2 u! F' F' D2 i
    switch(1)% t# q6 }4 ~# F  Z, u3 I
                    {
    ( |+ Y( y5 o( d# e6 ~                        case 0: LSC=1;LSB=1;LSA=1;brea ...
    . X) _& A8 E% F) P! ~
    如果是1,数码管只能显示一个固定的数字
    ' _. L. s7 O0 `* Q4 [! a7 y; o) o

    该用户从未签到

    7#
    发表于 2021-10-14 14:38 | 只看该作者
    加加加加加365 发表于 2021-10-14 10:53
    # o" [7 i- R# z0 }( T/ g5 zswitch(1)  f: U3 x7 b  s& m  y! v
                    {
    0 E# `; |( d4 T7 R                        case 0: LSC=1;LSB=1;LSA=1;brea ...

    ) n. ~7 j* [5 s, z1 g$ Q: P1没有问题,/ ]; ~3 ?- C* `8 k3 X. \

    点评

    是的,1只会显示一个数字,不是显示全部的数字  详情 回复 发表于 2021-10-14 15:05
  • TA的每日心情
    开心
    2021-12-1 15:16
  • 签到天数: 2 天

    [LV.1]初来乍到

    8#
     楼主| 发表于 2021-10-14 15:05 | 只看该作者
    fgjhtjbfem 发表于 2021-10-14 14:38* j4 F! a  P( T2 [9 V$ j
    1没有问题,

    ) K7 Q1 Y( o+ R2 ~" x是的,1只会显示一个数字,不是显示全部的数字
    . x  |0 r7 G/ ~
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-16 07:47 , Processed in 0.140625 second(s), 31 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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