第一次使用AIR724UG.

air724ug
                                                    合宙AIR724UG体验

一.开箱以及硬件准备
19.9RMB=一块开发板+一个air724UG模块+4G高档黑色材质棒状天线。参加了合宙这么多次开发板活动,每次都感觉自己赚了这次感觉赚的更多了。
估摸着可能吧紫光给了一定的优惠支持(只是猜想,个人见解,不负法律责任),RDA牛逼合宙牛逼

二.前情提要

这次是买了两块板子算撸羊毛。主要应用于4g语音传输。因为之前的2G传输语音实时体验欠佳。大概体验是这样的:

设备一语音发送端:按键按下录音------>松开按键传输,假设录音10秒.设备二接收到大概也要等待到第10秒才能接收到。这是设备对设备。当时做了一个桌面的软件发语音给设备还是能快一点点的

结论:2G上传速度太慢。大约1秒1k?

后来寻找解决方案:

方案一:stm32l4或者stm32F4+wm8978+air720+tencentos tiny+SPEEX

选型的考量:
stm32F4或者L4都原生支持物联网操作系统tencentostiny,而且有双I2S。
WM8978:因为当时只知道这玩意。
air720:合宙当时的产品,价格69,感觉awesome,开发板199:没拿到五折卡不awesome
tencentos tiny:对外设的支持。无缝接入LORA.ESP8266,移动通信模块
speex:是一套主要针对语音的开源免费、无专利保护的音频压缩格式,是基于CELP并且专门为码率在2-44kbps的语音压缩而设计的.吸引俺的是低码率。
当时硬件除了4G模块都准备就绪了。后来把这个方案的价格报给上去,黄了。
方案二:合宙air202F加air720。

通过串口进行数据的传递。air202F主要产生语音数据以及播放进入的语音数据。air168好像也行。air720主要进行通信。这个方案很靠谱。成品报价给当时觉得还行。但是提出要实时语音。
图片来源链接所以才有了方案三。

方案三:ESP32加ES8388+AIR720
ESP32:ADF框架.
ES8388:比wm8978老便宜了,根据硬件属性好像他们不属于一个东西。但是俺认为他们还是一个东西。
air720:合宙当时的产品,价格69,感觉awesome,开发板199:没拿到五折卡不awesome。别问,问就是穷人。
其实还有其他方案:mt7628,rk3308。

多说一句:rk3308的板我买的是百度的大金刚的拆机玩意,9.9一个。试了下硬件没问题。关机进入maskrom也正常。刷写引导文件也正常。但是无法刷入后续文件。有知道这个得大牛可以说说。这个还是等待后续再解决,俺解决了就再来说。
这就是上述俺为什么买两块开发板的理由,希望没抢到的大兄弟能理解。

三.进入正题:air724UG

