@salt_fish 执行hb build -f后,没有语法错误,但是提示Generate image file failed(生成镜像失败)。
这是因为编译后生成的文件过大,旧的flash策略不能用,把device\xradio\xr806\xr_skylark\project\demo\wlan_ble_demo\image\xr806目录下的image_auto_cal.cfg里面的内容覆盖掉image_wlan_ble.cfg里面的内容即可。
@salt_fish 执行hb build -f后,没有语法错误,但是提示Generate image file failed(生成镜像失败)。
这是因为编译后生成的文件过大,旧的flash策略不能用,把device\xradio\xr806\xr_skylark\project\demo\wlan_ble_demo\image\xr806目录下的image_auto_cal.cfg里面的内容覆盖掉image_wlan_ble.cfg里面的内容即可。
1、里面的这几个宏,其实是因为hal接口提供了三组接收方式,而鸿蒙仅提供了一种接收方式,所以才这么写的。这里有几个问题,一个是XR806的IO口复用是在device/xradio/xr806/xr_skylark/project/common/board/xr806_dig_ver/board_config.c这个文件里面设置的,当前的配置是UART1和uart2公用一组IO口了,uart0是打印串口,一般不会修改。二是hal接口也是开放的,头文件在在device/xradio/xr806/xr_skylark/include/driver/chip/hal_uart.h这里,源码在device/xradio/xr806/xr_skylark/src/driver/chip/hal_uart.c。但是hal接口可以用,也可以看,但是因为是集成在rom里面的,所以对src文件夹的修改无效。三是你如果希望串口1使用循环接收,串口2使用中断接收,你就需要对IoTUartRead进行修改了,识别到是哪个串口,则进行哪种传输方式。
2、1000ms是可以改的。这个也是hal接口和鸿蒙借口有冲突的产物。
@zhugx 我认为你的意思是希望烧录接口和打印接口分开是吗?首先是烧录口是固定的,这没办法,但是如果你想把串口2变成打印接口的话,可以修改device/xradio/xr806/xr_skylark/project/common/board/xr806_dig_ver/board_config.h里面的BOARD_MAIN_UART_ID的值,改成UART2_ID即可。
@mysteryli gn脚本当前没有详细的中文文档介绍(网上的都是机翻,看不懂的),最好的办法就是参照harmony的官方例程,配合gn help命令一步步学,目前没有其他好办法了。
@yuzukitsuru 在 XR32SDK 编译缺少文件,求大佬给整几个配置文件我抄 中说:
@mr-hejingyg 有无XR32的相关文件,我不是想要872的,是要XR32的,XR32比XR871少了wifi/BT,配置文件应该是不一样的,我该如何知道怎么配置呢?现在板子还没有打样好还不能验证,想先把sdk跑通编译出来
确实XR32和XR872是有区别的,你可以先尝试能不能用。对于ld文件,其实写了不存在的文件也不会报错;对于cfg文件,因为打包工具是同一个,所以也可以共用;对于板级配置文件,其实也是一样的,你也成空的也行。我看什么时候把XR32的完整SDK上传一下。
@nihui 这个文件是动态文件,需要按步骤现在device/xradio/xr_skylark/xr806文件夹下,执行一下make lib -j后,返回根目录再执行一下hb build -f
@salt_fish 执行hb build -f后,没有语法错误,但是提示Generate image file failed(生成镜像失败)。
这是因为编译后生成的文件过大,旧的flash策略不能用,把device\xradio\xr806\xr_skylark\project\demo\wlan_ble_demo\image\xr806目录下的image_auto_cal.cfg里面的内容覆盖掉image_wlan_ble.cfg里面的内容即可。
@zwmasdf 其实只是旧的flash内存分配策略不管用了,文档里面有介绍的,这时候生成了一个auto.cfg,把auto.cfg的内容复制到image.cfg里面即可。
@zhugx
编译环境的话已经有其他人回答了,很抱歉现在才注意到网络和蓝牙的问题。
网络和蓝牙的例程其实都是有的,网络的例程你可以看看device/xradio/xr806/xr_skylark/project/common/cmd/cmd_wlancmd.c,里面包括了所有如何创建WiFi终端,WiFi服务器,服务器如何发送,服务器如何接收等等例子。
蓝牙的例程也是一样,在device/xradio/xr806/xr_skylark/project/common/cmd/cmd_ble.c里面,XR806只支持BLE,不支持经典蓝牙。
你应该发现了,其实所有例程都在device/xradio/xr806/xr_skylark/project/common/cmd这个文件夹里面。
@zhugx 我认为你的意思是希望烧录接口和打印接口分开是吗?首先是烧录口是固定的,这没办法,但是如果你想把串口2变成打印接口的话,可以修改device/xradio/xr806/xr_skylark/project/common/board/xr806_dig_ver/board_config.h里面的BOARD_MAIN_UART_ID的值,改成UART2_ID即可。