digital write

「雕爷学编程」Arduino动手做(40)——旋转编码器模块

一笑奈何 提交于 2021-02-12 22:54:24
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。 【Arduino】168种传感器模块系列实验(资料+代码+图形编程+仿真编程) 实验四十:360度旋转增量编码器模块(KY-040) EC11旋转编码器 也叫开关编码器、旋转编码器,EC11系列编码器有直插编码器、贴片式编码器、沉板式编码器、侧插式编码器,EC11A为直插式编码器。因广泛用于车载DVD、车载导航、汽车影音上,也经常被人称为汽车编码器。EC11编码器在各类仪器设备中用于频率、音量、速度、温度、电压、菜单选择、光线强弱等参数的控制。此款编码器有做20脉冲20定位点、15脉冲30定位点两种。调节轴有金属柄和塑胶柄,轴长区间9-30mm,调节轴有全柄、半柄、螺纹柄等类型供您选择。EC11系列编码器主要用于汽车电子、多媒体音响、仪器仪表、家用电器、智能家居、计算机周边、医疗器械等领域。主要用于频率调节、亮度调节、温度调节、音量调节的参数控制等。 技术参数 使用温度范围:-30℃ to+80℃ 保存温度范围: -40℃ to+85℃ 额定电压:DC 5V(最高12V) 全回转角度

「雕爷学编程」Arduino动手做(13)——触摸开关模块

偶尔善良 提交于 2021-02-12 22:27:49
37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备逐一做做实验,不管能否成功,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。 【Arduino】66种传感器模块系列(专业资料+实验代码+图形仿真) 实验之十三:数字触摸开关传感器模块 触摸模块 1、工作电压:DC 3-5V 2、主要器件:运放,三极管 3、尺寸:长45mmX宽18mmX高5mm 该模块是一个基于触摸检测IC(TTP223B)的电容式点动型触摸开关模块。常态下,模块输出低电平,模式为低功耗模式;当用手指触摸相应位置时,模块会输出高电平,模式切换为快速模式;当持续12秒没有触摸时,模式又切换为低功耗模式。可以将模块安装在非金属材料如塑料、玻璃的表面,另外将薄薄的纸片(非金属)覆盖在模块的表面,只要触摸的位置正确,即可做成隐藏在墙壁、桌面等地方的按键。该模块可以让你免除常规按压型按键的烦恼。 模块参数 模块特点: 1、点动型:初态为低电平,触摸为高电平,不触摸为低电平(类似轻触按键功能) 2、低功耗 3、供电电源可为2~5.5V DC 4、正反面均可作为触摸面,可替代传统的轻触按键 5、4个M2螺丝定位孔,便于安装 动作注释:先轻触点动型触摸传感器

「雕爷学编程」Arduino动手做(19)—震动报警模块

 ̄綄美尐妖づ 提交于 2021-02-12 04:29:46
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。 【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真) 实验十九:常闭型SW-420震动开关传感器报警模块 震动开关 正确的名称应该称为震动传感器,也就是在感应震动力大小将感应结果传递到电路装置,并使电路启动工作的电子开关。震动开关主要应用于电子玩具、小家电、运动器材以及各类防盗器等产品中。震动开关因为拥有灵活且灵敏的触发性,成为许多电子产品中不可或缺的电子元件。 元件结构图 工作原理 平时任何角度开关都是接通状态,受到振动或移动时,开关内导通电流的滚轴会产生移动或振动,从而导致通过的电流断开或电阻阻值的升高而触发电路。这种开关的特点是平时一般处于导通状态耐振动时会短暂断开,所以它的灵敏度很高,通过IC的设置,客户可按自身产品的灵敏度要求作调整。 元件材质 1 带引线铜帽 黄铜管镀镍、引线为红铜镀锡 2 导针 黄铜底层镀镍-表层镀金 3 滚珠 不锈钢珠镀银或镀金 4 热收缩管 PE热收缩管/PET热收缩管 5 封口胶粒 PC 性能介绍 1、SW

基于Arduino和Blynk平台的远程控制智能小车

