虽然Fritzing0.9.10有了仿真的功能,但都是测试板,能够仿真的很有限,所以还是要借助proteus来仿真。这里,我们来实先一个简单的光明电阻的仿真电路。本篇博文,重点演示proteus仿真arduino光敏电阻,arduino采集模拟量必须注意采用分压电路与模拟传感器构成分压电路,及分压电路与模拟信号的采集注意点。
一、电路绘制
1、实物图
为了使大家能够在面包板上实现,我用Fritzing绘制了这个电路,我们可以对照以前我们绘制的可变电阻的型号输入(模拟信号输入)电路,他们完全是同样的原理,感兴趣的可以参看我前面的博文《解读arduino读取模拟信号实例》。
这里我们注意,我们采用的模拟端口来获取信号,根据信号的强弱来控制信号灯的开关。那我们这里就必须采用一个分压电路,让光敏电阻和电阻来分压,当光敏电阻值因光照增加而减小时,分压越小,即信号接入点的电压就越高,高到我们设定的值,则13号脚的信号灯就会点亮。
2、仿真图
从原来图来看,与实物图一样,在13号脚上接上了一个信号灯,模拟信号从光敏电阻和10K电阻所组成的分压电路引出。我们采用的是328P的芯片。
这里我们只是简单的为芯片提供了电源,其余的引脚没有做处理,这个在proteus中不影响仿真的效果。但实际电路是需要提供最起码完整的最小系统的。
二、代码与运行
1、代码
以下代码,我们只是简单将13号引脚的输入输出模式设置为输出output,用val接受A5脚读到的电压值,判断如果电压值大于200则信号灯亮起。
// the setup function runs once when you press reset or power the board
void setup() {
pinMode(13,OUTPUT);
}
// the loop function runs over and over again until power down or reset
void loop() {
int val=analogRead(A5);
if(val>200)
digitalWrite(13,1);
else
digitalWrite(13,0);
}
注意,这里的电压值200不等同与我们用电表测量的电压值。
2、运行效果
运行效果如下:
三、总结
模拟量的采集在自动化控制中是比较常见的,需要注意的是我们不能直接将传感器,尤其是模拟传感器信号接在模拟信号采集脚上,这样有可能灌入电流太大造成管脚损坏,如下图:
而且,如上图这么接,我们很难得到一个确定的信号量,这是需要注意的!
本篇博文,重点演示proteus仿真arduino光敏电阻,arduino采集模拟量必须注意采用分压电路与模拟传感器构成分压电路,及分压电路与模拟信号的采集注意点。文章来源:https://www.toymoban.com/news/detail-458844.html
码字不易,转载请注明出处:https://blog.csdn.net/haigear/article/details/129392784
文章来源地址https://www.toymoban.com/news/detail-458844.html
到了这里,关于proteus光敏电阻电路的arduino仿真的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!