proteus光敏电阻电路的arduino仿真

news2025/7/18 23:02:12

虽然Fritzing0.9.10有了仿真的功能,但都是测试板,能够仿真的很有限,所以还是要借助proteus来仿真。这里,我们来实先一个简单的光明电阻的仿真电路。本篇博文,重点演示proteus仿真arduino光敏电阻,arduino采集模拟量必须注意采用分压电路与模拟传感器构成分压电路,及分压电路与模拟信号的采集注意点。

文章目录

  • 一、电路绘制
    • 1、实物图
    • 2、仿真图
  • 二、代码与运行
    • 1、代码
    • 2、运行效果

一、电路绘制

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://blog.csdn.net/haigear/article/details/129392784

文章目录

  • 一、电路绘制
    • 1、实物图
    • 2、仿真图
  • 二、代码与运行
    • 1、代码
    • 2、运行效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/395720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kerberos 域委派攻击之基于资源的约束性委派

CSDN自动迁移博客文章注意区别:约束性委派 不能跨域进行委派,基于资源的约束性委派可以跨域和林如果约束性委派,必须拥有 SeEnableDelegationPrivilege 权限,该特权是敏感的,通常仅授予域管理员。为了使用户/资源更加独…

DDD领域驱动设计初探

DDD 强调领域模型要兼顾业务和技术两个视角。 我们怎么用一套系统化的方法,抽丝剥茧、一步一步地把需求落实到代码呢?咱们看看下面这张图,它表示了领域驱动设计中的主要流程。 领域驱动设计主要的开发流程你可以看到,在整个开发流…

IDEA 实现热部署(社区版)

前言 为什么要热部署? 开发环境下,我们经常对项目代码进行变动,如果每次都重新启动应用会浪费我们大量时间,为此就产生了热部署的方案,可以在不重启的情况下使用新代码。 热部署为了解决的问题有两个: 在开发的时候…

华为网工入门之eNSP小实验(6)--OSPF(一)基础概念及单区域配置

OSPF OSPF属于典型的链路状态路由协议链路状态路由协议的四个步骤: 1.相邻的建立邻居关系2.邻居间的链路间的状态信息(LSA)交互和同步LSDB(链路状态数据库)3.优选路径运算 (SPF算法计算)4.根据最优路径生成路由表项加载到路由表 目前针对ipv4协议使用的是OSPF Version 2(RFC23…

测试测开面试要知道的那些事01

列表与元组的区别列表是动态数组,它们可变且可以重设长度(改变其内部元素的个数)。元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。元组缓存于Python运行时环境,这意味着我们每次使用元组时无…

JAVA进阶 —— 集合进阶

目录 一、 双列集合 二、 Map 1. Map的常见API 2. Map的遍历方式 2.1 第一种遍历方式:键找值 2.2 第二种遍历方式:键值对 2.3 第三种遍历方式:Lambda表达式 三、 Map的三种实现类 1. HashMap 2. LinkedHashMap 3. TreeMap 3.1 练…

python智慧校园线上考试在线比赛答题系统平台源码redis

wx供重浩:创享日记 对话框发送:python考试 获取完整源码源文件说明文档配置教程等 在虚拟环境下输入命令“python manage.py runserver”启动项目,然后,访问“http://127.0.0.1:8000”进入网站首页,如图1所示。 注册用…

jvm之堆解读

堆(Heap)的核心概述 堆针对一个JVM进程来说是唯一的,也就是一个进程只有一个JVM,但是进程包含多个线程,他们是共享同一堆空间的。 一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。 Java堆区…

我把物流装备用到了轨道交通接驳货物上,RGV,输送线,提升机,WCS……

导语大家好,我是智能仓储物流技术研习社的社长,你的老朋友,老K。新书上市《智能物流系统构成与技术实践》2023年度-厂商宣传合作位--->点击详情作者:马洪旭“智能制造”、“智慧物流”、“绿色物流”等高频词汇已成为物流行业的…

作物杂交(spfa()算法)

蓝桥杯集训每日一题acwing3305 作物杂交是作物栽培中重要的一步。 已知有 N 种作物 (编号 1 至 N),第 i 种作物从播种到成熟的时间为 Ti。 作物之间两两可以进行杂交,杂交时间取两种中时间较长的一方。 如作物 A 种植时间为 5 天,作物 B …

NTLM协议原理分析

LM Hash 和 NTLM Hashwindows用户的密码以哈希的形式保存在SAM文件中“%SystemRoot%\system32\config\SAM”。域用户的密码以哈希的形式保存在域控的 NTDS.dit 文件中。 密码的哈希值格式如下用域名:uid:LM哈希:NTLM哈希:::由于LM Hash 有安全缺陷,所以Windows Vist…

88. 合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应…

【Linux】实现简易的Shell命令行解释器

大家好我是沐曦希💕 文章目录一、前言二、准备工作1.输出提示符2.输入和获取命令3.shell运行原理4.内建命令5.替换三、整体代码一、前言 前面学到了进程创建,进程终止,进程等待,进程替换,那么通过这些来制作一个简易的…

Python每日一练(20230308)

目录 1. Excel表列名称 ★ 2. 同构字符串 ★★ 3. 分割回文串 II ★★★ 🌟 每日一练刷题专栏 C/C 每日一练 ​专栏 Python 每日一练 专栏 1. Excel表列名称 给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称。 例如&#xff1…

在 k8S 中搭建 SonarQube 9-community 版本(使用 PostgreSQL 数据库)

本文搭建的 SonarQube 版本是 7.4.9-community,由于在官方文档中声明 7.9 版本之后就不再支持使用 MySQL 数据库。所以此次搭建使用的数据库是 PostgreSQL 11.4 版本。 一、部署 PostgreSQL 服务 1. 创建命名空间 将 PostgreSQL 和 SonarQube 放在同一个命名空间…

02从零开始学Java之Java到底是个啥?

博主简介我是壹壹哥(孙玉昌),十年软件开发授课经验,CSDN博客专家、阿里云专家博主、掘金优秀创作者、infoQ专家博主;关注壹壹哥(孙玉昌),带你玩转Java,轻松实现从入门到放弃,哦不,到熟悉&#x…

【基于STM32的多功能台灯控制】

基于STM32的多功能台灯控制 在之前一篇博文中已出过智能台灯相关的介绍,在这里对之前的模块以及功能上进行了优化和功能上的改进,需源码或实物可私【创作不易-拒绝白嫖】 功能说明 1、按键模式多功能台灯在设计上使用了4个按键分别做为 按键1模式的切换…

2.5 Strassen矩阵乘法

矩阵乘法是线性代数中最常见的问题之一,在数值计算中有广泛的应用。设4和B是两个nxn矩阵,它们的乘积 AB 同样是一个nxn矩阵。A和B的乘积矩阵 C中元素C定义为C 2anw6o1若依此定义来计算4 和B的乘积短阵C,则每计算 C的一个元素C,需要…

如何提高爬虫工作效率

单进程单线程爬取目标网站太过缓慢,这个只是针对新手来说非常友好,只适合爬取小规模项目,如果遇到大型项目就不得不考虑多线程、线程池、进程池以及协程等问题。那么我们该如何提升工作效率降低成本? 学习之前首先要对线程&#…

windows下一键启动vue项目,后台运行cmd命令

1、写好启动vue的bat echo off E: cd E:\project-html\study\vue-demo npm run serve 2、准备vbs脚本,指向bat Set hd CreateObject("Wscript.Shell")hd.run "cmd /c C:\Users\xxh\Desktop\vue-demo.bat",vbhide 3、双击vbs脚本就可以启动了…