微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > ARM技术讨论 > 利用扩展IO口外接液晶屏

利用扩展IO口外接液晶屏

时间:10-02 整理:3721RD 点击:
上一贴写了如何使用扩展IO口。这里利用ThunderBoard额外的IO口来接一个液晶屏幕。毕竟掌上设备嘛,有个人机交互接口是应该的~
需要自己动手来焊接一个液晶屏转接版,先看一下焊接好的效果图


首先割一块大小和Thunderboard差不多的洞洞板。宽度长度,可以兼顾所有的扩展IO


根据扩展接口的图来焊接。我这里使用PC6-PC9,PA0这5个IO口


焊接座子


焊接完成后,把ThunderBoard、转接版、液晶屏插在一起。顺便用万用表量一下。确保VCC和GND没有短路,各信号线引脚无误之后在上电。


右侧视图


开始驱动程序部分,上一贴已经对IO口使用做了详细讲解。这里直接开始配置各个引脚了。
首先是各个引脚的定义,我这里使用的是OLED液晶屏。刚开始的时候我使用了PC6-PC10这5个IO口。全部都是设置的推挽输出,唯独PC10这个引脚输出电平不对,不管我修改输出寄存器使之输出高电平还是低电平,这个引脚始终是高电平。这是我调试程序的时候发现的,程序写好之后,无显示,我一边单步调试一边测各个引脚是否如我想要控制的那样,才发现这个问题的。其他引脚都挺正常。找了半天没找到原因所在,没那么多时间去研究,就把PC10改为使用PA0了。知道原因的小伙伴给我留个言~


接着是OLED初始化部分程序,可以简化一下。这里故意写的很啰嗦,每个口怎么初始化的会比较清晰。请自动忽略注释吧,才看见,那是之前OLED厂家给的一段初始化程序,后来我自己看了下手册,觉得他写的莫名其妙,瞎浪费时间 - -


芯科官方的编译环境,真心的不熟悉,也可能是因为不熟悉,反正我感觉不好用。不过调试还是比较方便的,这是初始化液晶屏部分的程序,右上侧可以打开寄存器列表,清晰的观察每个寄存器的状态。


调试结果


先随便显示点什么,后面有时间写个菜单。加上液晶屏是否更可爱了~要是能做个壳子就更好了

小编这个厉害!建议把OLED板子型号和购买途径公布一下。

谢谢捧场~ 这个是在某宝买的 0.96寸,SPI接口的OLED,主控芯片是SSD1306

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top