第9讲
复习:
1、 51 单片机 P1 口的特点
2、 switch() case{}多分支选择语句
3、 74HC138 译码器
新知识:
1、二维数组定义,引用
2、if 语句
3、8*8 点阵 LED 编码、扫描方式 一、51 单片机 P1 口的特点
P1口的要点:
二、多分支选择语句
前几次课,我们学习了循环语句 for 的用法,知道了 for 语句的执行流程。今天,我们再学 习一个分支语句 switch case default。这种语句把一个表达式的值和一个整数或字符常量 表中的元素逐一比较。发生匹配时,与匹配常数关联的语句被执行。switch 语句的一般形 式如下:
switch(expession)
{
case constant1:
语句 1;
break;
case constant2:
语句 2;
break;
case constant3:
语句 3; break; default: 语句 4;
}
注意:
1、 表达式 expession 必须对整数求值,因此,可使用字符或整数值,但不能使用浮点表达 式。
2、 表达式的值顺序与 case 语句中的常量逐一比较,发生匹配时,与匹配常数关联的语句 被执行。直到遇到 break 语句或到达 switch 语句结尾时停止。
3、 default 是可选项。
三、74HC138 译码器
在我们设计单片机电路的时候,单片机的 IO 数量是有限的,有时并满足不了我们的设计需 求,比如我们正使用的 STC89C52RC 单片机一共是 32 个 IO 口,但是我们为了控制更多的器 件,就要使用一些外围的数字芯片,这种数字芯片由简单的输入逻辑来控制输出逻辑,比如
74hc138 这个 3-8 译码器。
从这个名字来分析,三八译码器,就是把三种输入状态翻译成 8 种输出状态。从图中可以看 到 74HC138 一共有 6 个输入引脚 ,但其中 4、5、6 引脚是使能引脚 ,这三个引脚如果不符 合规定的输入要求,1,2,3 引脚不管你输入的什么电平,Y0 ~ Y7 都是高电平。所以必须 按图示方式连接。大家可以看下面的真值表,输入与输出的对应关系:
四、二维数组
定义:
数组类型 数组名[行数][列数]={元素列表};
如:char arrzy[3][4] = {
{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
};
引用:下标法
五、if 语句 if(表达式)
{
语句 1;
}
else
{
语句 2;
}
当表达式为真时,执行语句 1,否则执行语句 2;其中 else 语句可以省略。 更复杂一点:
if()
{}
else if()
{}
…
else
{}
六、8*8 点阵 LED 编码、扫描方式
以下是数字 0 的编码
与 8 段数码管编码一样,按行扫描,空白处是 0,显示为 1

这是以前给小学生培训单片机做的一套讲义,尽可能的做到了通俗易懂,现分享给大家,绝对的纯原创资料.
全部资料下载地址(共15章,pdf格式):http://www.51hei.com/bbs/dpj-98524-1.html
|