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

请各位解释一下单片机C语言这几个键值怎么的出来的?

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
请各位解释一下以这几个键值怎么的出来的( {1 L1 x! n+ k  F+ \$ X$ {
以下是部分程序:! t2 B' F' y, w; l3 S
---& p' X9 g6 K; K2 p$ {2 `5 ~) S
#define uchar unsigned char   7 L3 _' S$ }  e8 ^- u, \
#define uint unsigned int5 C3 w) M9 d" I, F, j
#define key P1   
6 j% t1 y9 J# ^7 X. e) N#define dataout P3
2 v2 n5 y8 A4 auchar data keyword;! J3 Y3 X6 o# _0 z3 w' o0 A& E& \
---
0 E" r6 q( {- F5 p4 yvoid keyscan()               //键盘扫描函数
% T: ]1 z7 y+ R7 }{   ) ]# w; ^3 I  d
keyword=key&0x3f;   ' A- c( O4 m2 @
if(keyword!=0x3f)   
; l3 d: u2 I3 _8 t6 F2 C{     n& w9 e! o+ G! |  k1 `
  while((key&0x3f)!=0x3f);  //等待按键松开   
. k0 p( w% T9 I5 d7 v( }# b' m  switch(keyword)   
# e; X- V, K( j5 l& K  {
5 F2 i: h7 b. h0 L7 p' {0 w     case 62: {;}
( C0 N& i; T6 X  o$ r     case 61: {;}* @+ {7 v. K  @9 R4 f0 ~
( u1 ~4 r" j6 @7 C7 C( h6 H
     case 59: {;}& s& e3 c" I3 G$ q3 B
     case 55: {;}
) d" u& l5 b* Y     case 47: {;}
6 K$ w7 ^& U5 \0 E' r; C0 X$ _     case 31: {;}
' _! n- d7 p1 D8 t}
& f* H. @/ s/ U}
5 e2 G+ I6 |* x9 N( h2 ~: d}& |" @+ O, z+ M6 H& Y- O

) }3 P( X3 }  ]. `4 V提问:
; ?# q+ w0 o& `(1)键值62,61,59,55,47,31怎么得出来的;5 c) L+ G" K! `. b
(2) 代表哪几个按键或对应引脚。
% ?" ]3 G( w" r  s

该用户从未签到

2#
发表于 2022-3-1 09:52 | 只看该作者
这几个数分别对应十六进制:3EH,3DH,3BH,37H,2FH,1FH,在按键而言,分别对应P1.0到P1.5相接的6个按键。. \/ j! m- l2 ~* h

该用户从未签到

3#
发表于 2022-3-1 10:01 | 只看该作者
按键的接口是P1的低6位,如果P1的最低位按下,键值就是十六进制0x3e,十进制就是62;次低位按下键值就是十六进制0x3d,十进制就是61;依此类推,分别就是59、55、47、31.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-11 13:02 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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