Arduino入门到精通 例程14-倾斜开关
- 格式:doc
- 大小:1.93 MB
- 文档页数:4
用Arduino编程制作小型电子开关——详细教案。
本教案将向大家介绍如何使用 Arduino 编程制作一个能够控制LED 灯的小型电子开关,包括搭建电路、编写程序以及使用功能扩展板等多个方面。
一、电路搭建我们需要准备以下材料:1、Arduino UNO 开发板;2、830 孔面包板;3、LED 灯一颗;4、220 Ω 电阻一只;5、跳线若干。
按照以下步骤搭建电路:1、将 Arduino 开发板连接到面包板上,扎上跳线;2、连接 LED 灯到面包板上,并在正极与负极之间串联一个 220 Ω 电阻;3、将 LED 灯的正极连到 Arduino 开发板的 13 号引脚上,将负极连到 GND 引脚上。
二、编写程序1、编写代码前,我们需要打开 Arduino IDE 开发环境,然后输入以下代码:void setup() {pinMode(13, OUTPUT); // 设置 13 为输出口}void loop() {digitalWrite(13, HIGH); // 打开 LED 灯delay(1000); // 延迟 1 秒digitalWrite(13, LOW); // 关闭 LED 灯delay(1000); // 延迟 1 秒}以上代码作用是,将 Arduino 引脚 13 设置为输出口(即控制LED 灯的开关状态),然后循环打开 LED 灯 1 秒钟并延迟 1 秒钟关掉 LED 灯。
这是一个简单的 LED 灯闪烁效果。
2、将代码上传到 Arduino 开发板。
将开发板串口连接到计算机上,打开 Arduino IDE 开发环境,然后依次点击「文件」->「示例」->「01.Basics」->「Blink」,然后将代码上传到开发板上。
三、使用功能扩展板功能扩展板是一种将 Arduino 开发板扩展功能的装置,可以扩展各式各样的传感器和模块。
我们可以使用功能扩展板来制作一个更为复杂的小型电子开关。
Arduino编程入门作者:来源:《电脑报》2019年第01期一、倾斜开关控制LED灯的亮灭实验器件:滚珠开关:1个 LED灯:1个220Ω电阻:1个多彩面包板实验跳线:若干1.实验连线将控制板、扩展板子、面包板连接好(图1),下载线接好,然后将LED灯连接到数字8引脚,滚珠开关连接到模拟5引脚。
2.实验原理当开关一端低于水平位置倾斜,开关导通,模拟口电压值为5V左右(数字二进制表示为1023),点亮LED灯。
当另一端低于水平位置倾斜,开关停止,模拟口电压值为0V左右(数字二进制表示为0),熄灭LED 灯。
在程序中模拟口电压值是否大于2.5V左右(数字二进制表示为512),即可知道是否倾斜开关导通了。
3.程序参考void setup(){pinMode(8,OUTPUT);//设置数字8引脚为辒出模式}void loop(){int i;//定义发量iwhile(1){i=analogRead(5);//读取模拟5口电压值if(i>512)//如果大于512(2.5V){digitalWrite(8,LOW);//点亮LED灯}else//否则{digitalWrite(8,HIGH);//熄灭LED灯}}}实验现象:手拿着面包板,当倾斜到一定程度时,LED被点亮。
没有倾斜时,led不亮(图2)。
倾斜到一定程度时,LED被点亮(图3),实际应用中控制的通常是继电器。
二、火焰报警实验1.认识火焰传感器火焰传感器(即红外接收三极管,图4)是机器人专门用来搜寻火源的传感器,本传感器对火焰特别灵敏。
实物如图:2.工作原理火焰传感器利用红外线对火焰非常敏感的特点,使用特制的红外线接收管来检测火焰,然后把火焰的亮度转化为高低变化的电平信号,输入到中央处理器,中央处理器根据信号的变化做出相应的程序处理。
3.火焰传感器的连线红外接收三极管的短引线端为负极,长引线端为正极。
按照下图将负极接到5V接口中,然后将正极和10K电阻相连,电阻的另一端接到GND接口中,最后从火焰传感器的正极端所在列接入一根跳线,跳线的另一端接在模拟口中,如图5。
Arduino 入门教程(14)—自制风扇这次,我们会做一个小风扇。
同时会接触两件新元件——继电器、直流电机。
继电器,我们可以理解为是用较小的电流去控制较大电流的一种“自动开关”。
在这里,继电器是用来控制电机转动的。
所需材料1×5mm LED 灯2×220 欧电阻1×按钮1×继电器HRS1H-S -DC5V1×小电机1 ×风扇叶片STEP 1:硬件连接按下图进行连线,按钮连接到数字2。
按钮一端连接5V,另一端连接 GND,并用一个 220Ω的电阻作为下拉电阻,以防引脚悬空干扰。
继电器有6 个引脚,分别标有序号。
1,2 引脚为继电器的输入信号,分别接Arduino 的数字引脚和 GND。
3,4,5,6 为继电器输出的控制引脚,这里只使用4,6 两个引脚。
我们把继电器想成一个开关,开关也只要用到两个引脚。
STEP 2:输入代码1. int buttonPin = 2; // button连接到数字22. int relayPin = 3; // 继电器连接到数字33. int relayState = HIGH; // 继电器初始状态为HIGH4. int buttonState; // 记录button当前状态值5. int lastButtonState = LOW; // 记录button前一个状态值6. long lastDebounceTime = 0;7. long debounceDelay = 50; //去除抖动时间8.9. void setup() {10. pinMode(buttonPin, INPUT);11. pinMode(relayPin, OUTPUT);12.13. digitalWrite(relayPin, relayState); // 设置继电器的初始状态14. }15.16. void loop() {17. int reading = digitalRead(buttonPin); //reading用来存储buttonPin的数据18.19. // 一旦检测到数据发生变化,记录当前时间20. if (reading != lastButtonState) {21. lastDebounceTime = millis();22. }23.24. // 等待50ms,再进行一次判断,是否和当前button状态相同25. // 如果和当前状态不相同,改变button状态26. // 同时,如果button状态为高(也就是被按下),那么就改变继电器的状态27. if ((millis() - lastDebounceTime) > debounceDelay) {28. if (reading != buttonState) {29. buttonState = reading;30.31. if (buttonState == HIGH) {32. relayState = !relayState;33. }34. }35. }36. digitalWrite(relayPin, relayState);37.38. // 改变button前一个状态值39. lastButtonState = reading;40. }41.通过按键,可以控制电机和LED 的开和关。
51单片机搭建简单的倾斜开关检测系统代码近年来,随着科技的不断发展,单片机技术也得到了广泛的应用和发展。
在生产和生活中,倾斜开关检测系统已经成为一种普遍的检测手段,用来检测物体在倾斜或倾倒时的状态。
下面我们就来介绍一下如何搭建一个简单的倾斜开关检测系统。
1. 硬件设备准备首先需要准备的是硬件设备,我们需要一个51单片机芯片、一个倾斜开关、和一些杜邦线等辅助设备。
2. 硬件连接将倾斜开关的引脚通过杜邦线连接到单片机芯片的IO口上,其中两个引脚分别连接到单片机的P3.0和GND口上。
3. 软件编程接下来就是软件编程的环节了,我们需要借助Keil μVision和STC-ISP软件等开发环境进行编程。
代码如下:include "reg51.h"define uchar unsigned chardefine uint unsigned intsbit TiltSwitch = P3^0; // 定义倾斜开关引脚为P3.0口void main(){while(1){if(TiltSwitch == 0) // 检测倾斜开关状态{P1 = 0x00; // P1口输出低电平}else{P1 = 0xff; // P1口输出高电平}}}以上代码通过定义倾斜开关引脚为P3.0口,并通过判断倾斜开关状态,控制单片机的P1口输出高低电平,实现了倾斜开关检测系统的功能。
4. 系统应用搭建好倾斜开关检测系统后,我们可以将其应用在实际生活中。
例如,可以放置在水杯下面,若水杯倾斜,倾斜开关便会检测到状态变化,从而发出警报提醒使用者水杯正在倾斜,避免水杯翻倒将水洒出来,并可能烫伤使用者。
总结:通过以上介绍,相信大家对如何搭建一个简单的倾斜开关检测系统有了更深的了解,同时也能够发现单片机技术在实际生活中的广泛应用。
希望大家能够根据这个简单的系统,不断开发更多实用的功能,为我们的生活带来更多便利和安全。
Arduino⼿把⼿⼊门教程Arduino⼊门教程简单说,Arduino是⼀块AtmegaX8的开发板,带BootLoader,通过USB转串⼝和电脑通信。
Arduino把AtmegaX8的功能做了简化,以⽅便开发,并提供完整的IDE开发环境。
Arduino在国外⾮常⽕,主要⽤来做【互动多媒体】,因为从事【互动多媒体】多半是⽂科⽣,所以功能尽可能的简化。
⼯程师级别的对Arduino不感冒,认为Arduino侮辱了他们的智商。
实际上Arduino对最⼤的强项是提供了丰富的库资源,⼏乎任何外设,是要在google上敲⼊关键字 + Arduino,就可以得到你想要的。
例如:google输⼊:PCF8574 ArduinoArduino是⼀块简单、⽅便使⽤的通⽤GPIO接⼝板,并可以通过USB接⼝和电脑通信。
作为⼀块通⽤IO接⼝板,Arduino提供丰富的资源,包括:13个数字IO⼝(DIO数字输⼊输出⼝);6个PWM输出(AOUT可做模拟输出⼝使⽤);5个模拟输⼊⼝(AIN模拟输⼊)。
Arduino开发使⽤java开发的编程环境,使⽤类c语⾔编程,并提供丰富的库函数。
Arduino可以和下列软件结合创作丰富多彩的互动作品:Flash,Processing,Max/MSP,VVVV…等。
Arduino也可以⽤独⽴的⽅式运作,开发电⼦互动作品,例如:开关控制Switch、传感器sensors输⼊、LED等显⽰器件、各种马达或其它输出装置。
Arduino特⾊1. Arduino的IDE是免费、开源的。
2. Arduino的硬件也是开源的,包括原理图和PCB图。
3. Arduino的所有资源都可以免费下载,并且可依需求⾃⼰修改!4. Arduino的附件只需1根USB线,编程、烧写⼀键搞定。
5. Arduino使⽤低价格、容易购买的微处理控制器ATMEGA168。
6. ⽀持多种互动软件:Flash,Max/Msp,VVVV,PD,Processing等。
Arduino入門版使用教程目錄介紹篇 (1)一、Arduino 基礎套裝介紹 (2)1、什麼是Arduino 基礎套裝? (2)2、元件清單 (2)二、Arduino 介紹 (4)1、什麼是Arduino? (4)2、特色描述 (4)3、性能描述 (4)三、Arduino C 語言介紹 (6)1、關鍵字和符號 (6)2、結構 (9)3、功能 (9)四、Arduino 使用介紹 (11)1、準備好你的Arduino 板 (11)2、下載Arduino 開發環境 (13)3、安裝USB 驅動 (13)4、連接LED 燈電路 (17)5、打開arduino 開發環境 (18)6、打開已有程式 (19)7、編譯程式 (20)8、下載程式 (23)五、麵包板使用介紹 (30)1、麵包板介紹 (30)2、麵包板的使用 (30)實驗篇 (34)第一節多彩led 燈實驗 (35)一、發光二極管介紹 (35)二、簡單的控制一個led 燈的閃爍實驗 (39)三、廣告燈效果實驗 (41)第二節蜂鳴器實驗 (48)一、蜂鳴器介紹 (48)二、蜂鳴器模擬救護車警笛聲音實驗 (50)第三節數碼管實驗 (54)一、數碼管介紹 (54)二、數碼管顯示數字的實驗 (56)第四節按鍵實驗 (63)一、按鍵介紹 (63)二、按鍵控制led 等亮滅實驗 (65)三、擲骰子實驗 (67)第五節傾斜開關實驗 (74)一、傾斜開關介紹 (74)二、傾斜開關控制led 燈的亮滅 (75)第六節光控聲音實驗 (79)一、光敏電阻介紹 (79)二、光控聲音實驗 (80)第七節火焰報警實驗 (84)一、火焰傳感器介紹 (84)二、火焰報警實驗 (85)第八節搶答器實驗 (90)第九節溫度報警實驗 (98)一、溫度傳感器介紹 (98)二、溫度報警實驗 (99)第十節紅外遙控 (103)一、紅外接收頭介紹 (103)二、紅外遙控實驗 (104)介紹篇一、Arduino 基礎套裝介紹1、什麼是Arduino基礎套裝?Arduino基礎套裝是精心為初學者設計的一款學習工具。
Arduino是什么?开始讲之前跟大家普及一个知识点,Arduino是一个意大利品牌。
Arduino是一个开放源码电子原型平台,拥有灵活、易用的硬件(各种开发板)和软件(arduino IDE也就是编程器)。
吉安优创电子科技有限公司作为arduino国内为数不多的正版授权公司,坚持正版。
打击抵制各类盗版,改版,兼容版的侵权行为,也奉劝广大消费者不要去购买,以免带来不必要的麻烦。
Arduino专为设计师,工艺美术人员,业余爱好者,以及对开发互动装置或互动式开发环境感兴趣的人而设的。
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。
板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器对Arduino的编程是利用 Arduino编程语言 (基于 Wiring)和Arduino开发环境(based on Processing)来实现的。
基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。
如何学习arduino认识Arduino UNOArduino UNO是Arduino入门的最佳选择,在编著本书时,其最新的版本为UNO R3,本书大部分内容都是基于Arduino UNO R3写成的。
Arduino UNO的详细组成信息如下图所示。
1. 电源(Power)Arduino UNO有三种供电方式:●通过USB接口供电,电压为5V;●通过DC电源输入接口供电,电压要求7~12V;●通过电源接口处5V或者VIN端口供电,5V端口处供电必须为5V,VIN端口处供电为7~12V。
2.指示灯(LED)Arduino UNO带有4个LED指示灯,作用分别是:● ON,电源指示灯。
当Arduino通电时,ON灯会点亮。
Arduino电路控制入门教程第一章:Arduino简介Arduino是一款开源电子平台,将硬件和软件相结合,用于创建各种电子项目。
它基于开放式软、硬件设计,非常适合初学者和专业人士。
Arduino的优势在于其易用性、可扩展性和灵活性,使其成为学习和实践电路控制的理想工具。
第二章:Arduino基础知识2.1 Arduino硬件组成Arduino主板包括一个微控制器,具有多个数字和模拟输入/输出引脚。
此外,还有一个USB接口用于与计算机通信,以及用于供电和编程的连接器。
2.2 Arduino编程语言Arduino使用C/C++编程语言,开发者可以使用Arduino IDE (集成开发环境)进行编码。
Arduino语言基于Wiring语言,具有简单易学的特点,适合初学者。
第三章:Arduino基本操作3.1 安装Arduino IDE下载Arduino IDE并根据安装向导进行安装。
启动IDE后,用户可以选择Arduino板型及端口。
3.2 第一个Arduino项目编写一个简单的程序来控制Arduino上的LED灯。
使用digitalWrite函数控制引脚的电平,通过设置为HIGH或LOW来打开或关闭LED灯。
第四章:数字输入与输出4.1 数字输入使用digitalRead函数读取数字输入引脚上的状态。
通过判断引脚为HIGH还是LOW,可以实现不同的应用,如按键检测或传感器数据获取。
4.2 数字输出使用digitalWrite函数控制数字输出引脚的状态。
通过设置引脚为HIGH或LOW,可以控制外部电路的开关状态,实现各种控制任务。
第五章:模拟输入与输出5.1 模拟输入Arduino具有一些模拟输入引脚,可以通过analogRead函数读取引脚上的模拟电压值。
这对于读取传感器数据或监测环境变量非常有用。
5.2 模拟输出Arduino可以通过PWM(脉宽调制)方式在数字输出引脚上生成模拟电压。
analogWrite函数可以设置引脚上的占空比,从而控制输出电平的变化。
ARDUINO入门及其简单实验(7例) (1)1. Arduino硬件开发平台简介 (1)1.1 Arduino的主要特色 (2)1.2 Arduino的硬件接口功能描述 (3)1.3 Arduino的技术性能参数 (3)1.4 电路原理图 (4)2. Arduino软件开发平台简介 (5)2.1 菜单栏 (5)2.2 工具栏 (6)2.3 Arduino 语言简介 (6)3. Arduino开发实例中所用部分器件 (8)1. LED简介 (8)2. 光敏电阻简介 (9)3. 直流电机简介 (9)4. 电位器简介 (10)4. Arduino平台应用开发实例 (10)4.1【实作项目一】利用LED作光敏电阻采样实验 (10)4.2【实作项目二】利用PWM信号控制LED亮度 (12)4.3【实作项目三】单键控制一只LED的亮灭 (15)4.4【实作项目四】利用PWM控制直流电机转速 (17)4.5【实作项目五】利用电位器手控LED亮度 (19)4.6【实作项目六】控制LED明暗交替 (21)4.7【实作项目七】利用光敏电阻控制LED的亮灭 (23)ARDUINO入门及其简单实验(7例)1. Arduino硬件开发平台简介Arduino硬件是一块带有USB的I/O接口板(其中包括13条数字I/O引脚,6通道模拟输出,6通道模拟输入),并且具有类似于Java、C语言的集成开发环境。
Arduino 既可以扩展一些外接的电子元器件,例如开关、传感器、LED、直流马达、步进马达或其他输入、输出装置;Arduino也可以独立运行,成为一个可以跟交互软件沟通的接口装置,例如:Flash、Processing、Max/MSP、VVVV或其他互动软件。
Arduino 开发环境IDE全部开放源代码,可以供大家免费下载、利用,还可以开发出更多激发人们制作欲望的互动作品。
如图1和图2所示,分别为Arduino硬件平台的实物图和电路布局图。
Arduino 入门到精通例程14
倾斜开关实验
倾斜开关控制led灯的亮灭
实验器件
滚珠开关:1个 Led灯:
1个 220Ω电阻:1个
多彩面包板实验跳线:若干
2、实验连线
按照Arduino教程将控制板、扩展板子、面包板连接好,下载线接好。
然后将led灯连接到数字8引脚,滚珠开关连接到模拟5引脚。
3、实验原理当开关一端低于水平位置倾斜,开关寻通,模拟口电压值为5V左右(数字二进制表示为1023),点亮led 灯。
当另一端低于水平位置倾斜,开关停止,模拟口电压
值为0V左右(数字二进制表示为0),熄灭led 灯。
在程序中模拟口电压值是否大于2.5V左右(数字二迕制表示为512),即可知道是否倾斜开关导通了。
程序参考:
void setup()
{
pinMode(8,OUTPUT);//设置数字8引脚为辒出模式
}
void loop()
{
int i;//定义发量i
while(1)
{
i=analogRead(5);//读叏模拟5口电压值
if(i>512)//如果大于512(2.5V)
{
digitalWrite(8,LOW);//点亮led灯
}
else//否则
{
digitalWrite(8,HIGH);//熄灭led灯
}
}
}
实验现象:手拿着面包板,当倾斜到一定程度时,LED被点亮。
没有倾斜时,led不亮。
倾斜到一定程度时,LED被点亮,实际应用中控制的通常是继电器。
实验结束。
谢谢。