社区
单片机/工控
帖子详情
点阵模块闪动
hallowwar
2010-06-09 12:13:53
1. 外部中断接受一帧数据, 接受完毕后进行新数据的LED点阵显示。(奇怪的是,数据更新显示正常,但现场调试时是不是有乱点出现)。
2. 定时器中断,这个是查询端口而已,更新正常, 但中断时点阵显示变化很大,不管定时器定时多少时间,长短我都试了,怎么就没有传说中的视觉停留效应了呢?这个确定属于软件问题。
...全文
218
25
打赏
收藏
点阵模块闪动
1. 外部中断接受一帧数据, 接受完毕后进行新数据的LED点阵显示。(奇怪的是,数据更新显示正常,但现场调试时是不是有乱点出现)。 2. 定时器中断,这个是查询端口而已,更新正常, 但中断时点阵显示变化很大,不管定时器定时多少时间,长短我都试了,怎么就没有传说中的视觉停留效应了呢?这个确定属于软件问题。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
25 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hallowwar
2010-06-13
打赏
举报
回复
可以确定是干扰, 估计是接受线与595的SCK线间距问题,问题没有解决,遗憾。
Miracjj
2010-06-12
打赏
举报
回复
学习一下
hallowwar
2010-06-12
打赏
举报
回复
[Quote=引用 22 楼 peasant_lee 的回复:]
中断函数不算大,,一般的那种。。
中断会改变ram区,因为要压栈,保存现场地址和其他变量,RAM会变小。
[/Quote]
恩,小了就小了,只要做了现场保护就好。
Peasant_Lee
2010-06-12
打赏
举报
回复
中断函数不算大,,一般的那种。。
中断会改变ram区,因为要压栈,保存现场地址和其他变量,RAM会变小。
hfCoder
2010-06-12
打赏
举报
回复
帮 顶
shagua0916
2010-06-12
打赏
举报
回复
不长,仅用到一个除法和取模。问题不大。
hallowwar
2010-06-12
打赏
举报
回复
void extern0() interrupt 0 using 0 //外中断0入口服务程序
{
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
if(cs==1)
receive++;
else
{
receive=0;
return;
} // to avoid the disturbance.
if(receive<25) //The 3 bytes ahead the frame is ignored. Also, the disturbance'check is unnecessary.
return;
if(dat)
receive_tp|=1;
if((receive-24)%8==0)
{
buff[((receive-24)/8)-1]=receive_tp;
if(receive==fram_length)
{
receive=0;
receive_tp=0;
new_frame_flag=1;
}
}
receive_tp<<=1;
}
这么长的中断处理函数算长吗? 还有,中断是不是会改变ram 区的值呢?
hallowwar
2010-06-12
打赏
举报
回复
[Quote=引用 17 楼 peasant_lee 的回复:]
好像真的没有什么好的办法。假如楼主肯定在以前的调试中,没有出现这种闪动的情况,而在现场就有,那么真的可以考虑干扰,,处理的话,软件估计没什么好办法,只能从硬件找原因,找出干扰源。
[/Quote]
这个干扰源难找的啊,截止今晚是必须解决问题的最后关头,到时候结贴,也 给大家一个答复。加油。
sjdcz
2010-06-11
打赏
举报
回复
不清楚你的具体电路,估计受到干扰的几率比较大
hallowwar
2010-06-11
打赏
举报
回复
[Quote=引用 15 楼 sjdcz 的回复:]
不清楚你的具体电路,估计受到干扰的几率比较大
[/Quote]
关键是这种硬件干扰的话,软件有没有什么处理方法啊?
Peasant_Lee
2010-06-11
打赏
举报
回复
好像真的没有什么好的办法。假如楼主肯定在以前的调试中,没有出现这种闪动的情况,而在现场就有,那么真的可以考虑干扰,,处理的话,软件估计没什么好办法,只能从硬件找原因,找出干扰源。
hallowwar
2010-06-10
打赏
举报
回复
[Quote=引用 13 楼 peasant_lee 的回复:]
这种随机的乱点闪动,软件也很难搞定。最好能找出干扰的源头。软件真的要试,可以将每次点亮的时间延长一点,这样闪动就会相对感觉弱一点。
[/Quote]
时间长度应该没有问题,除了中断接收新的数据,剩下的时间都是在做显示的处理,没有新数据,就一直显示老数据的。软件方面你觉得从哪里入手比较好? 我现在完全没有思路啊。
stgzdcc
2010-06-10
打赏
举报
回复
来学习 顺便接分~~~
Peasant_Lee
2010-06-10
打赏
举报
回复
这种随机的乱点闪动,软件也很难搞定。最好能找出干扰的源头。软件真的要试,可以将每次点亮的时间延长一点,这样闪动就会相对感觉弱一点。
hallowwar
2010-06-10
打赏
举报
回复
[Quote=引用 11 楼 peasant_lee 的回复:]
感觉,受干扰的可能性很大。楼主说,现场调试时有乱点,是不是可以换个话说,你以前在非现场的时候调试过,同样软件硬件不会出现乱点呢?假如真的这样,干扰的可疑就很大了。
[/Quote]
如果真的是干扰,软件方面有什么好的处理方法么?
yunqian09
2010-06-10
打赏
举报
回复
受到干扰了吧
hallowwar
2010-06-10
打赏
举报
回复
[Quote=引用 1 楼 jbb0523 的回复:]
奇怪的是,数据更新显示正常,但现场调试时是不是有乱点出现
这种与时间有关的能用现场调试吗?
[/Quote]
说错了,就是把板子带到现场测试而已,不是调试。
Peasant_Lee
2010-06-10
打赏
举报
回复
感觉,受干扰的可能性很大。楼主说,现场调试时有乱点,是不是可以换个话说,你以前在非现场的时候调试过,同样软件硬件不会出现乱点呢?假如真的这样,干扰的可疑就很大了。
hallowwar
2010-06-10
打赏
举报
回复
[Quote=引用 7 楼 sybil_mao 的回复:]
有两个地方要查一下,一个是你说的会闪,一般来说一秒最少要刷新25帧,最好能到40帧每秒,这样就不会有闪的问题。如果这个还不行就要查一下硬件设计方案是否可行。
[/Quote]
不是整个点阵闪动那种,只是杂乱的亮点偶尔出现,在有数据传送过来的时候。
碰上比较棘手的问题啊,还望集大家的智慧,一起帮忙解决这个问题。非常感激。
hallowwar
2010-06-10
打赏
举报
回复
[Quote=引用 8 楼 wangfan027 的回复:]
可能是数据线有干扰,例如焊接不牢,有异物粘在数据线上了
或者是有RAM溢出
OR(很有可能)外部中断过快,还在刷新显示时,又来一中断,于是上一次刷新还没完成又开始刷新了,
这样就会造成很多乱点
[/Quote]
外部中断的速度大约是:一帧数据72位,时间为4.4ms左右,每位数据都会引起一次外部中断,然后处理数据。
同样的中断速度,一帧48位的数据,做同样处理,到没有这个乱点出现的现象,很是纳闷,我怀疑相差24位,不至于是软件原因。(这块板子要大一点,元器件间隔较大,且没有72位的发热现象严重。)
加载更多回复(5)
51单片机的LED
点阵
屏设计
点阵
显示是集微电子技术、计算机技术、信息处理于一体的新型显示方式。由于其具有色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点。目前大多数的公交车招牌都是采用固定的板块显示,显示的信息量少,内容固定,修改站点信息比较麻烦,不能快速、便捷的更新站点信息。本文提出一种方案,采用LED
点阵
显示
模块
,克服了上述缺点,不仅可以静态的显示公交车站点信息,而且也可以通过动态滚动,从而增加信息显示的容量。为了醒目,还可以产生诸如
闪动
、滚动等显示效果。
单片机打地鼠游戏机
打地鼠游戏是一个比较经典的游戏,该作品利用单片机制作了一个打地鼠游戏机,结合16*16LED
点阵
屏显示。运用单片机学习的基础知识和内部常用资源,与单片机教学紧密的联系在一起,富有娱乐性不乏知识性,是一个能够促进大学生单片机学习和创作热情的作品。 游戏由单片机
模块
、电源
模块
、打地鼠
模块
和
点阵
显示
模块
4部分组成。 该作品设置了4*4矩阵LED灯和矩阵键盘,灯代表地鼠,当地鼠出现时(对应的LED灯亮),在规定时间内按下相应的键盘算打中,并计分。否则,不计分。打中地鼠或者规定时间到则新地鼠出现。 游戏共分4关,四关速度分别设置,1,0.7,0.5,0.2秒,打中目标分别为25、20、15、10,用数码管实时显示成绩,每局时间固定为30秒,
点阵
屏显示到计时。过关播放过关音乐,所有发光二极管
闪动
,
点阵
品屏利用左跑马和下滚屏方式显示“恭喜过关”和笑脸图像,并进入下一关。未过关则仍在本关游戏,发光二极管
闪动
单不响音乐,LED
点阵
屏显示“您太慢了”和苦脸表情。
LED
点阵
电子显示屏动态显示和远程监控的实现
本文提出一种利用PC机和单片机控制的LED显示系统通讯方法。该方法可以对显示内容(包括汉字和特殊图符)进行实时控制,从而实现诸如
闪动
、滚动、打字等多种动态显示效果。该方法同时还可以调节动态显示的速度,同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。另外,通过标准的RS232/485 转换
模块
还可以实现对显示系统的远程控制。
c语言编程16个
点阵
跳动的心,Arduino
点阵
制作跳动的心
这次介绍的是使用8×8
点阵
(没有用到驱动
模块
,直接用Ardunio IO口控制)制作跳动的心。差不多用完所有IO口了,才能控制64个LED灯。
点阵
说明一般数码管有出厂信息:比如型号为LG5011AH,LG5011BH这里面的AH、BH中的A代表共阴极、B代表共阳极,H代表高亮。参考另外,关于8*8
点阵
共阳和共阴的解释(有的初学者是一头雾水):1. 有的朋友 认为:共阳就是LED正极全部接在一起,而...
LED
点阵
显示屏
摘 要:由于普通LED
点阵
显示屏动态显示通常采用硬件扫描驱动,这在一些需要特殊显示的场合显得不够灵活。文中提出了一种利用PC机和单片机的通讯来实现显示屏灵活的动态显示和远程监控的设计方法,同时该方法还可以将显示内容在PC机上进行预览。 关键词:LED;动态显示;远程控制;显示预览 1引言 LED
点阵
电子显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。
单片机/工控
27,382
社区成员
28,770
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章