arduino程序-MC猜数字2、3、4(基础知识)
- 1-20 MC猜数字2-LED数码管
- 数码管
- LED数码管应用
- 程序示例
- 1-21 MC猜数字3- while
- 回顾
- While循环语句
- Do while循环语句
- 1-22 MC猜数字4-switch case
- If判断myNumber数字显示
- If ... else if
- Switch case
- 示例程序
- 产生随机数字random(0,4) (随机数有0,1,2,3无4)
1-20 MC猜数字2-LED数码管
数码管
一位8段led数码管,
数码管点亮相应的led显示数字
一位8段共阴极led数码管
LED有两极,阴极、阳极,正负极
上方所有的负极的led都接在一起了
公共的有一个负极,共阴极
数码管内部结构如左上,所有数码管的负极都接在了cc引脚上,右侧数码管上下各5个引脚,中间的引脚就是cc引脚
显示数字时要点亮哪几个led,如下
Common cathode(公共的阴极)
LED数码管应用
CC引脚通过电阻接地了(锯齿状表示符号)
数码管7个阳极接在7个arduino引脚上面
还要给7个数码管配上一个电阻,正常是每个led都配上电阻,这里是做实验,简化电路步骤,临时只使用一个电阻
各段连接引脚的号码
显示1
显示3
程序示例
http://www.taichi-maker.com/homepage/arduino-basic-tutorial-index/arduino-basic-tutorial-19/
1-21 MC猜数字3- while
通过对led数码管的控制学习更多知识
获得程序
回顾
7个引脚设置成输出模式
如何对其写的简洁一些
While循环语句
将3到9共7个引脚设置为输出模式,要小心陷入死循环
Do while循环语句
1-22 MC猜数字4-switch case
上节课代码,while循环优化引脚模式代码
If判断myNumber数字显示
使用if分析myNumber数字是几进行输出
更改myNumber数值为1,显示效果如下:
If … else if
上面方法可以工作但不是理想,每次需要多次判断,才能进行后面程序执行,可以优化成else if
进行一次判断
一次逻辑判断执行后面的程序,
两次逻辑判断得到2
如何让程序高效工作
太多的else if ,自己搞乱,程序编译运行过程也会发生问题
Switch case
http://www.taichi-maker.com/homepage/reference-index/arduino-code-reference/switch-case/
示例程序
产生随机数字random(0,4) (随机数有0,1,2,3无4)
程序改成随机数字显示
程序加入delay延时,加入清除显示内容
程序随机显示效果如下