打印
[应用相关]

arduino —— 基于AT32F4xx标准外设库

[复制链接]
7316|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
vt2017|  楼主 | 2020-11-15 10:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 muyichuan2012 于 2020-11-19 09:04 编辑

最近尝试在32位单片机上跑 arduino,查了一些资料发现国内外的大佬们早就已经帮忙把轮子造好了,我了解到的主要有下面几个开源库:
首先是来着澳大利亚的大佬 Roger Clark 的项目 Arduino STM32 ,他的项目是基于https://github.com/bobc/maple-asp 以及 LeafLabs 所提供的 LibMaple,并且一直在更新。他们还有自己的论坛,之前遇到过问题还专门去上面提问得到了大佬的亲自回复
GitHub:
https://github.com/rogerclarkmelbourne/Arduino_STM32
论坛:
https://gitter.im/stm32duino/Lobby/

然后是国内的一位小哥,FASTSHIFT所做的项目 Arduino-For-Keil
GitHub:https://github.com/FASTSHIFT/Arduino-For-Keil

他做的项目所支持的ST32系列比较全包括:STM32F0/F1/F3/F4/L4系列以及最近比较火的国产MCU:AT32F4xx系列,以下是其简介
这是一个轻量级的Arduino框架,使STM32系列单片机兼容Arduino语法,在Keil上进行编译调试。
相对于传统开发方式的优势:
1.与Arduino共用生态,降低学习门槛,简化开发过程。
2.关键部分使用了 寄存器+宏 的优化方式,减少函数调用开销,提升运行效率。
3.简化的Arduino框架,相对stm32duino与HAL库,拥有更小的代码体积、更快的编译和执行速度。他的这个项目也是一直在更新,并且支持的系列比较全面:



以上两个开源库是我自己用过的,如果想在STM32上跑Arduino,都是很不错的“轮子”。很明显有了大佬们提供的框架,再在这个基础上去完成我们的项目能够大大缩短开发时间,并且本身Arduino对于初学者来说,极易掌握,同时有着足够的灵活性。而再加上如今强大的MCU性能,便能够实现越来越多复杂的功能和项目。
我目前也还有不少东西还没摸透,需要多测试多调试,希望有一天也能够成为“大佬”

PS:下面是AT32的官方QQ群,感兴趣的话可以加一下,有技术问题可以在里面问~





AT_QQ.PNG (42.75 KB )

AT_QQ.PNG

使用特权

评论回复
沙发
muyichuan2012| | 2020-11-19 09:09 | 只看该作者
什么是Arduino
Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(ArduinoIDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti等。
它构建于开放原始码simple I/O介面版,并且具有使用类似Java、C语言的Processing/Wiring开发环境。主要包含两个的部分:硬件部分是可以用来做电路连接的Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。对Arduino的编程是通过 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现

平台特点
跨平台
Arduino IDE可以在Windows、Macintosh OS X、Linux三大主流操作系统上运行,而其他的大多数控制器只能在Windows上开发。
简单清晰
Arduino IDE基于processing IDE开发。对于初学者来说,极易掌握,同时有着足够的灵活性。Arduino语言基于wiring语言开发,是对 avr-gcc库的二次封装,不需要太多的单片机基础、编程基础,简单学习后,你也可以快速的进行开发。
开放性
Arduino的硬件原理图、电路图、IDE软件及核心库文件都是开源的,在开源协议范围内里可以任意修改原始设计及相应代码。
发展迅速
Arduino不仅仅是全球最流行的开源硬件,也是一个优秀的硬件开发平台,更是硬件开发的趋势。Arduino简单的开发方式使得开发者更关注创意与实现,更快的完成自己的项目开发,大大节约了学习的成本,缩短了开发的周期。
因为Arduino的种种优势,越来越多的专业硬件开发者已经或开始使用Arduino来开发他们的项目、产品;越来越多的软件开发者使用Arduino进入硬件、物联网等开发领域;大学里,自动化、软件,甚至艺术专业,也纷纷开展了Arduino相关课程。


功能
可以快速使用Arduino与Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider等软件结合,作出互动作品。 Arduino可以使用现有的电子元件例如开关或者传感器或者其他控制器件、LED、步进马达或其他输出装置。 Arduino也可以独立运行,并与软件进行交互,例如: Macromedia Flash, Processing, Max/MSP, Pure Data, VVVV或其他互动软件。 Arduino的IDE界面基于开放源代码,可以免费下载使用,开发出更多令人惊艳的互动作品。


使用特权

评论回复
板凳
muyichuan2012| | 2020-11-19 09:12 | 只看该作者
本帖最后由 muyichuan2012 于 2020-11-19 10:12 编辑

如下图AT32 START 所有开发板都支持Arduino硬件环境,
且AT32F403A也已经完成Arduino 软件porting,开发者可直接使用,下载地址如下:
[url=GitHub:https://github.com/FASTSHIFT/Arduino-For-Keil]GitHub:https://github.com/FASTSHIFT/Arduino-For-Keil[/url]

微信图片_20201119101056.png (1.23 MB )

微信图片_20201119101056.png

使用特权

评论回复
地板
可爱的烧饼| | 2020-11-19 09:33 | 只看该作者
已经加群了,不错的芯片,不错的群。

使用特权

评论回复
5
嵌入小菜菜| | 2020-11-19 17:51 | 只看该作者
我已经加入群了,群里的信息都是很珍贵的,感谢分享。

使用特权

评论回复
6
勇敢的大白菜| | 2020-11-20 08:48 | 只看该作者
感谢官方提供的方法和例程,我要仔细研究一下。

使用特权

评论回复
7
fcccc| | 2020-11-20 14:42 | 只看该作者
很好的操作,支持一下.

使用特权

评论回复
8
勇敢的大白菜| | 2020-11-24 09:20 | 只看该作者
现在的arduino平台,确实很火。

使用特权

评论回复
9
七毛钱| | 2022-12-2 09:54 | 只看该作者
加群加群,很棒的操作,多和各路大神交流一下

使用特权

评论回复
10
ly87802541| | 2022-12-7 11:34 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

33

主题

69

帖子

3

粉丝