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

单片机按键控制单个数码管显示变化数字源程序

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
单片机按键控制单个数码管显示变化数字源程序
! M8 I, m/ ~. z" b4 j( G, E, d8 E4 C3 I  r) @
, I9 x% @7 e$ y' J( [' s
这是我单片机课程中按键控制单个数码管显示的程序" b) N( ~6 n; E7 p" @

. D. f9 E1 d9 ]4 _单片机源程序如下:

, s0 ]4 i4 M* C# @- P! [/ \0 n1 R/*-----------------------------------------------/ ~3 Y' }% V, r: ]
  名称:单个共阳数码管动态显示变化数字' |) L& l$ z, q. l' X& g8 r$ ?0 U" z
  修改:无
7 K4 I" t. k" {4 y  内容:通过循环检测P1口按键输入值,然后用数码管输出,0 b  N+ E8 m( Q
        没有按键按下时原值不变 3 Z; r  P7 O3 d" }( t
------------------------------------------------*/
7 B* I/ E- G- e9 L' ~  v" T4 g- C) k#include<reg52.h> //包含头文件,一般情况不需要改动,
# Z3 n6 L, P5 k  g* t* f//头文件包含特殊功能寄存器的定义" m% N; W! z; V9 [0 l9 Y
$ G) P3 b/ a" }; u/ S  o+ W5 L  [

9 k. C$ J: W5 \4 V- Lunsigned char code dofly_table[10]={0xc0,0xf9,0xa4,0xb0,0x99,
4 C3 c2 G+ K( Y, @/ r                                    0x92,0x82,0xf8,0x80,0x90,}; . M, p1 l7 J( }  L( z
                                                                        // 显示数值表0-9
. f! w( _: C( w/ c0 h
5 E  n: k' \4 ?& j0 e( @. ~/ S
% R. z" ~) [6 I5 F6 N; }- H
/*------------------------------------------------) Q$ Y& Y4 O& H+ p
                    主函数! Q  `8 e5 k8 `& f# l& }
------------------------------------------------*/
" ^5 }9 e0 d1 e1 Pvoid main (void)
' D4 }& ^& v9 P" s2 l{6 x; P: M; }1 B$ v
                  1 `" F7 v% C$ l' u  f* \! a

- e: L+ W8 A! Y& [+ z
- Q' D; N, b% h; ^
while (1)         //主循环
* Q" k7 w+ |, J  {
& o9 Y5 B0 m2 E1 O; v$ {& y9 Y
7 ~3 R& }6 x" T+ k

: ]: {5 q0 o. Z1 c5 H3 c  switch(P3)  //P3口作为独立按键输入端,检测端口电平并做如下判断                            ) L1 ?9 V( ]) }( i: q4 Y$ l& e
       {
* k- H' ?) h- |4 v' {- d            case 0xfe1=dofly_table[1];break;//0xfe = 1111 1110,
) J& [8 D' w3 Y, Q# E# t; M2 D; H//说明连接在P3.0端口的按键被按下,显示对应的数字然后跳出循环/ x3 Z$ P" U' w6 x/ `
                case 0xfd1=dofly_table[2];break;//调用表中的第三个
+ w8 q& y# x+ Y! ]& w) {//元素 0xa4 下标 0 才表示数组中的第一个元素
1 L4 t' x5 n& W# W4 \5 N2 G                case 0xfb1=dofly_table[3];break;
6 i# b% i, u' `1 N1 `1 d1 y                case 0xf7:P1=dofly_table[4];break;& Z/ K) ~: S6 x( s( _
                case 0xef:P1=dofly_table[5];break;
! V% }* k* \; S; o" q                case 0xdf:P1=dofly_table[6];break;, w5 Q/ w4 S  y* n$ m8 b$ S% ]6 e
                case 0xbf:P1=dofly_table[7];break;0 L5 x2 B$ R8 d2 O7 [% a1 w& J# a* G' g
                case 0x7f:P1=dofly_table[8];break;
. r3 k* R* L2 D1 ?8 m6 a                default:break;    //如果都没按下,直接跳出
+ M# e# U* R' k! U8 B7 _4 S. p( |( }           }+ q$ O& D+ a# _9 ?1 I9 U
                     //主循环中添加其他需要一直工作的程序" C3 A) w& }" {8 j( u
  . r/ M1 {# r# [$ l8 v  S6 ]0 L( A

2 i( ^( X" q5 Q4 v, O! Q

5 P* R4 ^8 l& J' j: L8 P) N( X. S0 E( p

( l7 E  S( S1 j, U…………限于本文篇幅 余下代码请从论坛下载附件…………
, t" b# a  C- C& `* n( j) s完整代码下载:1 V' B8 ?  }2 l+ p
游客,如果您要查看本帖隐藏内容请回复
* f. P" C. ~9 c& L5 a

; N" P2 I- h7 u- t

该用户从未签到

2#
发表于 2019-1-9 11:14 | 只看该作者
不错,谢谢分享

该用户从未签到

3#
发表于 2019-11-19 15:02 | 只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-6-28 14:14 , Processed in 0.093750 second(s), 26 queries , Gzip On.

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

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

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