完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
初见 Arduino
啥是 Arduino 最近发现一个很有意思的玩意 – Arduino ,百度上巴拉巴拉说了很多,我就不复制粘贴了,我实际用起来这就是一个很方便的集成开发环境,有着各种各样的库,拥有很不错的生态,屏蔽掉了很多底层代码,不用再去头疼GPIO怎么配,各种设备怎么初始化,让开发者专注于软件上的开发。 Arduino 的优点 支持Arduino的硬件直接拿来就用,不用头疼这块板子需要这种开发环境,那个厂商用的另外一个开发环境,两个开发环境可能还有冲突。 PS:隔壁兄弟,同时做两套板子两个冲突的开发环境,人都要吐了。 而有 Arduino 库的传感器,能直接省去你协议对接的过程,直接函数调用就能拿到数据,免去翻手册解析协议的过程。 PS:超爽是不是,隔壁兄弟解析几十字节的串口数据,人都要傻了。 适合的人群 毫无疑问这东西就是小白之友,屏蔽底层,加上大量库的支持,可以让小白非常快的上手,省去很多麻烦。 对大牛们来说这不算啥,但是也不是没用。这东西在有经验的开发者手里开发速度快的优势会更加明显,毕竟调用库这么爽的事情谁不爱呢?当上面要求快速出个 demo 演示,不需要考虑太多的时候这东西就很棒了。 PS:当我拿到传感器数据的时候,隔壁兄弟手册都还没看完。 上手 Arduino 安装IDE 第一件事情当然就是安装 IDE 啦!官方下载我去试过了也还行 在这里感谢好兄弟提供的国内资源 下面是官网地址,要是实在找不到国内资源的话可以去官网试试,都是免费的,有条件的可以去官网捐赠支持他们一下。 下载下来也没啥安装流程,解压就能用了(Arduino IDE 1.8.15)打开之后就会出现下图: Arduino - IDE 的使用 看见上面那图,有过C语音开发经验的朋友应该就有疑问了,setup 和 loop 是啥?我辣莫大的一个 main 函数去哪儿了? 其实 Arduino - IDE 中的作用就相当于一个死循环的 main 函数,loop 相当于: main() { deviceinit(); // 硬件初始化 while(1) { // 你 loop 里的代码其实在这里运行 } } 写在 loop 里的代码就相当于写在这个 while(1) 里面了。 而 setup() 函数呢则是 Arduino 的一个特点,你需要在这里面进行一些初始化操作和设置,比如说设置引脚,设置串口波特率什么的,当然一些不适合放入 loop 循环,又可以在loop 之前运行的函数也可以放 setup 函数中调用。 好了,现在第一次看见这个界面最大的疑惑没了,可以安心往下看了吧? 接入开发板 Arduino 官方的开发板是 ATmega 芯片 不过现在国内很少有看见做 AVR 的了,于是这里我选择了 ESP32 芯片的开发板,这里我推荐安信可和DFRobot 这两家的开发板子,其他的我没用过就不多说了,他们两家也没给我钱,我这里就不放连接了 。 安信可的板子便宜二十几块钱 ,资料都在 github 上 东西蛮全的,库支持也不错,毕竟大厂,适合有经验的人,爱折腾的人。 DFRobot 价格偏贵,快50块钱了,但是从板子上的印刷到资料的编写是真的贴心,引脚图和手册不会看都没关系,适合完全不懂的小白,技术支持也不错。也算是物有所值,高出来的那一部分放服务里面去了,适合不差钱的小白。或者就单纯想做个东西,不想深入研究的人。 DFRobot 的 SDL,SDA,A0,RX,TX 这些 Arduino 常用的引脚都标出来了 安信可的就得自己看引脚图和开发手册 自己标 这里我就用安信可板子做例子,接上板子之后打开"文件"选项卡找到点击"首选项": 添加网址成功后,“工具"选项卡找到点击"开发板”,里面有个"开发板管理器": 打开之后输入 ESP32 并且点击安装即可: 安装完成后,再次点击"工具"选项卡找到点击"开发板",这次会多出一个 ESP32 Arduino 进去找到我们的NodeMCU - 32S: 这下就完成了开发板的配置工作! 跑个 demo 试试,在"文件"下有个示例,里面有很多自带的 demo 可以用,不过第一次使用的时候,保存会提示你另存为,因为自带的demo是不可修改的,找个路径存放你修改后的文件就行,推荐最简单的流水灯: 运行之后板子上的小灯就会一闪一闪的了。 本文仅个人学习使用,如有错误,欢迎指正。 |
|
|
|
只有小组成员才能发言,加入小组>>
3278 浏览 9 评论
2955 浏览 16 评论
3455 浏览 1 评论
8987 浏览 16 评论
4050 浏览 18 评论
1102浏览 3评论
570浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
568浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2301浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1857浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 02:48 , Processed in 1.241676 second(s), Total 78, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号