C语言编写16和32点阵字库

C语言编写16和32点阵字库,第1张

CFont ft

ft.CreatePointFont(90,_T("宋体"))//做点阵字体。 90 所需字体高度(用0.1点表示,例如,传递120表示12点字体)。

DC.SelectObject(&ft)

DC.DrawText((LPCTSTR)str,str.GetLength(),&rt,DT_LEFT)把你要的字写入一个DC

然后用GetPixel得到dc的点阵结构 至于怎么存储就看怎么使用了

LED的设置程序要用专用的程序控制器,例LED点阵书写显示屏一、任务设计并制作一个基于32×32点阵LED模块的书写显示屏,在控制器的管理下,LED点阵模块显示屏工作在人眼不易觉察的扫描微亮和人眼可见的显示点亮模式下;当光笔触及LED点阵模块表面时,先由光笔检测触及位置处LED点的扫描微亮以获取其行列坐标,再依据功能需求决定该坐标处的LED是否点亮至人眼可见的显示状态(如图1中光笔接触处的深色LED点已被点亮),从而在屏上实现“点亮、划亮、反显、整屏擦除、笔画擦除、连写多字、对象拖移”等书写显示功能。控制器32×32LED点阵模块光笔1.基本要求(1)在“点亮”功能下,当光笔接触屏上某点LED时,能即时点亮该点LED,并在控制器上同步显示该点LED的行列坐标值(左上角定为行列坐标原点)。(2)在“划亮”功能下,当光笔在屏上快速划过时,能同步点亮划过的各点LED,其速度要求2s内能划过并点亮40点LED。(3)在“反显”功能下,能对屏上显示的信息实现反相显示(即:字体笔画处不亮,无笔画处高亮)。(4)在“整屏擦除”功能下,能实现对屏上所显示信息的整屏擦除。2.发挥部分(1)在“笔画擦除”功能下,能用光笔擦除屏上所显汉字的笔画。(2)在“连写多字”功能下,能结合自选的擦除方式,在30s内在屏上以“划亮”方式逐个写出四个汉字(总笔画数不大于30)且存入机内,写完后再将所存四字在屏上逐个轮流显示。(3)在“对象拖移”功能下,能用光笔将选定显示内容在屏上进行拖移。先用光笔以“划亮”方式在屏上圈定欲拖移显示对象,再用光笔将该对象拖移到屏上另一位置。(4)当环境光强改变时,能自动连续调节屏上显示亮度。(5)当光笔连续未接触屏面的时间超过1~5min时(此时间可由控制器设定),能自动关闭屏上显示,并使整个系统进入休眠状态,此时系统工作电流应不大于5mA。(6)其他。三、说明1.设计制作时所用LED点阵模块的发光颜色不限。2.各种功能的切换方式自定,但应力求 *** 作简便。3.在各种功能的实际 *** 作过程中,必要时可用按键或其他控制方式进行辅助。例如,“连写多字”时,写完一字后用自定义控制方式存入该字并清屏,然后再写下一字。4.系统应采用5V单电源供电。

如果想控制的话其实找个有硬件SPI接口的51单片机,用SPI接口控制74HC595来外扩I/O控制点阵屏,这样控制比较方便一点(不然一般的51单片机最多只有40个接口,除去一些诸如VCC,GND和XTAL1、2之类的接口剩下的不多的接口来控制64个点阵屏的针脚的话程序会很麻烦吧……),程序设计也会更简单。

希望有帮助~~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11156254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存