时光怂恿深爱的人放手 提交于 2021-02-05 03:05:18
/------转载请附上本文链接 https://www.cnblogs.com/blogs-192-168-9-222/p/11506638.html -------啦啦啦我是快乐的分割线- ------------/ 小车图片😀ε=ε=ε=(~ ̄▽ ̄)~,其实很简单一起来看看叭 废话不多说。首先做这个智能小车所需要的东西有 硬件支持: 1.Arduino Uno 开发板 2.L298N电机驱动模块 3.ESP8266芯片一块 4.SG90舵机一个 5.HC-SR04超声波模块一个 6.一些杜邦线 7.7.4V(5600mA)锂电池充 8.四个直流电机和一个四轮车底盘(某宝上十几块钱的就都有,只是要自己拼装) 软件支持: 1.Arduino IDE 2.Blynk App(手机安卓客户端) 东西都备齐了就可以动手开始做啦。做这个东西从学习arduino到制作完成一共用了大约10天,中间还有七七八八的事情,总算制作完成了 L298N Arduino Uno ESP8266 HC-SR04超声波模块 SG90 舵机 ------------------------------------------制作过程------------------------------------------------ 一、对软件Arduino IDE要下载一些外加库和一些处理 1.文件-首选项

【Arduino】使用C#实现Arduino与电脑进行串行通讯

时光毁灭记忆、已成空白 提交于 2021-01-13 19:06:10
在给Arduino编程的时候,因为没有调试工具,经常要通过使用串口通讯的方式调用Serial.print和Serial.println输出Arduino运行过程中的相关信息,然后在电脑上用Arduino IDE的Serial Monitor来查看print出来的信息。Serial Monitor不仅可以接受Arduino发送到电脑的数据,还可以向Arduino发送数据,进行双向通讯。但是这种通讯方式太过于简陋,是纯粹的手工方式,只适合调试。如果需要在电脑上通过可视化界面与Arduino进行交互,或者对Arduino发送到电脑上的数据进行处理,就需要在电脑上编程了。说的专业一点就是上位机与下位机的通讯。本文就介绍一下如何使用C#实现Arduino与电脑进行串行通讯。 1、C#串口编程基础 在C#中有一个串口类System.IO.Ports.SerialPort,这个类的实例就对应设备管理器中的串口。 比如 SerialPort port = new SerialPort("COM4") 这句代码就定义了一个串口实例,对应下图中的USB Serial Port(COM4) SerialPort常用方法包括Open, Close, Read, ReadLine, Write, WriteLine。这些方法通过名称就很容易理解它们的用法。 具体类信息可以参考MSDN: http:/

进电机之两相双极性步进电机仿真

元气小坏坏 提交于 2020-12-25 07:22:51
两相双极性步进电机   有幸能从报废的机器的光驱中拆除几个电机,大概是像下方图片中那样的。但是这个电机只有四根外接的引脚,之前对不仅电机不是很懂,这两天通过查阅资料,了解到这个电机被称为 两相双极性步进电机 。   在此大概叙述下两相双极性电机的工作原理。如下图所示,步进电机只有两相(即两组定子),双极性代表两个定子缠绕的线圈可以两个方向通电。   简单用图片表示下90度两相双极性步进电机转一圈的过程。1表示相1正向通电,1~表示相1方向通电。   上面只是简单叙述了下两相双极性步进电机的工作原理,下面进入正题,使用proteus进行仿真Arduino来控制电机。   仿真:使用L298(U3)驱动四线两相双极性步进电机。   代码:MotorTwo为两相双极性电机驱动。 /* Main.ino file generated by New Project wizard * * Created: Thu Sep 5 2013 * Processor: ATmega328P * Compiler: Arduino AVR */ #define LED ( 13 ) #define MOTOR_PIN0 ( 0 ) #define MOTOR_PIN1 ( 1 ) #define MOTOR_PIN2 ( 2 ) #define MOTOR_PIN3 ( 3 ) #define

arduino八段数码管使用

