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

单片机讲义7:switch case{}多分支选择语句,端口并行操作,数码管编码

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
第七讲# c6 }, k: B. l; p' g
- M4 x! o8 N% p6 i% P  k: W: ]" Z
知识点:
* x) ]3 ~, y" X. S  L9 o1、 数码管编码; g$ c+ F7 e* U" M" H2 a4 v
2、 数组定义格式、引用
' R* n3 ^$ M1 ^! e1 O8 R3、 端口的并行操作! H. W7 T' z1 R% z3 W
4、 switch() case{}多分支选择语句
- R+ V% ^# I' D8 ~' u6 S8 U* q8 x' x
5 M+ `: K5 X+ }5 l  _, x) e
一、数码管编码- z4 j7 n* G, M- V9 l1 a
数码管又称 8 段数码管(加上小数点 dp),分为共阳极和共阴极两种。用! Z1 j2 i( `6 x6 f; }2 M" Q; R  b
a,b,c,d,e,f,g,dp(h),8 个字母表示 8 个段。其电路原理如下图:' a' ~+ H/ B& G4 z

) |) z: {% \1 K) T' y* C6 a
, X  B4 N% i  V内存单元中。
# ^' c9 f6 L( f0 v4 W
$ _4 e  z0 q3 g
dp    g     f     e     d     c     b     a

+ ~) {1 z3 w# v+ T共阴极数码管编码:
& E' a: @2 C9 \  s0 o8 ]8 _ ' H0 `: U, t2 h. `' j
  0! h# \; K1 U6 ^
  0x3f4 R, q/ d* w) t" h3 a' s5 t; I- w8 C
   
8 x' K6 c+ ?! f! M' d* F
  1. ^: c" a* r, m- @% j, I/ A
  0x065 ~6 y7 ?$ E/ J% O# f
     N0 H( l4 C+ w  w- ~* y
  2% S8 F7 ?5 u  z) ?, a  R  k
  0x5b3 ~% d/ n% ^4 U5 p9 ~* U& n( }0 J( ?2 N
  
" o4 c; k5 L. R% k7 P  ^
  3; N7 [2 a  O6 H8 E3 I. o
  0x4f9 M$ v% A4 D: K( z2 d) B
   
  4
  X/ A2 d$ A; c, P$ X; [
  0x66& G* K  _% U# r. r( ?
   # L" D* @: z- N' l# h
  5) p- ^- r' i. W1 G6 @) d8 |
  0x6d7 t7 N% @1 b; ^
   
  6
9 s4 a$ s% _0 J- h- N: }
  0x7d
& u# `% {  v" {9 [2 _0 y4 y7 k
   
& v( L& s8 k( J# X8 p
  7
- [4 ?/ W$ @" C9 r; ?: X7 p% H
  0x07
" T! V+ I3 x# g# r1 V
   
' \7 @8 |; Z* U1 v; a
  8
; j/ |1 h2 C( p3 J# L3 F& W
  0x7f6 W. N% ]0 T% ?8 h+ H3 n& z6 \5 R
   
+ @3 E2 }( J8 @1 m
  9
( i0 l; G5 W4 B7 t7 j) m9 U
  0x6f
* F0 s0 [1 @, }9 p
   . }2 W, |4 ]- `1 e3 ]
二、    数组定义、引用1 ]/ E; _* T3 q! d3 u& Z( I
C 语言中,把具有相同数据类型的一组数据集合在一起,构成数组。定义格式如下:数据类型数组名[数组元素个数]= {元素列表};3 N- a& z  g; \/ j: p' S
如:chararrzy[7];
/ ?: c) {) x, D2 w/ VcharNum[5]= {0,1,2,3,4};) |6 R/ p; Y4 s/ M
char word[4] = {‘a’,’b’,’c’,’d’};
- i* r' x( W4 u" r8 {; R5 a9 W引用:下标法: g# ]+ o! ~: U9 ^7 O# B4 @
int num[2]={0,1};
2 ?! i% f: K' W) A; bint a;
% e' I4 B" l- q3 I: L+ ?0 `/ Ta = num[1];" j8 Z( X* [! o
三、    端口的并行操作& P6 {7 K  U! B- b/ Y$ [- V7 w
51 单片机端口是 8 位,我们不仅可以单独对每一位进行操作,还可以直接对端口寄存器进行读写操作。如 P0、P1、P2、P3。数码管实验就是直接操作的端口寄存器。
. c: P6 m8 K1 q+ D如 P0 = 0X3F;//显示 0
* q, O  G( f; Y4 F- U* X6 M( h四、    多分支选择语句
, i: z' q5 K- f8 I' t/ v$ i+ ?前几次课,我们学习了循环语句 for 的用法,知道了 for 语句的执行流程。今天,我们再学 习一个分支语句 switch case default。这种语句把一个表达式的值和一个整数或字符常量表中的元素逐一比较。发生匹配时,与匹配常数关联的语句被执行。switch 语句的一般形 式如下:: f4 L; y1 B8 @# Y, z! j
switch(expession)2 K! i, n6 v% c3 n+ c! R* Z
{+ O/ Y, A/ {' R+ h5 G8 H1 s) J; C
caseconstant1:
8 p  v* |* M! q* \0 c6 j5 K0 x* x语句;# C2 n3 H+ H1 h% _9 H
break;
& }+ I0 |! J0 h/ @" P: k: u! qcaseconstant2:9 r2 I) B( R: K$ O
语句;
0 B6 \0 f: C/ A$ d2 l$ X9 s8 lbreak;
2 S9 }  s2 }0 G+ Y# o1 v9 J( y/ J

* F9 g* G' u* z* n; B: k
case constant3:& Q  d2 E8 U: s
语句; break; default: 语句;1 h5 ?/ L; }7 F# a$ S
}
8 W, K5 w& ~# g: v* r8 l
注意:
9 J& j" i/ }  r1、 表达式 expession 必须对整数求值,因此,可使用字符或整数值,但不能使用浮点表达式。% v8 v5 D3 ?! Q! }2 d1 i* F
2、 表达式的值顺序与 case 语句中的常量逐一比较,发生匹配时,与匹配常数关联的语句被执 行。直到遇到 break 语句或到达 switch 语句结尾时停止。: L2 a, I2 e& x. f& V2 {
3、 default 是可选项。  R7 I9 [; R" Z1 Y! B

该用户从未签到

2#
发表于 2022-5-30 14:09 | 只看该作者
基础知识,学习学习

该用户从未签到

3#
发表于 2022-5-30 15:44 | 只看该作者
基础知识,学习学习

该用户从未签到

4#
发表于 2022-5-30 16:29 | 只看该作者
嗯嗯,简单知识
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-15 23:21 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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