hhjc.net
当前位置:首页 >> 怎样用C语言实现lED点阵显示字符移动 >>

怎样用C语言实现lED点阵显示字符移动

没写过 不过我想可以用for循环 数组移位然后显示 中间delay一下 这样应该可以

显示很简单,就是屏幕打印printf就可以,点阵这个需要字模库,移动其实也不难,就是个思路的问题,就是打印,等待,清屏,再打印的过程

你静止显示会了,我代码就的懒得写了,给你介绍下思想.并不是字真在移动,只是你每次显示的图像不一样的,连续显示16次出来就是移动.比如上下移动,你有个函数能显示一个字模数组.你把“西”的整个字的字模放到这个数组显示的是西字,你把“安”放进去就是安字.你把西字16行的后15行字模信息接上安的第1行(一共就是16行)放到一起作为一个字模数组显示出来就是下移了一格,把西后14行接安的前2行(共16行)放到一起作为一个字模数组显示出来就是下移了两格,依次排下去到16次的时候就完整下移一个字了.左右一样的,你把“西”每行的后15列接上“安”每行的第一列作为一个数组显示就是左移一位,同理依次移下去16次一个字的左移就ok

由程序看来p2口是用来控制点阵行扫描的,p1口负责送显示的数据 p2=0x01; //起始行高电平 for(i=0;i { p1=tab[i]; delay(100); //每行点亮时送上相应的显示数据(即tab[i]里的数据) p2=p2>7; // 点亮下一行 其实点阵显示就是:(针对16*16点

不知道你的硬件是什么结构,是好是发硬件图上来,要不怎么写程序

C语言中,汉字是储存在汉字库里的.每个汉字在字库中以点阵字模形式存储,一般采用16*16点阵形式,每个点用一个二进位表示,存1的点,当显示时,可以在屏上显示一个亮点,存0的点,则在屏上不显示,这样把存某字的16*16点阵信息

每屏显示时,列控制码左(右)移,就可实现点阵屏左(右)移动.以显示“ | ” 从右向左移为例,第1 屏,右边第1 列亮1ms后灭,第2 屏,第2 列亮.8 屏显示后,完成“| ”左移.

液晶显示屏是不停闪烁的,而且一次只能显示一个图案.显示屏上显示12345也是每次在一个位置上显示一个数字,不停的显示五次,由于计算速度快,及人眼暂留现象,使人感觉上显示的是12345.现在,你如果需要动画效果,需要从底层做起.一,写函数,完成指定位置显示指定字符.二,写延时函数,三,写延时显示字符函数,四,再写main中动画.

相信你是个新复手,相信你用的是51的两排8位口实现的功能,那么楼上的解释你可能不太懂(说实话我也不是很懂.) 但是简单一点来说led点阵需要两排8位,一个负责行,一个负责列,比如0是选中的意思,那么行是01111111,列是1011111,那么第一行的第二列灯亮制.原理说完,那么左移的话那就简单了,简单而言,行不变,列左移一位,比如上面的行保持01111111,列在下一次变成01111111,就使得第一行的第一列亮灯了.那么在左移的时候,行是不用变,原来是多少就多少;而列呢,每次使用左移符号”<<“左移一位,就达到了左移显示的zhidao效果了.

此点阵屏代码适用于P10模组,压缩包内含有两个,一个是16*32、另一个是16*64;代码在使用时需要修改.主要用74H595串入并出芯片驱动,74LS138做行扫.工作方式1/4扫描.望采纳.

网站首页 | 网站地图
All rights reserved Powered by www.hhjc.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com