1418 位酷友已加入
电子圈子中包含常用的源代码、电路图、学习教程、产品样本、技术报告等干货资料,加入圈子可以上传、下载资料,也可以使用提问来寻求资料或分享你认为有价值的站外链接~
需要的元件 Arduino UNO LCD 1602 Arduino Tiny RTC I2C模块 24C32存储器 DS1307时钟 Arduino IDE 原理及流程 在本文中,你将学习如何实现监视实时时钟电池并防止电路出现问题的功能。 介绍 在使用时间和日期执行某些任务的多个系统上,使用实时时钟芯片至关重要。但是最大的问题之一是它需要电池才能在系统关闭时保持时间和日期计数。 例如,在计算机上,我们有一个实时时钟,当电池电压低时,时间和日期会显示错误的值。 因此,要解决项目中的此问题,我们可以监视电池电压。因此,当电池电量低于极限值时,系统将发出警报以进行更换。 在本文中,我们将创建一个监视电池的系统,并为用户更换电池生成警报。 项目发展 在这个项目中,我们将创建一个完整的配置和日期和时间表示的系统。我们的目标是仅显示日期和小时,并且主要集中于监视实时时钟的电池。 通过此监视,我们将在LCD上显示日期和时间的同时显示其电压值。如果电压值小于1.5V,系统将警告用户,以通知电池电压过低。此我们在屏幕上显示下图中的低电压警报消息。 屏幕显示低电压消息。 现在,我们将逐步介绍使用Arduino UNO构建一个简单项目的过程。 要构建这个项目,你需要使用图2所示的电路。 监控电池电压的电路电子原理图 通过该电路,可以看到在实时时钟模块中有一个名为VBat的引脚。通过该引脚,我们连接到模拟引脚AN0,以验证电池电压并通知LCD 1602 。 现在,查看项目,我们将学习代码的工作方式。代码如下。 在此代码中,我们进行了LCD ,Real Clock ,其小时初始化和变量声明的配置。 此后,将从实时时钟模块收集数据和小时数。因此,其值显示在LCD 16x2中。 输入日期和小时值后,系统将验证电池电压是否小于或大于1.5V。 如果电压值小于1.5V,则LCD将显示“电量低”消息,如图3所示。这样,系统将向用户发出警报。 LCD显示电量不足消息。 现在,如果电池电压超过1.5V,则LCD会显示电池的日期,时间和电压。如图4所示。 屏幕显示小时数和电池电压。 变量ControlVbat1和ControlVbat2用于在LCD中仅显示一次消息。这样,这些变量会阻止多次显示该消息,并在LCD中产生不良影响。 因此,在需要正确的日期和时间操作的应用中,我们可以使用这种设计来监视电池操作并避免时间故障。 这样,当警告用户时,它可能会更换电池并维持设备的正常运行。 最后 所有需要的文件在下载区均可找到。 via:实时时钟电池监控系统-Hackster.io
需要的元件 Arduino UNO 限位开关传感器 5mmLED 电阻10kΩ Arduino IDE 原理及流程 在本例程中,你将学习如何开发一个系统来检测冰箱中是否有少量冰块。 介绍 如今,一些设备已经配备了智能功能。在这些设备中,我们将重点介绍家用电器。随着时间的流逝,它们不断发展并为我们的房屋带来了许多功能。在这其中,不得不提到冰箱。随着时间的流逝,冰箱已经被开发出用于控制和功能的技术面板来帮助用户。 在某些冰箱中,非常有趣的功能之一就是能够告知冰箱何时只有很少的冰块。这防止用户打开冷冻器并增加电消耗。 考虑到这个问题,我们决定实施一个系统,以在冰柜中的冰块不足时检查并通知用户。 现在,我们将介绍整个电路的设计和编程。 电子电路原理图。 在冰箱中,当盒装的冰块有足够的冰块时,冰块会很重,从而致动限位开关传感器,并且LED会熄灭。否则LED将被点亮,并会通知用户该盒子里只有几块冰块。 如下图,电路表示在面包板上。 电子电路的表示。 该系统很简单,但是有一些信息可以讨论以下几点: 这个简单的系统可能会影响你无需打开冰箱检查是否有冰的事实。 我可以举例说明一个愿景,即工程师所拥有的并使产品与许多其他产品有所不同,并为用户创造价值和新颖性的事实。 像这样的简单系统,由于避免了用户打开检查是否有冰的机会,因此可以减少用户的能源消耗; 放置Arduino或任何其他微控制器的事实是为了演示家用电器和其他设备的系统如何“智能”。像我说的,像这样的小型系统,再加上冰箱拥有的所有其他系统,将成为一种创新产品。 该冰箱除了具有该系统来检测何时只有很少的冰外,还设计了一个系统来在其中一扇门打开时产生声音信号。这很简单,但是它们直接影响产品创新。 我们想在本文中介绍的是:简单的想法可以产生伟大的创新。 现在,在了解了电路的工作原理之后,现在是学习如何对该项目进行编程的时间。 开发项目 该项目具有简单电路。在图1中示出了电子示意图。 在所示的电路中,按钮用于表示限位开关传感器。工作项目非常简单。 在冰箱中,当盒子中的冰块未融化时时,它会变得很重,从而致动限位开关传感器,并且LED会熄灭。否则LED将被点亮,并将通知用户该盒子将装有几个冰块。 下文介绍了用于对项目进行编程的代码。 在代码中,我们声明了LimitSwitch变量来存储按钮的插针状态。因此,在循环中,系统将验证其值。 如果按钮的插针状态为0,则系统认为限位开关传感器未启动,并且系统中的冰块很少。这样,LED将被激活,如图3所示。 表示冰盒内少量冰块的系统。 现在,如果系统中装有足够的冰块,并且激活了限位开关传感器,则LED将被停用,如图4所示。 表示冰盒内有冰块的系统。 如今,已经存在具有此功能的冰箱。如你所见,该系统非常容易实现,并向用户提供了有关冰柜中冰块数量的简单信息。 最后 所有需要的文件在下载区均可找到。 via:冰箱中的冰块检测系统-Hackster.io
Windows远程控制Arduino 使用Windows远程控制Arduino打开和关闭LED。 需要的元件 Arduino UNO BlueSMiRF蓝牙调制解调器 杜邦线 电阻330Ω 5mm绿色LED Arduino IDE 原理及流程 在此项目中,我们将使用Windows远程Arduino打开和关闭LED。这是一个简单的示例,但是将展示该示例可以帮助你创建更多高级项目的功能。让我们开始吧! 你可以在此处下载“样本”存储库。此示例是相应的平台文件夹Win10或Win8.1中的“ RemoteBlinky”。可下载的示例包括用于USB和蓝牙连接的代码,而本指南主要介绍了蓝牙(带有一些简短的USB辅助功能),因为它涉及额外的硬件步骤并且功能更加强大。 你也可以通过网络连接到Arduino,但是你需要WiFi屏蔽或以太网屏蔽。可以在下面直接链接的Windows Remote Arduino存储库页面上找到更多说明。 你可以在此处找到Windows Remote Arduino存储库。 你也可以在下载区找到该文件。 编程Arduino 首先,让我们对Arduino进行编程。 下载并安装Arduino软件。 使用USB将Arduino设备连接到计算机。 启动Arduino应用程序。 确认你在Tools > Board下选择了正确的Arduino主板 确认在“Tools > Port下选择了正确的COM端口 在Arduino IDE中,导航至File > Examples > Firmata > StandardFirmata 验证StandardFirmata将为你的连接使用正确的波特率。(请参见下面有关波特率的注释) 按“Upload”将StandardFirmata部署到Arduino设备。 波特率 StandardFirmata使用串行线路与蓝牙设备或通过USB进行通信。默认情况下,它使用的波特率为57,600 bps。根据蓝牙设备的配置,你可能需要修改该速率。可以在 方法中找到它setup,如下所示: 将此值更改为正确的波特率。对于USB,此值可以在设备上和Windows Remote Arduino连接参数中进行配置。如果你使用的是蓝牙,则波特率取决于你使用的设备。 硬件设置 你始终可以使用USB,WiFi或以太网连接来开始,但是让我们简单地介绍一下蓝牙设备和LED的连接,我们将使用Windows Remote Arduino库通过蓝牙打开和关闭LED! 将面包板上的电源轨和接地轨分别连接到Arduino的5V和GND引脚。使用红色和黑色的导线可以轻松跟踪电源连接。 将你的蓝牙设备插入面包板上,并将VCC和GND引脚分别连接到面包板上的电源和接地轨。 将蓝牙设备上的TX-0引脚连接到Arduino上的RX引脚。同样,将蓝牙设备上的RX-1引脚连接到Arduino上的TX引脚。 请注意,图像中的黄线从蓝牙设备的发送引脚到Arduino的接收引脚,反之亦然。此步骤对于在蓝牙设备和Arduino之间建立串行通信至关重要,这允许从一个设备传输的消息被另一设备接收。 建立此连接之前,请确保你的代码已经上传到Arduino。Arduino Uno使用相同的串行(TX和RX)引脚来刷新设备,从而防止了将其他设备连接到这些串行引脚时将任何代码上传到设备。 在面包板上添加一个LED。请注意,较长(或弯曲)的支路是阳极(正),较短的支路是阴极(负)。 使用330Ω电阻将LED的阴极连接到面包板的接地轨。如图所示,一个330Ω的电阻为橙色,橙色,棕色,金色条纹。 将LED的阳极连接到Arduino上的任何数字I / O引脚。在示例中,我们使用的是引脚13。 现在你的设置已准备就绪!它的外观应类似于下图所示。 代码 Arduino Sketch (Firmata) 安装Arduio Firmata库: 转到Sketch menu / Include Library / Manage Library并搜索“ Firmata ”并安装该库的最新版本。 现在从File / Examples / Firmata / StandardFirmata中打开并上传“ StandardFirmata ”示例。 在Arduino端完成后,现在我们转到Windows Universal Platform App。 Windows通用平台应用程序 在此处下载示例存储库。下载区也可找到。 现在我们已经完成了所有的设置,让我们写入代码代码! 建立你的项目 我已经按照安装指南中的步骤设置了一个名为RemoteBlinky的项目。在下面的屏幕快照中,你将看到代码隐藏文件MainPage.xaml.cs,该文件仅创建一个蓝牙连接对象并将其传递给构造函数中的RemoteDevice类。你将看到在此示例中我指定了设备名称。你还可以通过.listAvailableDevicesAsync() 在构造对象之前调用BluetoothSerial(和USBSerial)类的静态功能来枚举可用的设备。 USB注意: USBSerial 有许多选项可用于指定你的设备。在构造函数中,你可以提供设备的VID和PID,仅VID或DeviceInformation 对象(从上述listAvailableDevicesAsync 函数获得)。同样,BluetoothSerial 允许你提供设备ID(作为字符串),设备名称(也是字符串)或DeviceInformation 对象。 你可以按照以下步骤获取USB设备的VID和PID组合: 通过控制面板或同时按Windows +暂停键并选择左侧的设备管理器链接,打开设备管理器。 展开端口(COM和LPT)菜单 右键单击你的Arduino设备并选择属性 在详细信息选项卡上,从下拉菜单中选择“硬件ID ”。 你可能会在“*值”*框中看到多个条目,但是任何条目都将具有匹配的PID和VID。 这些条目的格式为“ USB \ VID _ ****&PID _ ”,其中是数字ID值。 USBSerial usb = new USBSerial( "VID_2341", "PID_0043" ); 用来保证仅可用于以下硬件设备: 接下来,我将向RemoteDevice对象的DeviceReady事件添加一个回调函数。连接蓝牙设备并且所有必要的设置均已初始化时,将自动调用此功能。你会注意到,目前我尚未在该函数中实现任何功能。最后,调用.begin()连接对象以使其连接。 USB注意: 该.begin()功能的参数对于蓝牙无关紧要,但是你必须在Arduino和UsbSerial对象(第一个参数)上使用相同的波特率。另外,第二个参数必须为“ SerialConfig.8N1"。无论你使用哪种连接类型,本示例的其余部分都将完全相同。 跳转到MainPage.xaml文件并创建几个按钮,这些按钮将打开和关闭一个LED。你会注意到我已经向Click 事件添加了按钮回调,并将属性设置IsEnabled为false,你将在下一步看到为什么。 在这一步中,我已经实现了三个功能。首先,该OnDeviceReady 功能现在启用UI线程上的按钮!这样可以确保仅在蓝牙连接准备就绪时才启用按钮,因为通常需要几秒钟的时间。 我还在.digitalWrite()按钮回调中设置了呼叫OnButton_Click,OffButton_Click 构建和部署!建立连接后,你的按钮将启用,你可以随意打开和关闭LED!这是在Windows Phone 10上运行的此基本示例的屏幕截图。 至此项目完成。 最后 所有需要的文件在下载区均可找到。 via: Windows远程Arduino-Arduino项目中心
组件和用品 Ard nano Arduino Maxim 集成I2C 实时时钟 按钮开关 主导矩阵模块 32x8 关于此项目 时钟有许多特点: 基本模式,大数字 滑动模式,其中数字滚动和关闭屏幕 带秒模式的小数字 用文字书写的时间,例如"十过去十二点" 日期显示 12/24 小时选项 亮度选项 随机时钟模式选项,每隔几个小时更改一次显示模式。 按钮驱动的菜单进行设置和显示选择。 所有需要的文件在下载区均可找到。 via:https://create.arduino.cc/projecthub/mircemk/mini-led-matrix-clock-d4f5f5?ref=platform&ref_id=424_trending___&offset=252
组件和用品 Arduino 面包板 跳线(通用) LED(通用) Arduino USB 2.0 数据电缆 电阻 100 欧姆 关于此项目 这个简单的小项目使用 Arduino 和一些 LED 来复制红绿灯。它使用代码作为内部计时器,并继续运行,直到切断 Arduino 的电源。 所有需要的文件在下载区均可找到。 via:https://create.arduino.cc/projecthub/techno_z/arduino-traffic-light-simulator-2ec9f7?ref=platform&ref_id=424_trending___&offset=273
组件和用品 Arduino DHT22 温度传感器 蓝色 16×2 LCD 模块 无焊面包板全尺寸 9V 电池 USB-A USB电缆 跳线 关于此项目 本教程是该项目的基础。本教程中没有任何自动化。只需使用 DTH22 和 LCD I2C 显示屏。 所有需要的文件在下载区均可找到。 via:https://create.arduino.cc/projecthub/giftedmedia/arduino-dth22-humidity-temperature-with-lcd-i2c-16x2-display-8fe3c9?ref=platform&ref_id=424_trending___&offset=236