历史上的今天
返回首页

历史上的今天

今天是:2024年08月22日(星期四)

正在发生

2019年08月22日 | STM32F10 OLED液晶显示(IIC)

2019-08-22 来源:eefocus

2019年7月27日
做小车的第六天。


今天我实现了一个新的功能 OLED显示汉字。


刚开始学习这个显示汉字的时候也是一头污水,代码啊大部分看不懂,看OLED讲解的那个视频反复看了好几遍。还是没什么思路。


但是那自己慢慢的开始修改自带的源代码,尝试的去做,从显示点、线、字符、字符串一步步的开始进行,随着这个一步步的学会,显示汉字那,哈哈,原理也是差不多。


大致思路也就是调用.c中的函数,设置里面的变量,去调出自己想要的字符,汉字的代码(这些代码都是在一个数组里)


先说说重要的,怎么显示出汉字:


比如我们想让OLED显示屏显示一个字符串:“CODE”,
主函数是这么两条语句:


OLED_ShowString(63,48,“CODE:”,16); (63和48是字符串在屏幕中显示的位置,也就是坐标。)
//OLED_ShowString(u8 x,u8 y,u8 *chr,u8 size1)
//x:0~127
//y:0~63
//size选择字体大小 12/16/24


这两条语句的拆解步骤如下


1、既然是显示字符串,我们就得调用字符串显示函数:
void OLED_ShowString(u8 x,u8 y,u8 chr,u8 size1)
2、这个字符串显示函数通过指针p不断调用字符显示函数:
void OLED_ShowChar(u8 x,u8 y,u8 chr,u8 size1)来显示字符中的每个字符
3、字符是怎么组成的?由点组成的嘛。。在OLED_ShowChar()函数中又调用画点函数:
void OLED_DrawPoint(u8 x,u8 y)
4、而第二条语句至关重要,这个语句把我们之前开辟的一块128*8字节的空间里面的数据传输到SSD1306(OLED模块控制器)的GRAM中。这样我们的汉字就显示出来了。


我来举一个例子:
比如我想在屏幕上显示 “河北科技大学”
1、我首先要把6个字的字模制作出来:
配置如图在这里插入图片描述

之后我们在自己的库里这几个字模加进库里。
主函数这样写:
OK。
在这里插入图片描述

在这里插入图片描述


推荐阅读

史海拾趣

Anritsu公司的发展小趣事

Anritsu公司是一家在电子行业内拥有悠久历史的领军企业,以下是关于该公司发展的五个相关故事:

  1. 成立与早期发展: Anritsu公司成立于1895年,最初名为Anritsu Electric Corporation。起初,该公司主要从事日本和国际市场的电信设备制造和销售业务。20世纪中叶,随着日本电信技术的发展,Anritsu开始专注于电信测试与测量领域,并开发了一系列先进的测试仪器。

  2. 技术创新与产品线扩展: 随着电信技术的迅速发展,Anritsu不断进行技术创新,推出了一系列领先的测试与测量仪器,包括频谱分析仪、网络分析仪、光通信测试设备等。这些产品在电信、无线通信、半导体等领域得到了广泛应用,为行业的发展提供了强大支持。

  3. 国际化发展: 在日本国内市场取得成功后,Anritsu逐渐将业务拓展到国际市场。公司在世界各地设立了分支机构和办事处,建立了完善的销售与服务网络,以更好地满足全球客户的需求。特别是在美国、欧洲和亚洲等地区,Anritsu建立了广泛的合作伙伴关系,拓展了市场份额。

  4. 对5G技术的贡献: 随着5G技术的快速发展,Anritsu积极投入到了5G测试与验证领域。该公司推出了一系列针对5G通信系统的测试仪器和解决方案,包括5G网络分析仪、5G基站仿真器等。Anritsu的技术和产品为全球5G网络的部署和优化提供了重要支持。

  5. 持续创新与发展: Anritsu一直以来致力于技术创新和产品研发,不断推出符合市场需求的新产品和解决方案。公司与全球领先的通信运营商、设备厂商和研究机构保持密切合作,不断优化产品性能和功能,为客户提供更高水平的技术支持和服务。

通过持续的创新和国际化发展,Anritsu已经成为了电子行业中的知名品牌,为全球通信技术的进步和发展做出了重要贡献。

Delus Corp公司的发展小趣事

