切换到宽版
  • 9437阅读
  • 38回复

ARDUINO FOR STM32F1/4 (HALMX构架)正式发布 [复制链接]

上一主题 下一主题
离线mousebat04

发帖
14265
M币
8355
专家
8
粉丝
69
只看该作者 10楼 发表于: 2016-12-14
主要问题在于我对arduino标准函数的无知。。我好像没救了。。。。【苦笑】
本帖最近打赏记录:共2条打赏M币+6
965039114 M币 +3 歡迎探討 2016-12-14
huaweiwx M币 +3 - 2016-12-14
离线xktx09

发帖
4905
M币
2885
专家
2
粉丝
121
只看该作者 11楼 发表于: 2016-12-14
好吧,感谢老大让我等玩上stm32
本帖最近打赏记录:共2条打赏M币+6
cao57508 M币 +3 精彩回帖 2016-12-18
huaweiwx M币 +3 - 2016-12-14
离线搅搅震

发帖
7466
M币
6800
专家
3
粉丝
33
只看该作者 12楼 发表于: 2016-12-14
虽然不会玩,但是必须支持。
本帖最近打赏记录:共3条打赏M币+9
cao57508 M币 +3 精彩回帖 2016-12-18
mousebat04 M币 +3 - 2016-12-15
huaweiwx M币 +3 謝謝 2016-12-14
离线af5498

发帖
2517
M币
5564
专家
7
粉丝
74
只看该作者 13楼 发表于: 2016-12-14
支持,好东西,必须支持。
本帖最近打赏记录:共2条打赏M币+6
mousebat04 M币 +3 - 2016-12-15
huaweiwx M币 +3 - 2016-12-14
离线huaweiwx

发帖
1142
M币
1015
专家
49
粉丝
193
只看该作者 14楼 发表于: 2016-12-15
主要更新增强内容:
1  修正了已知的错误,包括样板中的错误;
2  ARDUINO 核心 支持 STM32CubeMX Releases 更新到最新版本:
     Software to configure and manage STM32 MCUs V4.18
     firmware Package for STM32F4 V1.14.0;
     firmware Package for STM32F1 V1.4.0;
3  板子支持:
   stm32f1xx, GD32f1xx, STM32F401CCU6、STM32F407VET6、STM32F407IGT6,STM32F746IGT6,
4  增强对stream的支持:
   原arduino仅支持stream的部分特性,现在重载了<<这个操作符,可以在所有使用print的场合使用(提供example),如:
   Serial1<<"HELLO MYDIGIT.CN "<<2016<<" by huaweiwx\n";
   就可以串口输出: HELLO MYDIGIT.CN 2016 by huaweiwx;
5  支持F4系列内建usb Dfu,现在可以选择串口下载或usb dfu下载;更方便编程调试下载,在那个F401核心板上,再也不需要外接usb 转串口线了。
6  暂时不支持 DSP 核心代码和 FREERTOS 中间件,因为 DSP 的加入会导致一次处理文件过多超过了GCC最大命令行长度64k,而FREERTOS的加入改变了使用的习惯,这两部分在以后的正式版本中将这样处理:
   DSP 部分先预处理成库(*.a)文件,这样只要连接即可,而FREERTOS和以前的使用方式一样,用arduino lib方式按需引用;
7  因为许多老代码使用StdPeriphLib,因此专门写了个StdPeriphLib 库,支持将用StdPeriphLib写的代码连接入arduino使用;
8  提供一个 OLED_I2C的库文件;
9  对pin操作,增加了翻转端口的函数: digitalToggle(pin);
10 增加类似51的操作方式:
    PA(12)=1;         相当于 digitalWrite(PA12,1);
    及input = PA(12); 相当于  input = digitalRead(PA12)
11 hal构架支持hal库函数;
13 便于扩充新的芯片和板子;和硬件无关的通用代码在core中,和系列相关的代码分别在variant在中的
    MxF1xx
    MxF4xx
    MxF7xx
    而和具体芯片板子有关代码在其中SW4STM32中对于子目录内;
