51单片机16*16点阵4个汉字LED屏显示 请帮忙修改下程序,其他都不变,仅让后来的上移改成左移
http://pan.baidu.com/s/1emA55程序在这里!大家下下来看看,改成左移就好,四个汉字一起左移的!...
http://pan.baidu.com/s/1emA55程序在这里!大家下下来看看,改成左移就好,四个汉字一起左移的!
展开
1个回答
展开全部
LED上下移动很简单,麻烦一点的是左右移动。
程序懒得写了,给你个思路吧,你在内存中开辟(16÷8+1)×16=48个字节的缓存。每行3个字节,实际显示2个字节的内容。
在定时器中断中定时扫描列的内容。第一次中断,从行缓存头上开始,每行送16个BIT,共16行,第二次中断,从行缓存头上开始,每行送17个BIT,共16行,第三次中断,从行缓存头上开始,每行送18个BIT,共16行,。。。依此类推。第九次中断,更新缓存字节的内容,每行送16个BIT。
每次送的BIT超过了实际显示的象素,这样从显示的效果看起来就是字在向左移动。
与之对应,如果先送24个BIT,然后,23,然后22,则显示效果是右移
程序懒得写了,给你个思路吧,你在内存中开辟(16÷8+1)×16=48个字节的缓存。每行3个字节,实际显示2个字节的内容。
在定时器中断中定时扫描列的内容。第一次中断,从行缓存头上开始,每行送16个BIT,共16行,第二次中断,从行缓存头上开始,每行送17个BIT,共16行,第三次中断,从行缓存头上开始,每行送18个BIT,共16行,。。。依此类推。第九次中断,更新缓存字节的内容,每行送16个BIT。
每次送的BIT超过了实际显示的象素,这样从显示的效果看起来就是字在向左移动。
与之对应,如果先送24个BIT,然后,23,然后22,则显示效果是右移
追问
程序我有的诶,上头那个网址你点进去下载么,我传百度云盘了!你帮我改下吧 改成左移就成,谢谢啦!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询