一.首先还是说句总结的话:
1.LUAT开发724UG一切以wiki(https://wiki.openluat.com/)为第一.不知道的全部wiki。当然你也可以面向合宙的QQ群编程也行。他们有常驻群的大牛(有几个大牛24小时stand by)。
2.如果是初学者,先要告诉你们lua使用很简单。是使用使用使用!!!。脚本语言也能够立即给与调试反馈。对了,不要买lua的书看。单纯从开发luat来看。不需要看(个人见解)
3.Demo那肯定是要过一遍的,只拣自己要用的demo功能使用。其他的看都不要看(纯属个人见解)
4.感谢制作老版固件的朱工和新版luat(这个俺不知道具体是谁。反正是群里的那几个大牛)
5.对了。又蹦出一个luatos二次开发什么鬼?

二.开始:
一.创建工程目录




二.进入官网下载文件

1.硬件文档下载链接:

http://www.openluat.com/Product/file/uis8910dm/Air720UH_Air720UG_%E6%A8%A1%E5%9D%97%E7%A1%AC%E4%BB%B6%E8%AE%BE%E8%AE%A1%E6%89%8B%E5%86%8C_V1.5.pdf

图片来源:合宙官网。具体链接无法复制

2.软件下载链接
[LuaTools] Luat下载调试工具v2:这玩意总结来说就是集下载与调试于一身的工具
http://www.openluat.com/Product/file/luatoolsV2-redirect.html
底层软件:这玩意你就理解为一个通用固件。有功能更新的时候更新一下。如果你的项目不需要功能更新可以不使用。相当于你更新安卓8,9,10一样的体验。
http://www.openluat.com/Product/file/rda8910/core_V0003.zip
看到这个链接的时候这就有点玩味了,8910内部代号竟然还是RDA.
上层软件luaTask V2.2.7 (Demo + Lib):这玩意你就理解为基于这个下载ZIP解压的文件开发.
http://www.openluat.com/Product/file/rda8910/script_LuaTask_V2.2.7.zip
USB驱动下载

http://www.openluat.com/Product/file/uis8910dm/sw_file_20200303181718_8910_module_usb_driver

下载完成以后:
二.开搞:
1.解压usb驱动文件
warning:win8以上的系统都需要f8开机禁用签名
安装成功完成后:
2.解压第一个core_V0003.zip文件:
当然是先看readme。这次看了一下感觉和没看一样。可能要等待后续更新。
readme,txt文件内容:
Luat_V0003_RDA8910文件夹:
Luat_V0003_RDA8910.dfota.bin
Luat_V0003_RDA8910.pac
3.安装luatools.exe文件
不废话,很直接。更像是一个一键压缩文件。打开就自动解压目录然后打开自己。然后请求更新。
点击开始:进入下载,等待更新成功,点击开始和取消都行,俺就是点了开始。
4.解压script_LuaTask_V2.2.7.zip文件
release.note可以看看。主要是合宙技术人员见招拆招的经过。
doc文件夹:wiki的离线版,对demo和lib的解释
demo文件夹:基于这些demo开发就好了。里面的功能demo应该是能满足你的要求的。你所要做的就是整合。
lib:大部分时间不看。想了解api的原理的可以看一下。
三.进行demo实操
俺使用的IDE是LDT(基于eclipse的lua开发工具)这个根据个人使用习惯。因为lua脚本语言,用记事本也能编程。
1.创建项目
1.调整IDE编码为UTF-8
main.lua文件:一般情况下不要管,默认就好了
--必须在这个位置定义PROJECT和VERSION变量 --PROJECT:ascii string类型,可以随便定义,只要不使用,就行 --VERSION:ascii string类型,如果使用Luat物联云平台固件升级的功能,必须按照"X.X.X"定义,X表示1位数字;否则可随便定义 PROJECT = "HTTP" VERSION = "2.0.0" --加载日志功能模块,并且设置日志输出等级 --如果关闭调用log模块接口输出的日志,等级设置为log.LOG_SILENT即可 require "log" LOG_LEVEL = log.LOGLEVEL_TRACE --[[ 如果使用UART输出日志,打开这行注释的代码"--log.openTrace(true,1,115200)"即可,根据自己的需求修改此接口的参数 如果要彻底关闭脚本中的输出日志(包括调用log模块接口和Lua标准print接口输出的日志),执行log.openTrace(false,第二个参数跟调用openTrace接口打开日志的第二个参数相同),例如: 1、没有调用过sys.opntrace配置日志输出端口或者最后一次是调用log.openTrace(true,nil,921600)配置日志输出端口,此时要关闭输出日志,直接调用log.openTrace(false)即可 2、最后一次是调用log.openTrace(true,1,115200)配置日志输出端口,此时要关闭输出日志,直接调用log.openTrace(false,1)即可 ]] --log.openTrace(true,1,115200) require "sys" require "net" --每1分钟查询一次GSM信号强度 --每1分钟查询一次基站信息 net.startQueryAll(60000, 60000) --加载控制台调试功能模块(此处代码配置的是uart2,波特率115200) --此功能模块不是必须的,根据项目需求决定是否加载 --使用时注意:控制台使用的uart不要和其他功能使用的uart冲突 --使用说明参考demo/console下的《console功能使用说明.docx》 --require "console" --console.setup(2, 115200) --加载网络指示灯和LTE指示灯功能模块 --根据自己的项目需求和硬件配置决定:1、是否加载此功能模块;2、配置指示灯引脚 --合宙官方出售的Air720开发板上的网络指示灯引脚为pio.P2_0,LTE指示灯引脚为pio.P2_1 --require "netLed" --netLed.setup(true,pio.P2_0,pio.P2_1) --网络指示灯功能模块中,默认配置了各种工作状态下指示灯的闪烁规律,参考netLed.lua中ledBlinkTime配置的默认值 --如果默认值满足不了需求,此处调用netLed.updateBlinkTime去配置闪烁时长 --LTE指示灯功能模块中,配置的是注册上4G网络,灯就常亮,其余任何状态灯都会熄灭 --加载错误日志管理功能模块【强烈建议打开此功能】 --如下2行代码,只是简单的演示如何使用errDump功能,详情参考errDump的api require "errDump" errDump.request("udp://ota.airm2m.com:9072") --加载远程升级功能模块【强烈建议打开此功能,如果使用了阿里云的OTA功能,可以不打开此功能】 --如下3行代码,只是简单的演示如何使用update功能,详情参考update的api以及demo/update --PRODUCT_KEY = "v32xEAKsGTIEQxtqgwCldp5aPlcnPs3K" --require "update" --update.request() --加载HTTP功能测试模块 require "testHttp" --启动系统框架 sys.init(0, 0) sys.run()
接下来是testHttp文件
--- 模块功能:HTTP功能测试. -- @author openLuat -- @module http.testHttp -- @license MIT -- @copyright openLuat -- @release 2018.03.23 module(...,package.seeall) require"http" local function cbFnc(result,prompt,head,body) log.info("testHttp.cbFnc",result,prompt) if result and head then for k,v in pairs(head) do log.info("testHttp.cbFnc",k..": "..v) end end if result and body then log.info("testHttp.cbFnc","bodyLen="..body:len()) end end local function cbFncFile(result,prompt,head,filePath) log.info("testHttp.cbFncFile",result,prompt,filePath) if result and head then for k,v in pairs(head) do log.info("testHttp.cbFncFile",k..": "..v) end end if result and filePath then log.info("stop",os.time()) local size = io.fileSize(filePath) log.info("testHttp.cbFncFile","fileSize="..size) --输出文件内容,如果文件太大,一次性读出文件内容可能会造成内存不足,分次读出可以避免此问题 if size<=4096 then log.info("testHttp.cbFncFile",io.readFile(filePath)) else end end --文件使用完之后,如果以后不再用到,需要自行删除 if filePath then os.remove(filePath) end end local function downloadfiles() log.info("start",os.time()) http.request("GET","http://域名或者ip/download.zip",nil,nil,nil,30000,cbFncFile,"download.zip") end sys.timerStart(downloadfiles,20000)
最后:下载测试
点击软件的项目管理测试
选择底层core
添加以下文件,以及打钩。
然后点击下载脚本。
接入usb接口下载:
按照如下手法:
详情请参照如下链接
插卡一,显示如下。
插卡槽二才能成功
然后把一个zip文件发送到服务器根目录
大小为291kb
最后可以得出下载一个291kb的文件大概四秒
第二次测试时间为5秒
第三次测试时间为5秒
改变变量:更换带宽大一点点的服务器。还是5秒
不测试了,女盆友呼唤俺了。哈哈哈哈哈
最后分享一个大兄弟开发的emqtt消息缓存到数据库的项目,不要购买商业版也能使用消息缓存到数据库。
https://blog.ezlinker.cn/2020/03/23/wwhai-EMQX%E6%95%99%E7%A8%8B-20200323-EMQX%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91%E6%95%99%E7%A8%8B%EF%BC%88%E9%AB%98%E7%BA%A7%E7%AF%87%EF%BC%89/

  • 发表于 2020-04-05 23:01
  • 阅读 ( 9125 )
  • 分类:默认分类

你可能感兴趣的文章

相关问题

3 条评论

请先 登录 后评论
不写代码的码农
李大牛

1 篇文章

作家榜 »

  1. 技术销售Delectate 43 文章
  2. 陈夏 26 文章
  3. 国梁 24 文章
  4. miuser 21 文章
  5. 晨旭 20 文章
  6. 朱天华 19 文章
  7. 金艺 19 文章
  8. 杨奉武 18 文章