[STM32F4]

【开源个小项目】稳定运行2年不死机,网络摄像头之VNC版本

[复制链接]
1158|4
手机看帖
扫描二维码
随时随地手机跟帖
Eric2013|  楼主 | 2018-6-29 14:48 | 显示全部楼层 |阅读模式

【原创开源应用第3期】花式玩转网络摄像头之VNC远程桌面版本,稳定运行2年不死机


说明:
1、前段时间开源了一个网络摄像头的TCP版本https://bbs.21ic.com/icview-2517812-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的总线矩阵性能几乎被榨干。

使用注意事项:
1、配套的下位机是基于RTX4+RL-TCPne + emWin VNC实现,务必使用MDK4.74进行编译,其它MDK版本未做测试。
2、测试例子时用的DM9161/9162网口,务必接到路由器或者交换器上面测试,因为VNC是采用的NetBIOS Name进行测试的。
3、下载例子后等待LED3和LED4闪烁了再进行连接。
4、关闭的时候,务必先关闭摄像头,因为摄像头非常占用系统性能,下次才可以快速登录。

5、当前对V5开发板做了支持,后面有精力做个V6的。


开启了最高等级的三级优化和时间优化:
3.1.png


RTX任务运行效果:
3.2.png



Demo下载:
网络摄像头之远程VNC版.rar (8.35 MB)
FAQ| | 2018-6-29 19:50 | 显示全部楼层
不懂,不明白这个到底是干什么的,什么是VNC可以通俗一点吗。

使用特权

评论回复
Eric2013|  楼主 | 2018-6-29 21:53 | 显示全部楼层
FAQ 发表于 2018-6-29 19:50
不懂,不明白这个到底是干什么的,什么是VNC可以通俗一点吗。

远程桌面。

使用特权

评论回复
stm32jy| | 2018-6-30 15:56 | 显示全部楼层
楼主霸气,项目直接分享了,RTX4+RL-TCPne没有接触过,上手难不难?

使用特权

评论回复
Eric2013|  楼主 | 2018-6-30 20:02 | 显示全部楼层
stm32jy 发表于 2018-6-30 15:56
楼主霸气,项目直接分享了,RTX4+RL-TCPne没有接触过,上手难不难?

好上手,不才,写了TCPnet的教程,可以快速上手:http://forum.armfly.com/forum.php?mod=viewthread&tid=26034

使用特权

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

本版积分规则

个人签名:RTX->μCOS-II->FreeRTOS->embOS->μCOS-III μCGUI->emWin->FatFs->DSP 淘宝:armfly.taobao.com

115

主题

639

帖子

34

粉丝