c语言sscanf函数的用法是什么
310
2022-10-30
基于千兆网接口摄像机设计
基于千兆网接口摄像机设计
1 引 言
2 硬件总体设计
3 千兆网接口设计
3.1 千兆网接口初始化
对千兆网接口的初始非常重要,如果初始化不正确,系统将无法正常工作。对接口的初始化主要包括对AX88180和88E1111的初始化。
3.2 图像数据的封包
case(param_num) ‘d0: w_dd <= ‘hFFFF;//目的MAC地址(广播地址),写三次‘d3: w_dd <= ‘h1111;//源MAC地址,均为0x1111,写三次 ‘d6: w_dd <= ‘h0008;//协议号‘d7: w_dd <= ‘h0045;//固定数据VIP4,‘d8: w_dd <= ‘h1E04;//IP包总长度1026+28,并且高低8位交换‘d9: w_dd <= ‘h0;//ID号,始终为0‘d10:w_dd <= ‘h0;//fragment offset始终为0;‘d11:w_dd <= ‘h1140;//生存期和协议号,固定‘d12:w_dd <= ‘h0;//IP校验和,由MAC芯片自动生成‘d13:w_dd <= ‘hA8C0;//源IP,固定为192.168.1.204‘d14:w_dd <= ‘hCC01;‘d15:w_dd <= ‘hFFFF;//目的IP,任意‘d16:w_dd <= ‘hFFFF;‘d17:w_dd <= ‘h7017;//源端口,固定为6000‘d18:w_dd <= ‘h7017;// 目的端口,固定为6000‘d19:w_dd <= ‘h0A04;//UDP数据长度‘d20:w_dd <= ‘h0;////校验和由AX88180自动生成‘d21:w_dd <= row_num;//图像行信息从0开开始default:w_dd <= w_dd;endcase
3.3 应用程序设计
由于大量数据在网络上传输,用SOCKET的方式来获图像数据包已经比较困难,丢包率会比较高。采用Winpcap来捕获网络上的数据包,可有效的减少丢包率。用Winpcap编写程序需要安装开发包及驱动程序。
第一步,指定要通信的网卡设备并打开。
第二步:开启一个线程接收数据。
UINT RecvProc(LPVOID lpParammeter){ pcap_loop(m_pcap, 0, packet_handler, NULL); return 0;}packet_handler是处理收到数据包的回调函数, 当从port6000收到数据后它会被调用,直到线程终止。
第三步:处理收到的数据
4 总结
兆网接口摄像机,网络传输有效数据带宽达400Mb/s以上,较好的解决了百兆网传输带宽不足、数据传输速度慢的问题。传输300万像素不进行压缩的原始图像,帧率可达18帧/秒,视频流畅清晰。计算机采用Winpcap捕获图像数据,丢包率小于0.02%。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~