14 可输出库调试信息 assert_param(....),对于不正确调用hal库,在调试期间可以快速发现和定位;
15 对具有一键usb转串口下载的板子,不需要改boot0跳线,自动一键下载;
16 对具有dfu板子,支持usb下载;
本帖最近打赏记录:共1条打赏M币+3
cao57508 M币 +3 - 2016-12-18
离线hongo

发帖
49397
M币
129580
专家
240
粉丝
15124
只看该作者 15楼 发表于: 2016-12-15
用STM32性能会好很多把
本帖最近打赏记录:共1条打赏M币+3
huaweiwx M币 +3 - 2016-12-15
离线oscillator

发帖
3903
M币
918
专家
23
粉丝
107
只看该作者 16楼 发表于: 2016-12-15
回 huaweiwx 的帖子
huaweiwx:我在上面注册了,也下载了GitHubSetup.exe,但就是无法安装,再说英文也不好,找不到 在github上共享的教程。 (2016-12-14 22:13) 回 huaweiwx 的帖子

上传到github不需要安装任何软件。注册账号,登陆账号,选择上传文件,完成。
本帖最近打赏记录:共1条打赏M币+3
huaweiwx M币 +3 謝謝,我试试 2016-12-15
离线ynymwtb

发帖
345
M币
2043
专家
8
粉丝
22
只看该作者 17楼 发表于: 2016-12-15
我的开发板还没有焊好,发贴记录
本帖最近打赏记录:共1条打赏M币+3
huaweiwx M币 +3 - 2016-12-15
离线huaweiwx

发帖
1142
M币
1015
专家
49
粉丝
193
只看该作者 18楼 发表于: 2016-12-15
回 hongo 的帖子
hongo:用STM32性能会好很多把 (2016-12-15 12:29) 回 hongo 的帖子

32位arm和avr 51 性能提升很多,关键是外设多,有usb用起来方便。
离线huaweiwx

发帖
1142
M币
1015
专家
49
粉丝
193
只看该作者 19楼 发表于: 2016-12-16
补丁一已发布;

补丁主要内容:
一、 针对 STM32F401CCU6
   1  hardware\arm\HALMX\cores\mapleMX\wiring_analog.c
   2  hardware\arm\HALMX\variants\MxF4xx\Src\tim.c
   STM32F401CCU6 是个残疾的F4 chip,先天不足,没有TIM8,我在针对F407等芯片移植增加TIM8等支持后,没有对F401CCU6这个芯片的判断,因此这两个文件中增加了对TIM8的宏比较,解决编译错误;

二、实例通用性
   1  hardware\arm\HALMX\libraries\HAL_Examples\examples\1.Basic\Blink1_Std\Blink1_Std.ino
   将LED 定义由 PC13改为 LED_BUILTIN,适用于全系列ARDUINO板子;
   注意:只有在我的板子上,LED_BUILTIN 已经默认输出方式,其它板子或其它脚,仍需要该语句:
     pinMode(xxx,OUTPUT);

补丁方法:
将hardware文件夹copy 到 arduino 1.6.11 安装目录,覆盖hardware同名文件夹;
或将其中对应的三个文件作替换;
其它:请检查 arduino1611.patch 内文件的日期,并更新本地安装目录的同名文件;


顺便我要吐槽下st,无论是USB 转串口还是USBDFU,提供的驱动程序总是有点小问题,有的在xp下没问题了,在win7下有问题,有的在win7下可用,但到xp就不行,有时插在usb2.0口没问题,在3.0口上出问题了。弄得头多大了!

[ 此帖被huaweiwx在2016-12-16 11:54重新编辑 ]
快速回复
限80 字节
“新手上路”发帖需审核后才能显示(请认真发帖),达到数码9级后取消此限制
 
上一个 下一个