
Arduino探索
文章平均质量分 68
全面介绍的Arduino的使用,以及在使用中需要用到的各种工具和面临的问题解析。
河西石头
二十年如一日
展开
-
proteus中仿真arduino的水位测试传感器
水位传感器的仿真测试原创 2023-10-22 08:38:56 · 8941 阅读 · 2 评论 -
在proteus中仿真arduino驱动点阵屏matrix-led
我们都知道,如果我们仅仅在某个时间段点亮一个数码管是没有任何困难的,但如果我们点亮多个数码管就会出现问题,因为多个数码管都使用着同样的端口来控制数码管的各个段的亮灭。所以,就会用上一个很重要的方法,对,这个方法就是视觉暂离(人的视觉暂留是0.05~0.2秒),也就是利用它我们就可以让人眼看起来,多个数码管是同时点亮的。下面我们要介绍的点阵屏(led-matrxi)要显示多种图形,也必须用到这种视觉暂留的方法。下面我们从点阵屏的一般使用开始来了解点阵屏显示各种花样图形的显示方法。原创 2023-07-03 23:34:16 · 2231 阅读 · 4 评论 -
输入端口少如何扩展?74hc148或74ls148级联在arduino中实现16转4的应用
如何扩展输入端口,解决输入端口少的问题,输入端口少的时候我们就会用到74hc595或者74hc165.原创 2023-04-11 07:58:48 · 9139 阅读 · 1 评论 -
在proteus中仿真arduino实现矩阵键盘程序
键盘矩阵原理及在arduino中使用键盘矩阵和proteus中仿真原创 2023-04-10 11:21:06 · 1983 阅读 · 0 评论 -
arduino仿真2位数码管
这篇博文作为前面《Arduino实验之两位数码管实验报告》的补充,先上效果:代码:int latchPin=6;int clockPin=4;int dataPin=5;int bitSelect1=2;int bitSelect2=3;boolean selectStat=0;int cseg[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};int n=0;原创 2023-03-18 23:05:13 · 685 阅读 · 0 评论 -
给Visual Studio 2022下配置arduino环境插件在VS下编写arduino代码
Arduino IDE for Visual Studio,介绍给大家一款用在vs2022上的arduino插件,Arduino IDE for Visual Studio,给Visual Studio 2022下配置arduino环境插件在VS下编写arduino代码,官网介绍是全面百分之百支持arduino IDE的各种功能原创 2023-03-16 22:32:27 · 4601 阅读 · 3 评论 -
尝试在sublime Text3中配置arduino开发环境
尝试寻找一个可以配置sublime text的arduino开发环境的插件原创 2023-03-11 22:28:37 · 568 阅读 · 0 评论 -
体验用arduino来实现PLC编程器的功能
是不是想自己临时做个PLC的测试,但又不想卖西门子三菱的PLC,那就可以用这个OpenPLC,把arduino变成一个PLC的编程器。原创 2023-03-08 21:42:11 · 5465 阅读 · 3 评论 -
proteus光敏电阻电路的arduino仿真
proteus仿真arduino光敏电阻,模拟电路,分压电路与模拟信号的采集注意点。原创 2023-03-07 22:27:43 · 6450 阅读 · 0 评论 -
arduino读写MFRC522射频RRFID模块
常见的射频模块读写操作,FRID在arduino中的使用。原创 2022-08-31 08:26:02 · 5971 阅读 · 0 评论 -
arduino烧录引导程序(BootLoader)方法及出错点
本文介绍了arduino烧录BootLoader的两种典型方法及烧录中可能遇到的错误。有详细的电路接线图。可以为初次烧录arduino的童鞋提供详细的步骤引导。原创 2023-03-02 11:50:13 · 14844 阅读 · 2 评论 -
Arduino IDE启动闪退或者运行中闪退
各种arduino IDE闪退的解决方案,多数属于库文件的配置问题。原创 2023-03-01 17:20:10 · 5602 阅读 · 1 评论 -
proteus仿真arduino中调用DHT11/22温湿度传感器
利用proteus仿真arduino连接温湿度传感器,获取温湿度传感器的数字,并通过串口发送到上位机。原创 2022-07-25 22:15:02 · 5140 阅读 · 6 评论 -
深入了解arduino舵机控制库文件Servo.h
舵机的控制,舵机精准控制,舵机驱动的原理原创 2022-07-16 12:44:09 · 8603 阅读 · 1 评论 -
arduino上传程序出错不成功常见的问题解决
arduino上传代码过程中常常会遇到无法上传的现象,无论老手新手都会遇到。这里将他们总结一下,列在下博文里,大家可以留言补充。原创 2022-07-13 10:43:08 · 28892 阅读 · 5 评论 -
arduino仿真595级联实现双数码管的计数显示
hc595的级联在许多场合都可以为我们提供了更多了接口资源,这里我们通过两片hc595以及两片数码管仿真来展示它的级联功能。原创 2022-03-16 10:34:51 · 2013 阅读 · 3 评论 -
arduino仿真单数码管
数码管的运用,在单片机学习中是非常基础的,而且很多的设备也是必须的显示设备,这里我们利用arduino来学习控制数码管。原创 2021-12-11 22:41:09 · 720 阅读 · 0 评论 -
proteus中仿真时钟计时器DS1307
#include <LiquidCrystal.h>#include <DS1307.h>#include <Wire.h>LiquidCrystal lcd(13,12,11,10,9,8);int clock[7];void setup(){for(int i=3;i<8;i++){ pinMode(i,INPUT); }lcd.begin(20,2);DS1307.begin();DS1307.setDate(16,4,29,0.原创 2021-11-16 09:07:47 · 3037 阅读 · 0 评论 -
arduino中利用LiquidCrystal内置的scrool函数实现屏幕文字滚动播放
我们如果实现简单的LCD的屏幕文字滚动其实也不难,但这里我们还是先用拿来主义。首先,我们必须在类库管理器中找到LiquidCrystal的对应库文件,这里不再赘述。现在假定你已经成功安装了库文件了。那么我们可以开始看看其中的有关scrool的内置函数:scrollDisplayLeft() //向左滚动scrollDisplayRight() //向右滚动autoscroll() //自动滚动开启noAutoscroll()原创 2021-05-15 21:11:08 · 1716 阅读 · 0 评论 -
为proteus仿真arduino添加库文件
比如,我们在proteus中加入了一个onewire的器件,程序中就必须要包含这个类库,而且我们的proteus中也必须有,否则就会出现下面的代码。为什么找不到这个对应的目录呢?并不是我们的机器里没有,同样的这个程序我们在arduino的IDE中编译是没有问题的,说明只是我们的proteus中没有。要解决这个问题,我们就直接在arduino的IDE工具目录下找到这个文件夹即可。如果你的arduino下也没有,那就是你从来没有下载过,来到tool下的library manager直接下载吧!在搜索栏中输原创 2021-04-11 15:32:29 · 4498 阅读 · 0 评论 -
proteus中仿真max7219显示2个4位数码管
Max7219是一款不错的SPI芯片,尤其给LED和数码管带来了极大的便利。这里我们用proteus来仿真,体验一下它的便利之处。#include <LedControl.h>// inputs: DIN pin, CLK pin, LOAD pin. number of chipsLedControl mydisplay = LedControl(11, 9, 10, 1);void setup() { analogReference(INTERNAL); mydis原创 2020-09-13 22:58:27 · 2213 阅读 · 2 评论 -
在proteus中仿真18B20并实时显示
对于没有试验条件的童鞋来说,在Proteus中仿真18B20温度传感器的实验是个不错的选择。下面是电路连接图:用到的器件有:代码如下: #include <OneWire.h> #include <DallasTemperature.h> #include <LiquidCrystal.h> #define ONE_WIRE_BUS 8 OneWire oneWire(ONE_WIRE_BUS); DallasT原创 2020-09-12 17:19:47 · 1162 阅读 · 0 评论 -
arduino中使用温度传感器18B20
18B20原创 2020-09-11 18:29:00 · 6100 阅读 · 4 评论 -
如何让arduino中的loop和Processing中的draw停下来
arduino中,很明显的程序结构,一个是setup(这里只运行一次用来设置),loop(反复运行),我们在使用串口查看信息调试的时候loop的无限循环的确给调试带来了麻烦,怎么停掉了?难道用break?肯定是错误的!其实我们可以用另一个无限循环来“伪停”,代码如下:if (stopflag==num) {// 下面的循环将永远占用这loop的运行,所以loop无法从头开始运行,这样就只运行了指定的次数while (true) {continue;}}上面的stopflag是设置的一个标志原创 2020-09-05 11:17:07 · 6393 阅读 · 0 评论 -
arduino串口监视器中的乱码来源
我们常常会发现,用arduino向串口监视器发送的数值总是乱码。比如我们读取的模拟口的数值就会在数值小的时候为方块,数值大的时候则是乱七八糟的符号。这是什么原因呢?貌似怎么调整串口的设置都不能解决。其实,这个问题关键在Serial.write()和Serial.print()的机制不同。1、Serial.write()的机制Serial.write():发送是实际数值,比如write(1),则系统发送1,但串口监视器在显示的时候会查找这个数值的对应ASCII码表,找到这个数值对应的ASCII符号后再将原创 2020-09-05 11:02:52 · 16634 阅读 · 2 评论 -
arduino利用电位器仿真编码器控制舵机转动
在没有编码表盘的情况下,我们可以利用电位器分压作用来得到的数值来控制舵机的偏转角度,连接图如下。如果用block表示出来则如下图:代码如下:#include <Servo.h> // 声明调用Servo.h库Servo myservo; // 创建一个舵机对象int potpin = 1; // 连接到模拟口A1int val; //变量val用来存储从模拟口0原创 2020-09-04 18:58:24 · 4374 阅读 · 2 评论 -
arduino结合74hc192实现计数显示
这里我们利用74hc192计数器芯片,实现了百位数的显示,多位数显示必须存在进位运算,刚好192的TCU端口就为进位脉冲,当满10后就会出现一个高电平脉冲。用这种方法可以实现更多位数的显示。管脚说明:Do-D:并行数据输入端Qo-Q:数据输出端CU:加法计数脉冲输入端CD:减法计数脉冲输入或Rp:异步置0端(高电平有效)D:置数控制端(低电平有效)c:加法计数时,进位输出端(低电...原创 2020-04-30 21:34:19 · 6586 阅读 · 0 评论 -
protues用一片74hc595控制两位数码管
前面的博文中我们介绍了一个arduino中用一片595来控制一位数码管,这里我们介绍一个595来控制两位数码管。两位数码管的动态显示机制可以简单的理解为交错显示,仅仅是我们的视觉停留看起来使我们觉得他们是同时显示的。听起来有点复杂吧,这样吧,我们依然从显示一位数字开始。然后我们再尝试显示两位静态的数字,最后我们再来看,两位数字的动态显示。一、显示一位数字代码:看看效果:二、显示两位静态...原创 2019-12-25 18:05:08 · 4756 阅读 · 0 评论 -
proteus仿真arduino控制两位数码管
前面我们用arduino控制一位数码管,知道了控制数码管的原理。这里我们增加了一位,其显示的原理基本一样。只不过本质上不是两位同时点亮,而是轮换点亮。下面是原理图:我们来看看代码的实现:int PIN_A=2;int PIN_B=3;int PIN_C=4;int PIN_D=5;int PIN_E=6;int PIN_F=7;int PIN_G=8;int POW1=13;...原创 2019-12-24 11:09:36 · 5562 阅读 · 3 评论 -
proteus中仿真arduino利用74hc595控制数码管
前面我们介绍了利用595控制LED的方法(具体参考《proteus中仿真arduino利用74hc595控制LED》),这里我们继续前面的话题,介绍一下在proteus中仿真arduino利用74HC595控制单个数码管的方法。一、电路用到的器件:Atmega328P、74HC595、7SEG-DIGITAL、Resistor、LED-RED二、代码int latchPin=12;in...原创 2019-12-14 11:01:58 · 2333 阅读 · 0 评论 -
如果arduino数字管脚不够用怎么办?
我们拿到arduino 板仔细看看主芯片就知道,它是Atmega的芯片封装而成(如UNO板就是328P),经过arduino的封装,将其封装出了13个数字脚和6个模拟管脚,如下图:当我们接的输出较多的时候,就常常会出现数字管脚不够的情况,那么这里提供三种解决方案:1、直接将模拟口当做数字脚使用使用方法一,用A0~A5当做管脚号,如:digitalWrite(A0,HIGH);使用方法二...原创 2019-05-01 19:11:14 · 19809 阅读 · 4 评论 -
proteus仿真arduino中断
我们知道,基本任何单片机都有中断机制(当然,我们的操作系统也是有中断机制的),对于熟悉嵌入式开发的童鞋来说,中断在熟悉不过了。但对于新手来说中断的理解也不难,用一句话来说中断就是“放下手中正在做的大事情去做别的小事情”,也可以用一个故事来解释,那就是“小猫钓鱼”,钓鱼是正事,捉蝴蝶,捉蜻蜓则是中断触发了做的小事情(非主线事件)。在现实的生活中,这样的中断是时刻发生的,比如你正在写代码,你的老大突...原创 2019-04-10 20:46:05 · 992 阅读 · 0 评论 -
protues仿真控制舵机
在proteus中仿真arduino控制舵机,相对来说比较容易原创 2019-04-08 18:03:38 · 15983 阅读 · 6 评论 -
protues仿真arduino串口通讯
使用proteus仿真arduino的确为我们省去了每次搭建硬件电路的麻烦,但我们渐渐地发现,利用arduino板可以直接通过串口调试的便利却失去了,有的时候还真是怀念通过串口调试窗口发送出来的调试信息,否则有的时候真的两眼一抹黑。许多东西都是等到失去了才懂得她的珍贵,记得很多年前用win xp的年代,自带了一个串口助手现在没有了感觉可惜,后面当要用串口调试的时候就只能自己编写一个或者下一个别人...原创 2019-04-06 13:15:44 · 7826 阅读 · 9 评论 -
Arduino中shiftOut怎么用?
我们知道,shiftOut这个函数有四个参数,而且常常用于74hc595控制数码管或者LED的流水灯的程序中,一个74hc595一个shiftOut函数,整在一起,常常把初学者搞晕。这里我们来把关键点捋一捋。1、四个参数函数shiftOut(dataPin,clockPin,bitOrder,val)有四个参数,即:dataPin、clockPin、bitOrder、val,其具体含义如下:...原创 2019-04-02 16:23:12 · 12452 阅读 · 0 评论 -
arduino传感器专题介绍(3)
在前面两篇《arduino传感器专题介绍》中,我们比较详细的介绍了温度传感器,这篇开始我们来了解距离传感器。与温度传感器一样,用于测量距离的传感器也比较多,其工作原理各异,但最终都是通过对返回信号的检测来完成的。所以,我们很容易理解,按照这种原理来进行测距,其公式我们很熟悉:上图的超声波传感器是我们最熟悉的,我们就从超声波传感器开始。1、超声波传感器超声波传感器使用高频率的声波来进行测...原创 2019-04-01 21:25:26 · 6514 阅读 · 6 评论 -
arduino设备驱动程序安装失败
对于很多新手来说,从网上购买了开发板后,充满期待的插上USB线准备大干一场。结果如下图:原因在哪里呢?其实是因为我们购买的arduino开发板的问题,如果我们购买的是正宗的板子,那么只要将arduino的IDE下载并正确安装(记住是安装,不是拷贝或者解压),那么我们的驱动程序都能够正确安装,这个在winxp,win7,win10上都是没有问题的。安装成功后设备管理器中有明显的arduino的虚...原创 2019-04-01 08:29:40 · 5715 阅读 · 4 评论 -
proteus仿真arduino中使用PCF8574以I2C方式操作LCD1602
前面一篇我们尝试用普通的连接方式连接Arduino板,但我们会发现,这样比较浪费IO资源,如果还有需求连接数码管什么的,估计IO就被我们占用完了。Arduino与其他的单片机一样,都是IO资源珍贵,所以我们就有了IIC的连接方式。一般我们购买的1602不直接支持IIC的连接,有的有转么的转接模块,有的在1602的背面直接焊接了一个转接模块,但究其本质,都是使用了一个IIC的扩展芯片,这里我们使用的...原创 2019-03-31 21:14:40 · 5982 阅读 · 6 评论 -
Proteus下仿真arduino控制LCD1602
LM1602是一个16列2行的液晶显示器。首先,我们在器件库中找到1602,在器件库中不能搜索1602否则搜不到,我们搜索16列2行,即"16X2",即可得到三个显示屏,我们选择第二个LM016L,这个比较原汁原味,其余两个一个是串口的一个是IIC的。这里我们可以采用最普通的界限模式,普通接线模式是指,我们不需要借助于第三方的芯片或者扩展板,直接将LCD与arduino板相连接。连接的方法可以...原创 2019-03-31 19:40:48 · 7120 阅读 · 2 评论 -
proteus下仿真Arduino实现流水灯
一般来说,我们学习51还是Arduino估计都是从一个闪灯程序开始的,这就好比学习C++或者Java的第一个程序hello world一样。估计闪灯程序之后紧接下来的就是流水灯了,实际流水灯的实现在很多初学者看来也不是很难,无非跟写数字一样,一字写一横,二字写二横,无非多写几横而已(哈哈哈哈)。按照上面的思路程序很容易出来,如下:setup(){//设置管及管脚的pinMode}vo...原创 2019-03-07 09:13:35 · 4491 阅读 · 2 评论