[文章]【HarmonyOS IPC 试用连载 】第5章 HiSpark IPC Camera连接网络

阅读量0
1
0
开发环境:
开发系统:Ubuntu 20.04
开发板:HiSparkIPCCamera(Hi3518)
HarmonyOS版本:V1.1.4
5.1配置WiFi
1.修改工程源码
applications/sample/camera/communication/wpa_supplicant/config/wpa_supplicant.conf
20220416-5-t1.png

                              
这里主要是设置WiFi的账号和密码。
2.添加新组件
修改文件build/lite/components/applications.json
20220416-5-t2.png
3.修改单板配置文件
修改文件vendor/hisilicon/hispark_aries/config.json,新增camera_sample_communication组件的条目。

20220416-5-t3.png
也就是将WiFi应用添加到固件中。
5.2编译下载
接下来就可以编译了。
$ hb set
20220416-5-t4.png
全编译。
$ hb build -f

20220416-5-t5.png
在bin文件就会有wpa_supplicant应用。

20220416-5-t6.png
和以前一样,拷贝ohos_image.bin, rootfs_jffs2.img, userfs_jffs2.img三个文件。
然后把固件下载到板子中。
20220416-5-t7.png
5.3 WiFi连接
接下来就可以连接WiFi了。
启动sta的命令:
$./bin/wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf
然后使用ifconfig查看IP地址。
#ifconfig
20220416-5-t8.png
5.4 TFTP服务环境搭建与测试
TFTP简单文件传输协议,是一个基于UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合。
TFTP 协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证。
TFTP的自启动有两种方式,inetd和xinetd。inetd 是一个守护程序,通过一个集中的配置文件(inetd.conf)来管理大多数入网连接。xinetd 守护程序是 inetd 的替代,它提供许多改进的或新的特性,以及更容易的配置。
5.4.1 TFTP服务搭建
1Setuptftp server files (下载并安装 tftp
$ sudo apt-get install openbsd-inetd
$ sudo apt-get install tftpd tftp
2makea tftp directory (新建tftp目录和改变其属性)
$ sudo mkdir /tftpboot
$ sudo chmod 777 /tftpboot
3)修改文件 tftpd-hpa
$ sudovim /etc/default/tftpd-hpa
tftpd-hpa文件修改后如下:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"
说明:修改项,其中TFTP_DIRECTORY处可以改为你的tftp-server的根目录,这里是/tftpboot,当然可以改成其他地址,参数 -c 指定了可以创建文件,参数 -s是指定tftpd-hpa服务目录,上面已经指定。
4Open/etc/inetd.conf and edit it (修改配置文件的tftp目录)
$ sudo vim /etc/inetd.conf
Add new line:
tftp dgram udp wait nobody /usr/***in/tcpd/usr/***in/in.tftpd /tftpboot
5Restartingtftp service (启动tftp
$ sudo /etc/init.d/openbsd-inetd start
20220416-5-t9.png
5.4.2 TFTP测试
1Testlocal tftp (本地测试)
在/tftpboot/目录下新建一个文件test,输入内容,保存。然后打开另外一个终端,测试文件传输。
– 输入命令tftp 127.0.0.1
– 输入get test
– 输入q可以退出
– 退出后,使用ls命令可以发现当前目录下有test文件,如果这个文件和服务器中的test文件内容一模一样,表明服务器搭建成功

20220416-5-t10.png

2Testnet tftp (开发板测试)
开发板下载测试,我们将服务器中的文件下载到板子中。
#tftp -g -l test -r test +IP地址
#./bin/tftp -g -l ./sdcard/test-r test 192.168.19.205
20220416-5-t11.png
【注】-l后的文件是下载后文件名,可以自定义;-r后的是服务器的文件名。
进入sdcard中即可看到下载的文件。
20220416-5-t12.png
这里将上一章的应用程序拷贝到TFTP服务器中。
20220416-5-t13.png
然后下载到板子中。
#./bin/tftp -g -l ./sdcard/helloworld-r helloworld 192.168.19.205

20220416-5-t14.png
20220416-5-t15.png
接下来就可以运行应用程序了。
20220416-5-t16.png
值得注意的是,这里使用的是SD卡存储的用户数据,没有驱动的需要移植SD卡驱动。
右后的应用开发就可以使用网络传输了,是不是很方便。

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友