Delus Corp公司非常重视人才培养和团队建设。公司积极引进高素质人才,并为员工提供良好的培训和发展机会。公司建立了完善的激励机制和绩效考核体系,激发员工的工作积极性和创造力。同时,公司还注重团队建设和文化建设,营造了一个积极向上、团结协作的工作氛围。这些措施的实施,使得公司拥有一支高素质、专业化的团队,为公司的发展提供了有力的人才保障。

American Micro Products Inc公司的发展小趣事

随着产品线的不断丰富,AMP开始积极寻求市场拓展的机会。公司通过与国内外知名企业的战略合作,成功将产品打入更广阔的市场。同时,AMP还积极参加各类行业展会和论坛,与业界同仁交流学习,不断提升自身的市场竞争力。

Cermetek Microelectronics公司的发展小趣事

随着产品的推出,Cermetek Microelectronics公司开始注重品质管理。公司建立了严格的质量控制体系,从原材料采购到生产流程,再到最终的产品测试,都经过严格的把控。这种对品质的执着追求,使得公司的产品在市场上获得了良好的口碑。同时,公司还积极拓展市场,与多家知名企业建立了合作关系,进一步提升了品牌影响力。

Gravitech公司的发展小趣事

Cermetek Microelectronics公司在创立之初,便专注于微电子技术的研发与创新。创始人凭借在半导体领域的深厚背景,带领团队攻克了一系列技术难题,成功开发出具有高性能和稳定性的微电子产品。这些产品不仅满足了市场对微型化、高集成度的需求,更在多个关键领域实现了技术突破,为公司赢得了市场的初步认可。

FINDER公司的发展小趣事

Cermetek Microelectronics公司在创立之初,便专注于微电子技术的研发与创新。创始人凭借在半导体领域的深厚背景,带领团队攻克了一系列技术难题,成功开发出具有高性能和稳定性的微电子产品。这些产品不仅满足了市场对微型化、高集成度的需求,更在多个关键领域实现了技术突破,为公司赢得了市场的初步认可。

问答坊 | AI 解惑

【讨论】“嵌入式裸奔”、“嵌入式OS”、“OS”各适合什么场合?

如果你只能用的心: A)如果你手上是4位MCU? B)如果你手上是8位MCU? C)如果你手上是16位MCU? D)如果你手上是外设不多的32位MCU? E)如果你手上是外设丰富的32位MCU? F)如果你手上是外设极其丰富的64位MCU? 你要做什么产品: a)如果你 ...…

查看全部问答>

电子变压器

求助: 交流220V转交流110V 20A 的电子变压器型号,哪儿有售? 或上说电子变压器的电路图 谢谢!…

查看全部问答>

EVC的模拟器能否和PC串口上的GPRS模块进行通信?

EVC的模拟器能否和PC串口上的GPRS模块进行通信? 有人做过类似模拟器和PC串口上的设备进行通信的吗?…

查看全部问答>

一个关于ListCtrl的问题

遇到一些问题。希望各位不吝赐教。先谢过了。 现在有两个界面,称为A和B吧。 通过网口传输数据。在A界面接收数据,然后在B界面通过一个ListCtrl显示 ListCtrl控件选择为report 每接收一个数据就在list中显示一个。 现在的问题是。如果在A界面 ...…

查看全部问答>

有没有人研究过8962的OLED图片显示程序啊

一个人研究的郁闷,过来找大家问问BITMAP_HEADER_SIZE 这个宏定义的是什么?RIT128x96x4ImageDraw()这个函数有人看过吗…

查看全部问答>

2013 WEBENCH 创新挑战赛

1、 竞赛内容基于TI模拟设计软件WEBENCH的开放式自主命题开源竞赛。凡基于WEBENCH软件设计的TI电源(DC-DC或LED驱动)作品均可参赛。竞赛报名、作品提交和作品评比均在网上进行。比赛的重点在于利用Webench设计电源电路,并实现该电路。2、参赛条件 ...…

查看全部问答>

4.3 扩展硬盘分区

android扩展的100G硬盘实现了,不过多了一个 /dev/sr0     695M  695M   0  100%  /media/Ubuntu 12.04.2   LTS amd64 多出这个数据会影响下面的安装么 …

查看全部问答>

直流供电,不断电切断单向可控硅,探讨

我手里有一个可以正常工作的板子,上面的电路,如图所示,使用的是单向可控硅100-8,按照我们平常接受的知识,在通过可控硅电流大于IH的情况下是无法关闭可控硅的,但是这个电路确实可以关闭,这是要反科学了么 …

查看全部问答>