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

单片机数码管显示数值,按键设置数值 源码加proteus仿真

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-11-27 09:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
本帖最后由 kinidrily 于 2018-11-27 09:41 编辑 . a8 @* e3 o/ E1 ]2 m5 f

$ `0 f3 j" w0 k/ A
单片机数码管显示数值,按键设置数值 源码加proteus仿真

4 a  z6 U* F+ N1 k# ~, ]# W4 _
单片机源程序:
  #include<reg52.h>7 ^: Z4 d1 _! V/ H( c
  #define uchar unsigned char
* T. U9 u' s0 P/ I& _9 \5 h  #define uint unsigned int
7 D$ u) D: T& [" `" b  sbit key1=P3^4;7 V( Z2 Y( S1 O7 u+ d: ]9 ]
  sbit key2=P3^5;" m% r2 i: w" S* B4 b
  sbit wei4=P2^0;
( \  K4 E) [# x0 [6 |  sbit wei3=P2^1;( x; L6 M4 {$ U
  uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77};
8 E3 r% h2 m, B: G) j$ m" a  void delayms(uint);
9 |( ~' n/ ?( b: [- `9 X  uchar numt0,num,flat;
# C3 q$ w  W4 a8 M4 G   void delayms(uint xms)
" g6 u) M% k- A3 G2 f   {   / @! b- P+ a1 K
       uint i,j;7 S1 S+ d1 }+ s- l( p
           for(i=xms;i>0;i--)0 Z9 C0 }; S2 H; p. A
             for(j=110;j>0;j--);
5 c$ K0 O4 c% P/ R7 Z          }
. ~1 y5 H4 U% A/ E3 N   void display(uchar numdis)  n: B3 {1 A# q" z* _0 y3 Z
  {5 ]. n# [9 J# i9 Y+ _3 V5 v
    uchar shi,ge;
, A6 n3 Y. o* i+ |! ]         shi=numdis/10;' Q7 r- r5 Q* F9 ^9 _2 f
        ge=numdis%10;
$ D: L) Q  P8 _3 s" _" {        wei4=1;! K* p+ [4 X" v6 L
        wei3=1;
$ Z* z1 {7 Y! u5 h( `4 c' U        P1=table[shi];
3 ?" z7 J& r% M0 w7 S; k        wei4=1;, f$ t0 @0 ~' ~" Q8 H
        wei3=0;6 A6 E! y& s% {- O3 s
        delayms(5);
; C- f1 q4 j3 R) ~& d# ~* T. u        wei4=1;
" g/ U: G6 a, z/ V        wei3=1;
8 t7 L% |/ C3 ~1 e        P1=table[ge];
& ?9 {1 m+ v0 q- h+ c0 `        wei4=0;
/ c) {, v6 I/ ]        wei3=1;, U8 g2 {; A" L2 `; n
        delayms(5);$ ^4 r, b" J8 V- R3 u, [
        }
$ B5 Z0 r9 g% y, W/ `  Y        void init(): T9 G! }6 }8 l0 n7 i7 l* M
        {
, ?  b" ]. G1 ?, N5 q" v       TMOD=0x01;
' Q" R' t) v2 {           TH0=(65536-45872)/256;
& }2 o. J: X6 B  p& U           TL0=(65536-45872)%256;! P* w. K* t+ F! N1 J
           EA=1;* K' Y/ P6 v* r8 L
           ET0=1;- Z2 m/ J" w/ u. C( v5 d
           }
- }) W- X/ U% A0 F   void keyscan()6 Z' e1 h3 n" P3 l6 ]! c( j' t! x
   { 4 n* z. @3 \+ [! ~/ M4 o* N5 {0 X. }3 e
      if(key1==0)" A* W6 y2 f. z: M
          { 0 h' ~& k5 K; A0 i7 M( |
            delayms(10);
7 b  a9 _: x" C, p  U! k; d. A                if(key1==0)
* n2 {) c7 D: Q8 N8 R" }+ j* q+ \5 k                {2 x& w) j. Y6 N1 O
             num++;: J4 x, s5 x# r% c
                 flat++;
" j3 M& P4 C) G2 H* {7 l                 if(num==99)
) f" j* K5 R( l% F0 e& {+ ]* b% P                     num=0;
7 f0 ^& S5 u! Q& A/ R  v* w) X                while(!key1);& j+ c% S, i5 q/ A
          }
8 H5 ]# |* P7 K/ a) ^3 H' v' A, H        }3 l6 c: o. }2 E- n# l* f
   if(key2==0);
) j4 u9 u" q2 g2 t4 ?% K; B   {
6 b, z3 ]9 o$ t* `. N1 T2 S, K      delayms(10);% R' u' S7 I) v! z
          if(key2==0)& n+ E& `8 N7 i6 T
          {
3 v  Y% J' r6 ~+ z; b! t             if(num==0)5 E0 z4 r4 i8 N* [/ i
                   num=99;
5 a. a" `" h/ L                   flat=99;
* R# D. I/ R6 V% i% S% X- ?2 ^# I8 J6 @                   flat--;
) q& K, u( |/ c- `& }                   num--;
* p0 x% {) |) N8 M                   while(!key2);& \' l# t7 r' C( M
                   }1 U4 Q+ X! `& J7 K
        }; o. A& w7 @) L
  }" S: e. F0 @& I6 J+ h
  void main()0 E' ]& _7 M  s
  {init();* e+ y6 E6 J$ M. I# l4 F" y
   while(1)9 ]) X$ A& U' b! d$ S
   {: z  d2 I* ]% `- h4 {6 O+ R
     keyscan();
$ |- I7 M& H" v0 J/ b         display(num);: V$ {/ T: Q9 R+ S
         }}
) P: g0 _( X# h8 n6 Z6 {8 ~        void T0_time() interrupt 1
: \$ W, U! M2 ?        {TH0=(65536-45872)/256;- W4 Y( Y1 H9 I' [
         TL0=(65536-45872)%256;" \1 {. h% o" i- y. `5 j
         numt0++;
: V' o1 X  d7 ~# ^1 m         if(numt0==20)
) ], U1 E) w$ M* A3 I         {numt0=0;& [7 |; `& @) p* B
         num++;8 a. z3 ^4 n; a* |5 V
         if(num==60)
4 `8 \) q& r& j$ y$ {' Q6 w            num=0;
…………限于本文篇幅 余下代码请从论坛下载附件…………
游客,如果您要查看本帖隐藏内容请回复

3 N+ Q+ `, e+ Z. _3 x

该用户从未签到

3#
发表于 2019-2-28 17:53 | 只看该作者
看看楼主的代码和原理图

该用户从未签到

5#
发表于 2019-6-19 01:59 | 只看该作者

该用户从未签到

6#
发表于 2019-12-8 22:40 | 只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-19 21:16 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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