本帖最后由 Eric2013 于 2018-6-27 17:20 编辑
说明:
0、此贴纯开源。
1、前段时间开源了一个网络摄像头的TCP版本:
https://www.amobbs.com/thread-5693183-1-1.html。
这次再来一个远程VNC的版本。使用更方便,无需大家制作上位机软件了,也不需要显示屏,使用外部SRAM虚拟一个显示屏。
2、这个工程是之前测试RL-TCPnet网络协议栈稳定性的时候做的,一共做了三个版本,第三个版本稳定运行快2年的时候,停止测试了,测试期间连续运行,不断电。
3、这个Demo相比之前的TCP版本要复杂不少,主要有以下几点:
(1)VNC 服务器使用外部SRAM虚拟出一个显示屏,除了打点和读点,全部使用DMA方式实现,有效降低CPU利用率。
(2)RL-TCPnet的实现采用事件触发的方式,这样将有效降低CPU利用率。
(3)摄像头接口要DMA数据到外部SRAM。
(4)emWin的实现也是DMA方式虚拟到SRAM里面的,并且emWin动态内存也是SRAM,这种情况下,对于总线性能的要求非常高。
(5)以太网也是用的DMA方式。
尽管多处都进行了DMA优化,实际跑起来的时候CPU利用率依然可以飙升到70%。加上DMA的占用,F4的总线矩阵性能几乎被榨干。
024204a5e3wx1iixw1opmr.gif (1.41 MB, 下载次数: 0)
下载附件
2018-6-27 17:18 上传
哈哈,是的,我就是想用Socket 做一个服务器,用我的本机调试,再做一个客户端,直连我的交换机服务器,看看会不会掉线? 原来用的LWIP内的socket方案,大约1-2个月就必然会掉线。。。比较头疼。。
这里有我曾经三个版本测试记录,可供你参考:
链接
一周热门 更多>