发新帖本帖赏金 50.00元(功能说明)我要提问
返回列表
打印
[资料干货]

模拟量

[复制链接]
992|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
模拟量
        今天我们继续通过米思齐编程软件和物联网开发板进行学习单片机的编程以及开发板的使用。
       在上几节我们已经成功的点亮了小灯并且让他闪烁起来了,那大家有没有想过让小灯不是那么的亮,就是调节他的亮度,我想让他亮他就得亮想让他暗下来他就得暗下来而且不能直接熄灭。我们又没有和开发板有心灵感应我们想什么他就能做什么,那怎么办呢?当然是要进行沟通让单片机知道我们的需求,然后让单片机进行执行工作,怎么办呢?那就得请来翻译米思齐软件让他告诉单片机我们的需求,然后再让单片机执行我们的指令。
       大家肯定发现了简单的数字输出肯定是不能实现了,那怎么才能实现呢?对了那就是我们今天要学习得内容。模拟量
       什么是模拟量呢?数字量信号是0或者1两种状态,模拟量信号和数字量信号是有区别的它不是只有两种状态,它是有起伏的不光有0和1还有0.1-0.2-0.3等等很多种状态。那到底什么是模拟量。这里给大家推荐一个非常容易理解的方式就是烧开水方式,我们生活中大家都烧过水吧他的原理就如同烧开水里水的温度一样,当水在20度时进行加热,水能一瞬间被加热到一百度吗?肯定是不行的它得一点点的升高到30度40度50度52度等等一直到水沸腾100度左右不再升高。模拟量就向烧开水时水的温度一样从20度到100度会有很多个数值组成在一起的抛物线,它有最高点和最低点并且在最高点和最低点之间每个点都是真实存在的。讲的不够清楚?那我们就从实践中去探寻模拟量的真正原理。
       我们打开米思齐编译软件,选择我们使用的开发板型号,我们找到输入输出模块中模拟量输出模块,
将板载LED端口号进行更改到程序中(如果你的开发板板载LED端口不支持模拟量输出可以另接一个LED进行程序的测试)我们先将赋值随便填写个100.
写入开发板试试,
开发板板载小灯亮了,但又不是特别亮(照片显示不是那么明显)。当我们将赋值改为0时】

小灯彻底不亮了。通过查阅资料我们知道了模拟量输出值在0-255之间,也就是说赋值为0小灯熄灭,赋值为255时小灯即可达到最亮。可是我们想改变小灯的亮度总不能每次都改赋值每次都上传程序吧?这也太麻烦了吧?有没有一种方法我们只教他一次他就能让自己完成改变亮度?答案是肯定的,我们今天再引入一个名词-----变量。什么是变量?我们先不用深入了解他的含义,我们只要知道他的字面意思会应用即可。
      我们今天用到的模块在控制里就是它,
然后我们再到变量值中找到变量I
并将I赋值给模拟输出端口。再将I的值赋值为0-255步长为1让小灯越来越亮,如果想变暗那肯定是减少了再将I赋值为255-0步长为-1记住这里是减少所以是-1.程序程序编写好了,
写入开发板试试。???小灯没有变化,哪里出问题了?很多小伙伴已经猜到了没有加延时,因为单片机运行速度非常快我们肉眼很难观察到他的变化,
我们加入10毫秒延时试试这次好了吧.小灯先亮再变暗。是不是很像呼吸灯?
     这里需要强调一点开发板输出的并不是真正意义的模拟量,而是PWM量近似于模拟量,这里大家暂时知道就行,慢慢会有更深入的学习。
     模拟量是不是也没有那么难理解?如果你有对模拟量更深入的了解或者更简单的学习方法,也希望您能将宝贵的方法分享出来。

使用特权

评论回复

打赏榜单

21ic小管家 打赏了 30.00 元 2023-01-09
理由:签约作者奖励

21ic小管家 打赏了 20.00 元 2022-12-09
理由:签约作者奖励

相关帖子

沙发
xu@xupt| | 2022-12-10 13:19 | 只看该作者
学习啦

使用特权

评论回复
板凳
起点116|  楼主 | 2022-12-10 19:55 | 只看该作者
共同学习

使用特权

评论回复
发新帖 本帖赏金 50.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

82

主题

532

帖子

10

粉丝