本帖最后由 wind_west 于 2021-11-24 00:05 编辑

1、了解开发板
进入面包板社区的MM32开发板测评界(地址:https://mbb.eet-china.com/evaluating/product-76.html#introduce),能够看到我们的开发板的细节以及开发文档。
图片1.png
开发板正面:
图片2.png
2、转折:
使用手册的链接似乎失效了,看来需要另外找资料了。
图片3.png
在 IDE support pack:中似乎可以找到一些资料。在IAR和keil之间还是keil使用的比较多,这次时间紧张就按照keil来开发做点小内容。从上面的链接不能直接下载资料,我决定先去官网(地址:https://www.mindmotion.com.cn/)然后找资料。
图片4.png

3、下载资料:
暂时下载了4份资料:MB-036_MM32F3277G7P_eMiniBoard.pdf 、ug_mm32_emb_EN.pdf 、ug_mm32_emb_SC.pdf 、MM32_KEIL_Pack_Ver1.45.zip。

图片5.png
现在肯定还缺一个例子文件。先看看快速手册,看能不能找到一些相关的信息。找了一圈似乎没有,先把package安装吧。
先打开keil,我这是家里的电脑做学习使用的。然后进入package安装界面,方式和STM32应该类似。

图片6.png
先试着装装看。我这已经包含了MM32的相关package,过程就不再赘述了。基本步骤:file->import.
ExampleSample的文件在官网找不到,从其他教程中获得文件: MM32F3270_Lib_Samples_V0.90.zip。



开始一个新的开发板DEMO是逃不掉的,再次回过头来找到我们需要的DEMO。
定位MM32F327xx的例程:
官网首页(https://www.mindmotion.com.cn/) ->产品(选择 MM32F3270,如图1) ->工具和软件(库函数与例程,如图2)->下载例程。

图片7.png

图片8.png

现在所需要的资料就齐全了,开始我们的oled移植。

4、开始编译IIC的工程:
4.1、设置SCL、SDA引脚
MM32的PB6、PB7也是I2C的硬件引脚,两个引脚都可以设置为输出。SDA设置为输出的时候,不能设置为输出上拉。

图片9.png
STM32可以吗?---可以,专门有个成员变量为 :
gpio_initstruct.Pull = GPIO_PULLUP;


图片10.png
MM32的引脚设置少:
图片11.png
小结:根据原理图因为PB6、PB7外部上拉同时也是硬件IIC的引脚,这次驱动OLED就选择这两个引脚。
4.2、初始化oled
主函数函数的测试很简单:初始化引脚、驱动oled。
图片12.png
在OLED的初始化中初始化两个引脚:全部设置成输出。上拉由外部电阻完成。
图片13.png
图片14.png
4.3、设置SCL、SDA的高低电平
这里的SDA驱动没有涉及读取,所有一直是输出,只是不同时刻输出的电平不一样。
图片15.png
程序修改到这里,OLED其实已经点亮了。

fcae15f0b464d9435f4a1550ef53f9f4 (1).gif


5、结束---