0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

arduino童芯派彩屏显示图片,图片取模后在TFT液晶显示

电子设计 来源:电子设计 作者:电子设计 2020-12-24 15:18 次阅读

继续玩童芯派,128x128的彩屏应该是童芯派的一大亮点,150元(零售价)的开源硬件带这么大的彩屏还是很少见的(非常有职业操守,就不对比其他板子了)。

别的不BB了,直接进入正题,先说原理。

原理:

无论是12864的液晶还是1602的液晶,还是彩色的TFT的液晶,原理上是差不多的,只不过一般的黑白液晶是用0和1来显示一个点,比如0代表不现实,1代表显示,这样一堆的点就能够组合出图案了。彩屏的原理也一样,只不过因为要表示彩色,所以不能只用“黑”和“白”来表示,需要用更多的数字区分不同的颜色

总结:将每个点的颜色信息发送到屏幕模块上,就能显示图像了

针对童芯派,童芯派上是128×128个点组成的,即128行,128列,一共128×128个点,如果是用01表示黑白,那么这些点理论上需要128×128×1b的存储空间(b是小写的,即bit,位,8b=1B),如果我们要显示16位的图像,那么就需要128x128x16b=128x128x2B的空间来存储这些图像信息(存储空间不用太关注,但现实的原理要了解,回头写程序用)

程序:

正常传统的思路是根据液晶的芯片手册来编写程序,将每个点的信息写入到模块里。这显然太麻烦了,arduino创客玩家不这么玩,另外官方也提供了底层的驱动库,我们直接拿来用。

上图是童芯派库的目录文件结构(PIO里截的图,这样比较好看),其中lcd.c就是底层驱动,cyberpi.cpp是“逻辑层”驱动,可以理解为cyberpi.cpp是在lcd.c的基础上将功能进行了进一步封装。

这次我们需要的函数在cyberpi.cpp中,函数名称及参数

void CyberPi::set_lcd_pixel(uint8_t x,uint8_t y,uint16_t color)

set_lcd_pixel函数需要3个参数,从上边讲述的原理很容易联想到x和y分别对应LCD的要显示点的位置,color就是要显示图像对应点的颜色。然后写个循环将上次用(【工具】TFT彩屏图片点阵取模工具,Img2Lcd图片取模软件,图片生成c语言头文件)工具生成的数组循环发给LCD就行了

