打印

DIY一台史上最“烂”的示波器!(连载中……)

[复制链接]
楼主: 程序匠人
手机看帖
扫描二维码
随时随地手机跟帖
61
huangqi412| | 2009-12-25 10:07 | 只看该作者 回帖奖励 |倒序浏览
等洗碗机PK匠人JJ

使用特权

评论回复
62
反质子| | 2009-12-25 10:11 | 只看该作者
期待 高手对决:D

使用特权

评论回复
63
messice| | 2009-12-25 10:22 | 只看该作者
看看大虾的杰作!呵呵...

使用特权

评论回复
64
yzhj| | 2009-12-25 11:36 | 只看该作者
匠人已经出手了,期待洗碗机接招。。。。。。。。。

使用特权

评论回复
65
cubasa| | 2009-12-25 11:46 | 只看该作者
什么型号都可以哦。一条指令只需要两个机器周期,同等工作频率下比PIC快1倍。51之流那就更要靠边站了。
程序匠人 发表于 2009-12-24 17:33

心爱的51被匠人BS了,其实STC也有1T的51单片机,最快的指令也只有1个机器周期,晶振可以用到35M的。价格也是在一个数量级上。

使用特权

评论回复
66
xwj| | 2009-12-25 11:51 | 只看该作者
说实话,STC的单周期太忽悠人了,没几条指令是单周期的指令。
相对于C8051的单周期差太远了。

使用特权

评论回复
67
123654789| | 2009-12-25 11:53 | 只看该作者
但是STC的频率可以达到35MHz这个数字也不少

使用特权

评论回复
68
cubasa| | 2009-12-25 12:01 | 只看该作者
用STC说不定也能做到匠人那样的显示效果,如果那个俄罗斯方块真用传统51做的话。

使用特权

评论回复
69
程序匠人|  楼主 | 2009-12-25 12:46 | 只看该作者
用数据说话,逐步推理,一招把洗碗机打散架!

1、VGA 640*480 60hz 模式下,每个像素点的扫描时间为 0.039683 us。这个数据是有资料可查的,也是可以计算出来的。

2、如果你打算做每行300点,那么每个显示分辨点的扫描时间最起码要做到 0.084657 us以下。当然,如果你只是做固定图像(每个点的状态预先知道),用最傻的方法是可以做出来的。前提是芯片的指令周期要<0.084657 us。

3、但是,如果要做的是动态图像,由于每个点的状态预先不知道,那么为了提高显示扫描速度,建立显示缓冲区是必然选择(因为只有这样才能在送显时提高速度)。假设你用显示缓冲区的每一位代表一个点,那么在做显示时,每个点必须先判断显缓区的值,并决定IO口的状态。每个点的显示,需要3条指令(其中一条是判断分支指令,另外两条分别置位和清零)实现一个点的显示。也就是说,这3条指令需要在0.084657 us之内完成,即每条指令执行时间要<=0.028219us。

4、既然水平方向准备做300点,那么垂直方向总不能太少吧?就算你做200点如何?那么一共有200*300=60000的点 ,再去除以8,为7500个字节。也就是说,如果你打算全屏缓存的话,你得准备7500个字节RAM做缓冲区。并且这些RAM必须是全部可以位寻址的,不能用间接寻址,也不能切换页,更不能外挂RAM(因为任何附加的动作都需要指令来完成,都会降低访问速度)。

5、这么大的RAM区肯定难找,那么我们可以变通一下,不要做全屏缓存,而是做单行缓存(匠人目前就是这么做的)。也就是说,每当一行扫描完成后,利用空白显示以及消隐期间的时间去刷新下一行的显示数据,这么一来,只需要缓存300个点,即38个字节。但是问题是,要在行与行的间隔时间里,完成这300个缓存位的设置,需要多少时间?(提示一下,每行的扫描时间,总共只有31.75us,刨去显示区的扫描时间后只剩下6.34928us,你需要在这个时间内准备好下一行的数据)。

说到这里,洗碗机还有信心接招吗?呵呵,欧耶!

使用特权

评论回复
70
huangqi412| | 2009-12-25 12:55 | 只看该作者
看洗碗机接招.

使用特权

评论回复
71
韩秋婷| | 2009-12-25 12:56 | 只看该作者
洗碗丫可以做320×240

使用特权

评论回复
72
xusnwise| | 2009-12-25 13:02 | 只看该作者
51+ CPLD + SRAM

使用特权

评论回复
73
328500920| | 2009-12-25 13:48 | 只看该作者
期待  

使用特权

评论回复
74
反质子| | 2009-12-25 14:02 | 只看该作者
哈哈  洗碗机打散架
期待反击

使用特权

评论回复
75
kanke100| | 2009-12-25 14:08 | 只看该作者
做个记号,等待大侠华山论剑!!!:)

使用特权

评论回复
76
211C211| | 2009-12-25 14:51 | 只看该作者
洗碗机正在酝酿中!:lol

使用特权

评论回复
77
古道热肠| | 2009-12-25 15:22 | 只看该作者
呵呵,PK吧,在淘宝上倒真见过一个用单片机做的VGA信号发生器,还真有人买。
买回去干什么呀?






















修显示器时用。

使用特权

评论回复
78
反质子| | 2009-12-25 15:33 | 只看该作者
哈哈哈哈 :lol

使用特权

评论回复
79
huangqi412| | 2009-12-25 16:05 | 只看该作者
匠人JJ请看, 刚从收藏夹找到了俺说的那个游戏机...  看看吧,人家AVR单芯片做的,HOHO,打超级马力呢.

使用特权

评论回复
80
程序匠人|  楼主 | 2009-12-25 16:07 | 只看该作者
匠人JJ请看, 刚从收藏夹找到了俺说的那个游戏机...  看看吧,人家AVR单芯片做的,HOHO,打超级马力呢.
huangqi412 发表于 2009-12-25 16:05


请给连接地址

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则