当前位置: 首页 > news >正文

arduino as5048工作原理_Arduino 真的可以用来开发产品吗?分享一个电子工程师的Arduino使用心得分享!...

3ed3480273b2a8aa820676918a1f6868.png

使用Arduino有一段时间,从最开始和许多电子嵌入式领域的专业人士一样,对这东西简直是嗤之以鼻,认为它就是个给那些完全不懂电子、不懂编程的业余爱好者玩的;到逐渐对它有了一定认识,然后看到了它背后海量的资源、软件库、完全开放性、可以大大提高产品开发的效率,让产品能够快速上市,从这之后,我们逐渐爱上了这个开发平台,并且基于ARDUINO IDE 这个开发平台试做了几个项目,果然开发效率大提高,最值得一提的是如果单片机外围有很多数字(I2C、SPI、UART)接口器件,如各种传感、通讯模块等,基本都可以找到库文件,如果硬件连接正确的话,基本是下载完程序,上电就能正确读写数据了。

大部分开发板、模块的原理图、PCB都是开源的,你可以在这个基础上自由修改,做出符合自己使用的产品来,开始我们也是从最基础的UNO开发来使用的,后来发现UNO的性能实在太差了,不能满足我们的产品使用要求,我们又在Arduino 平台上使用了STM32,这个系列性能更强的处理器,并且对原生库进行了一些修改,加入了低功耗控制的部分,新修改的库我们同样秉持了开源的协议,在githup上进行了发布,与所有开发者一起共享与交流。

我们还基于arduino的开源硬件进行了一些改进,重新PCB,做了一些更适我们的用的开发板,还做了一个基于GPRS的远程气象站,并且也把这个产品在githup上进行了开源。有兴趣的朋友可以直接到githup官网上搜索“OpenSourceWeatherStation”查看非常详细的介绍。

18477c972f3f5705ec942cd6e5194eb5.png

bb76fd3acaf7e6131c540d1083528e00.png

60ad757a3fb7e3c8aa0abe20b3580a17.png

最后,对Arduino的使用心是做一点小小的总结,这个开发平台虽然不如一些专业的嵌入系统开发平如KEIL、IAR等那么功能强大,但是它非常简洁,也非常容易上手,没有在线仿真调试的功能,但是它的串口打印功能使用非常简单和方便,可以把调试的一些信息通过串口打印出来;也许有人说它的代码编辑区实在太简陋了,那它有一个功能,可以使用外部编辑器来进行编辑,你只用它来进行编译和下载就可以啦!

此外,它的生态常好,有很多大神级的人物和很多的芯片商为我们贡献了数以万计高质量的源代码库,供我们免费享用,可以大提高我们进行产品开发的效率。

这是我使用Arduino两年以后的一些感受,如果你有不同的想法,欢迎交流!

相关文章:

  • jquery 多个文本框赋值_jquery为input赋值方法总结
  • nslookup 包含在那个包中_nslookup详解(name server lookup)( 域名查询)
  • double 去掉小数点_怎么去掉double后面的零0及取得double的小数部分的有效位 | 学步园...
  • 对一个字段赋值默认值_Java入门基础学习,成为一个Java程序员的必备知识
  • adb 重命名_adb无法连接设备?只需要这五步就能解决
  • sklearn中lstm_LSTM的时序应用
  • python中字符串之间的比较_【python】比较字符串中不同的地方
  • 双摄像头另一个有什么用_手机双摄像头为什么有前后和后双两种?各有什么用?...
  • deepin应用分发_Deepin应用商店发布2020年度十佳应用 QQ音乐荣誉上榜
  • apk提取加密素材_WDF资源加密及解密工具 – 素材防偷专用工具(附带教程)
  • linux pandas教程_Pandas 学习笔记
  • 爬虫爬评书吧_爬虫学习:xpath爬取评书网
  • orcad如何设置模块化设计_使用OrCAD设计多个相同功能模块电路可以使用层次化设计...
  • python中定制类_Python定制类的方法总结
  • 手机上安装python3l_Centos7安装Python3,并配置与Python2共存
  • 【comparator, comparable】小总结
  • 03Go 类型总结
  • 30秒的PHP代码片段(1)数组 - Array
  • Angular数据绑定机制
  • CSS 专业技巧
  • Git同步原始仓库到Fork仓库中
  • React+TypeScript入门
  • React组件设计模式(一)
  • VuePress 静态网站生成
  • 安装python包到指定虚拟环境
  • 近期前端发展计划
  • 使用 Xcode 的 Target 区分开发和生产环境
  • 如何用纯 CSS 创作一个货车 loader
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • #Ubuntu(修改root信息)
  • (10)ATF MMU转换表
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (备忘)Java Map 遍历
  • (附源码)计算机毕业设计大学生兼职系统
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (十三)Flask之特殊装饰器详解
  • (算法)Travel Information Center
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (转)创业家杂志:UCWEB天使第一步
  • ***通过什么方式***网吧
  • .libPaths()设置包加载目录
  • .net通用权限框架B/S (三)--MODEL层(2)
  • .NET中winform传递参数至Url并获得返回值或文件
  • /usr/bin/env: node: No such file or directory
  • @KafkaListener注解详解(一)| 常用参数详解
  • [ NOI 2001 ] 食物链
  • [ 数据结构 - C++] AVL树原理及实现
  • [2019/05/17]解决springboot测试List接口时JSON传参异常
  • [Android Studio] 开发Java 程序
  • [ERROR]-Error: failure: repodata/filelists.xml.gz from addons: [Errno 256] No more mirrors to try.
  • [ExtJS5学习笔记]第三十节 sencha extjs 5表格gridpanel分组汇总
  • [G-CS-MR.PS02] 機巧之形2: Ruler Circle
  • [JavaEE]线程的状态与安全