当前位置:首页 > 智能硬件 > 半导体
[导读][导读] 本文介绍了通过案例,首先在触摸屏进行画图,使其在液晶屏上显示,同时通过网络传输数据,使其在计算机屏幕上显示,并由计算机控制清除液晶屏上的图形,实现了基于UDP协议的ARM、X86平台之间的通讯,从而提出

[导读] 本文介绍了通过案例,首先在触摸屏进行画图,使其在液晶屏上显示,同时通过网络传输数据,使其在计算机屏幕上显示,并由计算机控制清除液晶屏上的图形,实现了基于UDP协议ARMX86平台之间的通讯,从而提出了基于UDP协议的ARM与其它平台之间通讯的解决方案。 关键词:X86UDPARM

随着人工智能的应用,ARM产品已经遍布到各个领域:工业控制、无线通讯领域、消费类电子产品、成像和安全产品,包括现在流行的数码相机和打印机中绝大部分采用ARM技术,手机中的32位SIM智能卡也采用了ARM技术。除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用,因此,ARM与其它平台之间通讯就显得尤为重要。

1.UDP协议本质

UDP协议是英文User Datagram Protocol的缩写,即用户数据报协议,主要用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多客户/服务器模式的网络应用都需要使用UDP协议。UDP协议从问世至今已经被使用了很多年,虽然其最初的光彩已经被一些类似协议所掩盖,但即使是在今天,UDP仍然不失为一项非常实用和可行的网络传输层协议。

UDP协议使用端口号为不同的应用保留其各自的数据传输通道。UDP和TCP协议正是采用这一机制实现对同一时刻内多项应用同时发送和接收数据的支持。数据发送一方(可以是客户端或服务器端)将UDP数据报通过源端口发送出去,而数据接收一方则通过目标端口接收数据。有的网络应用只能使用预先为其预留或注册的静态端口;而另外一些网络应用则可以使用未被注册的动态端口。因为UDP报头使用两个字节存放端口号,所以端口号的有效范围是从0到65535.一般来说,大于49151的端口号都代表动态端口。

数据报的长度是指包括报头和数据部分在内的总的字节数。因为报头的长度是固定的,所以该域主要被用来计算可变长度的数据部分(又称为数据负载)。数据报的最大长度根据工作环境的不同而各异。从理论上说,包含报头在内的数据报的最大长度为65535字节。不过,一些实际应用往往会限制数据报的大小,有时会降低到8192字节。

UDP协议使用报头中的校验值来保证数据的安全。校验值首先在数据发送方通过特殊的算法计算得出,在传递到接收方之后,还需要再重新计算。

如果某个数据报在传输过程中被第三方篡改或者由于线路噪音等原因受到损坏,发送和接收方的校验计算值将不会相符,由此UDP协议可以检测是否出错。其实在UDP协议中校验功能是可选的,如果将其关闭可以使系统的性能有所提升。这与TCP协议是不同的,后者要求必须具有校验值。

2.实现案例

实现案例如下:在触摸屏进行画图,使其在液晶屏上显示,同时通过网络传输数据,使其在计算机屏幕上显示,并由计算机控制清除液晶屏上的图形。

步骤如下:

(1)新建工程

(2)在main.c文件中编辑初始化网络函数void InitNetWork()//初始化网络{

U32 ipaddr32,ipmaskaddr32,ipgateaddr32;

U8 *Mac;

ipaddr32=Get_ipaddr(); //获取IP地址

ipmaskaddr32=Get_maskaddr();//获取子网掩码

ipgateaddr32=Get_gwaddr(); //获取网关

Mac=Get_mac(); //获取网卡地址NetPortChoose(0);

//选择网口,必须在配置网络以前进行

initOSNet(ipaddr32, ipmaskaddr32,

ipgateaddr32,Mac);//配置网络

OSTimeDly(1000);//任务挂起1秒

printk(“init Ethernet and UDP is

ok!\n”);

}

(3)定义计算机端套接字,全局变量(4)编写Main_Task任务及消息循环主要负责响应触摸屏消息,在屏幕上画图,然后将数据传输到计算机上。

对触摸屏消息的处理和键盘消息类似,其消息类型pMsg->Message为OSM_TOUCH_SCREEN,消息参数pMsg->LParam中包含了触摸屏的动作信息,定义如下:

#define TCHSCR_ACTION_NULL

0

#define TCHSCR_ACTION_CLICK 1 //触摸

屏单击

#define TCHSCR_ACTION_DBCLICK 2 //触

摸屏双击

#define TCHSCR_ACTION_DOWN 3 //触摸

屏按下

#define TCHSCR_ACTION_UP 4 //触摸

屏抬起

#define TCHSCR_ACTION_MOVE 5 //触摸

屏移动

消息参数pMsg->WParam中则包含了触摸

点的坐标信息,低16位是X坐标值,高16位是Y坐标值。这里当触摸屏产生“按下”动作后采用MoveTo()函数设置绘图起始点坐标,当产生“移动”动作后采用LineTo()函数绘制线段。

12下一页全文 本文导航第 1 页:基于UDP协议ARMX86平台之间的通讯方案第 2 页:解决方案

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