for(int y=0;y<128;y++) { for(int x=0;x<128;x++) { picL = gImage_IMG16_XHR[128*x*2+2*y+1];//低位 在后 picH = gImage_IMG16_XHR[128*x*2+2*y];//高位 在前 data16 = picL|picH<<8; cyber.set_lcd_pixel(y,x,data16);//底层是128×第二个变量+第一个变量 } }

其中gImage_IMG16_XHR[]就是用Img2Lcd工具将图片转换成的数组,生成的数组是16位的,所以需要将数组的高位和低位组合给data16(16位数据)。因为童芯派屏的方向是“歪”的,所以x、y交换一下位置就行了。

审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 显示
    +关注

    关注

    0

    文章

    438

    浏览量

    45145
  • 设计测试
    +关注

    关注

    0

    文章

    8

    浏览量

    7595
收藏 人收藏

    评论

    相关推荐

    液晶显示技术的未来发展趋势

    液晶显示技术以其轻薄、低功耗、高分辨率等优点,已经成为现代电子设备中不可或缺的显示技术。随着消费者对显示效果要求的提高以及新技术的不断涌现,液晶显示技术正面临着新的挑战和机遇。 1.
    的头像 发表于 12-27 09:16 150次阅读

    【RA-Eco-RA4E2-64PIN-V1.0开发板试用】驱动TFT显示图片

    本篇我们来实验驱动TFT显示图片 如图所示TFT模块,2.0寸SPI协议176*220 核心驱动IO有,与RA开发板的接线方式为: CS——》P201 RST——》P205 RS——
    发表于 12-23 23:01

    贴片NTC热敏电阻液晶显示中的应用

    贴片NTC热敏电阻液晶显示中的应用
    的头像 发表于 11-25 15:02 178次阅读
    贴片NTC热敏电阻<b class='flag-5'>在</b><b class='flag-5'>液晶显示</b>中的应用

    液晶显示屏原材料主要有哪些

    液晶显示屏(LCD)是一种广泛使用的显示技术,它依赖于液晶材料的光学特性来控制光线的通过,从而在屏幕上产生图像。液晶显示屏的原材料非常多样化,包括各种化学材料、金属、塑料和玻璃等。 1
    的头像 发表于 10-12 10:43 1684次阅读

    液晶显示屏是什么材料做的

    的工艺流程。 液晶显示屏的工作原理 深入探讨液晶显示屏的材料之前,我们首先需要了解其工作原理。液晶显示屏的核心是液晶层,它由
    的头像 发表于 10-12 10:41 1004次阅读

    液晶显示屏与led显示屏的区别

    现代电子设备中,显示屏是人机交互的重要界面。随着科技的发展,显示屏技术也不断进步,其中液晶显示屏(LCD)和LED
    的头像 发表于 10-12 10:39 1356次阅读

    基于ArkTS语言的OpenHarmony APP应用开发:图片处理

    (),rotate()接口实现对图片的缩放,裁剪,旋转功能。案例说明:发表评价页面点击添加图片/照片,页面跳转到图片选择页面。进入图片选择页面
    的头像 发表于 09-20 08:07 559次阅读
    基于ArkTS语言的OpenHarmony APP应用开发:<b class='flag-5'>图片</b>处理

    基于ArkTS语言的OpenHarmony APP应用开发:图片显示

    宽高比进行放缩显示,使得图片完全显示显示边界外。 Contain:保持图片宽高比进行放缩
    发表于 09-14 14:22

    如何选择工业液晶显示器和消费类显示器?

          如今,TFT-LCD液晶显示屏或液晶显示器已成为多种应用的热门选择。不过,液晶显示器可分为工业级和消费类两种。虽然这两类显示器都
    的头像 发表于 06-23 17:53 871次阅读

    天马牵头两项液晶显示器件国家标准发布

    近日,国家市场监督管理总局(国家标准化管理委员会)批准发布一批重要国家标准,其中由天马牵头的两项液晶显示器件领域国家标准列,分别是GB/T 18910.2-2024《液晶显示器件 第2部分
    的头像 发表于 05-20 15:45 386次阅读
    天马牵头两项<b class='flag-5'>液晶显示</b>器件国家标准发布

    stm8液晶显示断电重启消失是什么情况?

    请问,stm8液晶显示断电重启消失,是什么情况
    发表于 05-13 08:07

    TFT液晶屏的核心组件之一是什么?传统的液晶显示屏相比具有哪些优势?

    随着科技的不断发展,液晶显示技术电子设备中扮演着至关重要的角色。而在众多液晶显示技术中,TFT液晶屏以其独特的优势逐渐成为市场主流。本文深
    的头像 发表于 04-01 09:16 926次阅读

    液晶模块是什么?液晶模块和液晶显示屏有什么区别?

    电子显示技术日益发展的今天,液晶显示技术以其独特的优势占据了市场的主导地位。液晶模块和液晶显示屏作为
    的头像 发表于 03-29 09:45 1255次阅读

    液晶显示屏的工作原理和生产工艺解析

    液晶显示屏是通过液晶材料的光学特性和电学特性来显示各种图像的。下面勋瑞光电科技小编将简要介绍液晶显示屏的工作原理和生产工艺。
    的头像 发表于 03-25 09:25 3265次阅读

    TFT液晶显示屏闪屏是什么原因?怎么处理?

    TFT液晶显示屏出现闪屏问题可能由多种原因引起,包括硬件故障、驱动问题和环境因素等。下面是深圳市勋瑞光电科技有限公司小编对TFT液晶显示屏闪屏原因及处理方法的详细分析: 一、电源
    的头像 发表于 03-11 09:39 1702次阅读