查看: 19176|回复: 9

[经验] 树莓派SPI接TFT屏调整SPI频率和帧数可以较好的解决延迟问题

[复制链接]
  • TA的每日心情
    开心
    2019-6-25 09:54
  • 签到天数: 216 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2014-9-26 23:05:10 | 显示全部楼层 |阅读模式
    分享到:
    如题,今天中午不记得是在哪里看到一篇帖子说树莓派接720的屏幕刷新率很低只有5帧,320x240最高也只能20多帧。然后我刚才就试了一下,因为原本我用来做相机延迟确实也是感觉挺大的,然后就把SPI的刷新速率从原来的16MHz调整到32MHz,刷新率保持30fps,重启,打开相机后感觉延迟的问题已经得到了很明显的改善。然后就想试试更高的刷新率和帧数。
    QQ截图20140926225756.png
    如图,SPI频率为35MHz,帧数50帧,屏幕工作还是正常的,没发现有什么异象。
    但是如果再高似乎就出问题了。刚才改成了50MHz后SSH就连不上了,摄像头模块也无法正常打开。但屏幕可以点亮并输出tty。
    QQ截图20140926230333.png
    所以把SPI调整到32MHz后用屏幕来看视频应该是没太大问题的。至少我接相机实时显示是可以的,几乎不存在卡顿的现象。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-6-25 09:54
  • 签到天数: 216 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-9-26 23:11:26 | 显示全部楼层
    囧了……开始纠结怎么恢复回去……蛋疼……
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-6-25 09:54
  • 签到天数: 216 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-9-27 01:28:53 | 显示全部楼层
    超过32MHz果然是非常作死的……刚才差点就弄不回来了……所以SPI速度尽量不要超过30MHz,不然我也不知道会发生什么……
    刚才弄到50MHz后没法用网卡,键盘鼠标,也就是说没法在小机上修改回原来的频率了【因为我是弄的开机就启动的……】然后拔卡接电脑上想挂载磁盘来修改文件,结果死活读不出,在Windows上没法挂载ext3以上的设备,然后就接到Ubuntu上,结果只能挂载boot分区,ext4分区读不了,e2fsck什么的都说设备占用但是mount也挂载不了,死啦……然后接到学习机上e2fsck也没检查出什么名堂,最后还是接到Windows上把磁盘导出成文件,相当于是备份了……然后用HEX尝试修改,结果保存不了……不知道是软件问题还是磁盘满了。最后无奈只好再插回树莓派上博一下看看能不能启动,如果不能就只能重刷了……结果启动成功了……也连上了网络……一切看上去好像又挺正常……然后立刻为了安全改回30MHz……
    QQ截图20140927012052.png

    现在是到了50MHz,刷新频率50fps,看上去和32MHz/30fps没太大区别,所以为了安全还是建议不要超过30MHz,效果差不多的【反正人眼是分辨不出来了……】。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-6-25 09:54
  • 签到天数: 216 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-9-27 16:04:09 | 显示全部楼层
    来张看视频的图~
    QQ图片20140927160303.jpg
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-6-25 09:54
  • 签到天数: 216 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-9-27 17:40:33 | 显示全部楼层
    刚在国外的一个网站上看到了用更高的频率来进行显示的【显示超频】……
    下面引用原文:
    1. I want better performance and faster updates!
    2. You can change the SPI frequency (overclock the display) by editing /etc/modprobe.d/adafruit.conf and changing the options line to:
    3. options fbtft_device name=adafruitrt28 rotate=90 frequency=62000000 fps=60
    4. here's the thing, the Pi only supports a fixed number of SPI frequencies. So tweaking the number a little won't do anything. The kernel will round the number to the closest value. You will always get frequencies that are 250MHz divided by an even number. Here's the only SPI frequencies this kernel supports
    5. 15,625,000 (a.k.a 16000000 = 16 MHz)
    6. 17,857,142 (a.k.a. 18000000 = 18 MHz)
    7. 20,833,333 (a.k.a 21000000 = 21 MHz)
    8. 25,000,000 (= 25 MHz)
    9. 31,250,000 (a.k.a 32000000 = 32MHz)
    10. 41,666,666 (a.k.a 42000000 = 42MHz)
    11. 62,500,000 (a.k.a 62000000 = 62MHz)
    12. So if you put in 48000000 for the speed, you won't actually get 48MHz, you'll actually only get about 42MHz because it gets rounded down. We tested this display nicely with 32MHz and we suggest that. But you can put in 42MHz or even try 62MHz and it will update faster
    13. You can tweak fps (frames per second) from 20 to 60 and frequency up to 62MHz for tradeoffs in performance and speed. Reboot after each edit to make sure the settings are loaded properly. There's a trade off that if you ask for higher FPS you're going to load the kernel more because it's trying to keep the display updated.
    复制代码
    也就是说……超到62MHz也成为可能……只是都是一个整数倍,也就是说之前我用50MHz的速率实际上应该是不被支持的……
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-6-24 16:41
  • 签到天数: 709 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2014-9-27 23:14:48 | 显示全部楼层
    不错哦  顶一个哦   
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2015-3-4 09:55
  • 签到天数: 26 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2014-9-28 08:44:02 | 显示全部楼层
    英语能力差求字幕
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-6-25 09:54
  • 签到天数: 216 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-10-7 18:46:07 | 显示全部楼层
    中文翻译:【源于谷歌】
    1. 我想要更好的性能和更快的更新!
    2. 您可以更改的SPI频率(超频显示)编辑/etc/modprobe.d/adafruit.conf和更改选项行:
    3. fbtft_device名= adafruitrt28选择旋转=90频率=62000000 FPS=60
    4. 这里的东西,郫县只支持SPI频率固定的数量。因此,调整的数量一点也不会做任何事情。内核将圆的数目为最接近的值。你总是会得到频率是250MHz的用偶数分。这是唯一的SPI频率这个内核支持
    5. 15625000(a.k.a16000000=16兆赫)
    6. 17857142(亦称18000000=18兆赫)
    7. 20833333(a.k.a2100=21兆赫)
    8. 25,000,000(=25兆赫)
    9. 31250000(a.k.a32000000=32MHz的)
    10. 41666666(a.k.a4200=在42MHz)
    11. 62,500,000(a.k.a62000000=62MHz)
    12. 所以,如果你把4800万的速度,你就不会真正得到48MHz的,你居然只得到大约为42MHz,因为它被舍去。我们很好地测试了这款显示器具有32MHz的,我们认为。但是你可以把在42MHz,甚至尝试62MHz,它会更新更快
    13. 你可以调整的帧率(每秒帧数)是20〜60和频率高达62MHz的性能和速度的权衡。重新引导每个编辑后,以确保设置正确加载。有一个权衡,如果你要求更高的FPS你要加载的内核更多的是因为它试图保持显示更新。
    复制代码
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2016-8-30 00:59
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2016-8-28 23:44:51 | 显示全部楼层
    请问这个spi频率在哪里改?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2014-2-12 10:49
  • 签到天数: 150 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2016-8-30 10:00:53 | 显示全部楼层
    楼主总结的很好啊
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-25 11:40 , Processed in 0.203775 second(s), 34 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.