侵权投诉
订阅
纠错
加入自媒体

AWorks编程——socket通信

2019-07-23 14:37
ZLG致远电子
关注

TCP服务器实例

按照基本的套接字编程流程,建立服务器,我们只需要调用socket、bind、listen、accept、send、recv、closesocket函数即可,如程序清单4,首先使用socket函数创建TCP类型的套接字,然后调用bind函数绑定本地网卡的IP地址和端口号,使用listen监听客户端的请求,然后accept函数将阻塞等待客户端的请求连接,当服务器监听到有客户端请求连接时,accept退出阻塞状态,建立连接,进入循环,使用send、recv收发数据。当数据传输完成后,使用closesocket关闭连接,回收资源。

程序清单4 非阻塞服务器

程序编写完成后,将服务器例程入口函数demo_tcp_server_block_entry()放入主函数中编译、下载到开发板,程序运行后在shell界面可看到服务器已经启动,如图9。

图9 服务器启动

服务器启动后,同样使用TCP上位机软件建立客户端进行测试,指定服务器的IP和端口号,如图10。

图10 创建客户端

客户端创建后,点击连接,如图11。

图11 连接到服务器

连接成功后,在发送区发送数据,接收区可以看到服务器回发的数据,如图12所示。此时在串口界面也可以看到服务器收到的数据,如图13。

图12 客户端收发数据

图13 服务器收到的数据

出错调试

如果程序运行后,没有成功建立连接,可按照以下步骤查看网络状态:

首先在串口界面调用AWorks的Shell命令ip addr,查看以太网IP地址是否配置成功,如图14。然后使用ping命令测试网络通信是否正常,如图15。

图14 查看ip地址

图15 测试网络是否正常

注解:本文使用的硬件平台为M1052_EV_Board开发板,购买可咨询ZLG的销售人员;软件平台为aworks_m105x_sdk_1.0.4-alpha软件包。

<上一页  1  2  
声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    电子工程 猎头职位 更多
    扫码关注公众号
    OFweek电子工程网
    获取更多精彩内容
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号