kylongmu 发表于 2018-12-4 22:30:19

最近研究ARDUINO下STM32的开发,果然非常强大!!!

本帖最后由 kylongmu 于 2018-12-5 09:52 编辑

http://github.com/stm32duino/wiki/wiki/Getting-Started
按照提示安装后,用Nucleo-32的432LKC开发板编译闪灯通过。
然后进阶,买了IL3820驱动的电子墨水屏296X128分辨率,安装U8G2库,直接例子代码驱动,只需要配置SPI及其它引脚序号,电子墨水屏成功输出。
换SSD1322驱动的256X64分辨率OLED屏,上面例子仅改下映射对象,OLED同样成功输出。
感觉爽的不要不要的,之前用CubeMX+Keil调试这两个屏,那是费死劲,看数据手册,看例子移植几天才搞定,现在用Arduino就是分分钟的事情(刨除学习时间。其实学习也很快的,尤其是有Keil、FreertOS、C++经验的秒懂全栈原理)。
再进阶U8G2带了汉字字库,简单改下例子中的引用字库名,汉字瞬间打印出来,都不需要像以前那样去转字模了。
以下是Arduino支持的板子列表:
http://github.com/stm32duino/Arduino_Core_STM32/blob/master/boards.txt

kylongmu 发表于 2018-12-5 09:47:07

本帖最后由 kylongmu 于 2018-12-5 11:43 编辑


图上MCU已经掉电,电子墨水屏依然保留显示!


kylongmu 发表于 2018-12-5 09:51:20

#include <Arduino.h>
#include <U8g2lib.h>

#ifdef U8X8_HAVE_HW_SPI
#include <SPI.h>
#endif
#ifdef U8X8_HAVE_HW_I2C
#include <Wire.h>
#endif

U8G2_IL3820_V2_296X128_F_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 18, /* data=*/ 20, /* cs=*/ 17, /* dc=*/ 6, /* reset=*/ 3);// L432 ePaper Display, lesser flickering and faster speed, enable 16 bit mode for this display!

void setup(void) {
u8g2.begin();
u8g2.enableUTF8Print();    // enable UTF8 support for the Arduino print() function
u8g2.setFont(u8g2_font_wqy16_t_chinese3);// use chinese3 for all the glyphs of "你好世界"
u8g2.setFontDirection(0);
}

void loop(void) {
u8g2.clearBuffer();                                        // clear the internal memory
u8g2.setCursor(0, 15);
u8g2.print("Hello World!");
u8g2.setCursor(0, 40);
u8g2.print("世界你好");    // Chinese "Hello World"
u8g2.sendBuffer();      
delay(3000);
}实现图片功能源代码。

ap0405209 发表于 2018-12-5 11:18:23

这个只有官方的板块?
如果是自己做的电路板是如何操作?是否有这方面的资料?

strang 发表于 2018-12-5 11:26:19

很强大

kylongmu 发表于 2018-12-5 11:47:54

ap0405209 发表于 2018-12-5 11:18
这个只有官方的板块?
如果是自己做的电路板是如何操作?是否有这方面的资料? ...
这是如何添加自己板子的说明:
http://github.com/stm32duino/wiki/wiki/Add-a-new-variant-(board)

ap0405209 发表于 2018-12-5 11:53:15

kylongmu 发表于 2018-12-5 11:47
这是如何添加自己板子的说明:
http://github.com/stm32duino/wiki/wiki/Add-a-new-variant-(board) ...

好的 谢谢我研究一下

kylongmu 发表于 2018-12-5 12:03:42

本帖最后由 kylongmu 于 2018-12-5 12:06 编辑


STM32的FLASH不够放220KB的全汉字点阵库。这是换ESP32的,输出非常用字测试,4MB的FLASH够折腾。
同样代码只需要改一下SPI引脚号就可以,瞬间感觉跨嵌入式MCU平台大杀器。
12X12点阵显示复杂汉字看不清,库里居然还有16X16点阵,太爽了。


watershade 发表于 2019-1-4 09:46:21

U8G2那个库的确不错,楼主可以试一下用platformio开发。也可以使用HAL或Arduino

fenger1026 发表于 2019-1-21 11:51:49

最近也开始再arduino上折腾STM32,正在做平衡小车,自己画了个PCB板子
页: [1] 2
查看完整版本: 最近研究ARDUINO下STM32的开发,果然非常强大!!!