一,概述
拿到NUCLEO-F411RE也有两个周了,第一周完成了一篇开箱评测,还没来得及进行深入研究。这周抽个周末摸一下这块入门级高性能芯片的性能。
本篇评测的主要内容为串口输出图像。在有些论坛,经常看到有看到一些有趣的图像,说图片其实也不准确,应该是利用文字的排版完成了一副图像的输出。比那些直接的图像显得更加有趣好玩。本文就利用NUCLEO-F411板载的STM32F411RET6输出类似的图像。下图是我输出的部分文字,炯炯有神的眼睛,猜猜我是谁~~~
二,开发平台搭建
现在貌似Cube比较流行,只要点几下配置配置源代码就生成了。但是本人不爱学习新东西,至今还没摸过这玩意,所以还是以我熟悉的标准库来进行开发。开发工具用的是IAR,IAR简洁大方,就是输入提示功能实在是有点跟不上节奏,要能做到VS的提示输入功能,那真是要好用到飞起了。打开标准库中模板\en.stm32f4_dsp_stdperiph_lib\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Templates\EWARM\Project.eww工程。打开后如下图,图中的MCU选择应该选择板卡对应的STM32F411xE。编译下载能够运行的断点能够跳到Main函数,基本就算运行环境OK。
三,LED灯驱动
开发环境建立完成,首先操作毫无疑问就是进行LED常规电灯操作。
根据板卡电路图LED的配置到了两个引脚PA5和PB13,一开始没有仔细看,配置到了PB13,发生了什么情况你们懂得。点灯程序比较简单,直接贴图就好
四,串口驱动
对于玩MCU的来说点灯是第一步,Hello word的串口输出是和点灯同样重要的完美搭档。废话不多说。先查看原理图,串口的配置在PA2和PA3上,查看Datasheet,其配置为串口2。串口也是比较简单的,贴代码就OK了。
五,串口输出趣味图像
本人桌面是这个Nike的标语。受其启发,本实例也是做得简化版的此种效果。先看看单片机版的Just doit 吧。下面我以输出文字为例子,详细给出制作这种效果的方法。
1. 制作需要输出的图片
打开电脑自带的图片编辑器。在上面调整背景大小,我图中的背景为104*32。在图上打上JUST DO IT的文字。然后另存为BMP图片格式,注意图片的格式为单色位图。
然后我们就要处理这个图片了。找到ImageLcd这个软件。打开软件输出图片设置图片转换格式。这里有好多输出的样式,可以实现镜像、负片等效果。这个后面读者可以自行尝试。本文对正常的文本进行处理。然后保存成.h或.c文件。到此部,数据的基本处理已经OK了。后面就要去程序中处理了。
2. 数据进行输出
输出的文件格式为一个数组。每个字节代表横向的8个像素的值,这个和扫描方向有关系。例如本实例中,第一个字节内容为0x00,则分解成二进制00000000的BIN格式,bit为0表示没有黑色像素落到此区域,所以串口输出空格,如果bit为1,则输出实体的表示字符。本例中用‘ ’表示为无,‘A’表示为有像素值。
图片输出程序其实特别简单,如下图的图片所示。
3. 图像输出
其实拓展到其他图片都是一样的,如下图。这个其实就是本文一开始那对囧囧有神的眼睛。
经过上述步骤的操作处理后,输出的图像如下
六,总结
本文简单的描述了如何用串口输出一个二值的图像。希望本文的抛砖引玉能够使得爱折腾的你能够发现更多的奇妙玩法。在此也要感谢面包板社区提供的NUCLEO-F411RE开发版,后面有时间还会就其处理器性能进行进一步评估。
文章中涉及的附件在下列帖子:https://forum.mianbaoban.cn/topic/71366_1_1.html
作者: zoudejile, 来源:面包板社区
链接: https://www.mianbaoban.cn/blog/uid-me-280218.html
版权声明:本文为博主原创,未经本人允许,禁止转载!
上传资料赢大奖:平板、硬盘、蓝牙耳机!还能躺着赚E币...
点击 “阅读原文”参加