一笑奈何 提交于 2020-12-24 07:25:40
一:八段数码管的使用 控制要求: 0-9 的计时数据 实物连接图: 控制代码: // 智慧自动化2018.6.11 int a= 7 ; // 定义数字接口7 连接a 段数码管 int b= 6 ; // 定义数字接口6 连接b 段数码管 int c= 5 ; // 定义数字接口5 连接c 段数码管 int d= 10 ; // 定义数字接口10 连接d 段数码管 int e= 11 ; // 定义数字接口11 连接e 段数码管 int f= 8 ; // 定义数字接口8 连接f 段数码管 int g= 9 ; // 定义数字接口9 连接g 段数码管 int dp= 4 ; // 定义数字接口4 连接dp 段数码管 void digital_0( void ) // 显示数字5 { unsigned char j; digitalWrite(a,HIGH); digitalWrite(b,HIGH); digitalWrite(c,HIGH); digitalWrite(d,HIGH); digitalWrite(e,HIGH); digitalWrite(f,HIGH); digitalWrite(g,LOW); digitalWrite(dp,LOW); } void digital_1( void ) // 显示数字1 { unsigned char j;

WeMos下实现小车避障与手机控制

蹲街弑〆低调 提交于 2020-11-21 04:14:38
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、项目软硬件平台及开发环境 1.硬件平台介绍 2.开发环境介绍 3.开发环境配置支持Wemos 二、驱动演示 1.蜂鸣器 2.Wemos串口通信 3.Wemos和wifi 4.Wemos和超声波测距 5.Wemos和L9110s步进电机控制器 6.安卓APP控制小车 三、项目整合 1.相关函数 2.代码整合 总结 前言 通过WeMos D1开发板、超声波模块、蜂鸣器、L9110s步进电机实现:小车方向控制,如果小车距离障碍物的距离小于10厘米 ,再按前进蜂鸣器就会报警,并后退一定的距离 。 一、项目软硬件平台及开发环境 1.硬件平台介绍 特性 1.基于ESP-8266EX 2.Arduino兼容,使用rduino IDE来编程 3.11 x I/O 引脚 4.1 x ADC 引脚(输入范围0-3.3V) 5.板载5V 1A开关电源(高输入电压24V) 工作中: 和stm32模块开发类似,集成度高 STM32方案也更经济便宜 2.开发环境介绍 ArduiNo开发环境,和keil对比 优点: 集成很多开发库如串口,网络,sg90等 各种硬件开发接口,迅捷开发 自带串口调试工具 缺点: 程序编译速度慢 3.开发环境配置支持Wemos 二、驱动演示 1.蜂鸣器 //基础控制:蜂鸣器叫唤和不叫唤 void

Arduino Wireless Communication – NRF24L01 Tutorial(arduino无线通信---NRF24L01教程)

ぐ巨炮叔叔 提交于 2020-11-18 20:28:54
arduino下nrf24l01库文件及相关说明 库的说明文档 https://tmrh20.github.io/RF24/ 库的源代码github下载页面 https://tmrh20.github.io/RF24/ Arduino IDE直接安装库文件 直接在arduino库管理器中搜索“rf24”关键字 选择TMRh20作者的版本安装 发送的源码 /* * Arduino Wireless Communication Tutorial * Example 2 - Transmitter Code * * by Dejan Nedelkovski, www.HowToMechatronics.com * * Library: TMRh20/RF24, https://github.com/tmrh20/RF24/ */ #include <SPI.h> #include <nRF24L01.h> #include <RF24.h> #define led 12 RF24 radio(7, 8); // CE, CSN const byte addresses[][6] = {"00001", "00002"}; boolean buttonState = 0; void setup() { pinMode(12, OUTPUT); radio.begin(); radio

新手arduino小白有问题请教大家

旧城冷巷雨未停 提交于 2020-07-27 09:55:51
想问问大家这个程序或者接线有没有问题 我想做一个超声波测距报警 但是烧录下面代码之后三线无源蜂鸣器一直响 const int TrigPin = 2; const int EchoPin = 3; float distance; void setup() { // 初始化串口通信及连接SR04的引脚 Serial.begin(9600); pinMode(TrigPin, OUTPUT); // 要检测引脚上输入的脉冲宽度,需要先设置为输入状态 pinMode(EchoPin, INPUT); pinMode(7,OUTPUT); Serial.println(“Distance:”); } void loop() { // 产生一个10us的高脉冲去触发TrigPin digitalWrite(TrigPin, LOW); delayMicroseconds(2); digitalWrite(TrigPin, HIGH); delayMicroseconds(10); digitalWrite(TrigPin, LOW); digitalWrite(7, HIGH); // 检测脉冲宽度,并计算出距离 distance = pulseIn(EchoPin, HIGH) / 58.00; Serial.print(distance); Serial.print(“cm”);