【XR806开发板试用】使用硬件SPI驱动TFT液晶屏显示图片

本文主要是介绍【XR806开发板试用】使用硬件SPI驱动TFT液晶屏显示图片,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【开发背景】

在完成开发板呼吸灯效果后(【XR806开发板试用】使用PWM模块模拟手机呼吸灯提示功能),考虑到显示界面过于单一,如果想要呈现更多的信息就很困难了,刚好之前买过一个TFT液晶屏,正在某个角落吃灰呢,于是将它翻了出来,看看能否跟XR806开发板配合起来使用,于是做了这个测试,先上显示效果

【效果展示】

借用一下极术小姐姐的头像,O(∩_∩)O哈哈~
在这里插入图片描述
在这里插入图片描述

【接口信号】

1、接线图如下,涉及8根信号;比较幸运的是XR806上有5V/3.3V两组电压输出,液晶屏刚好需要5V供电,如果用3.3V供电则需要短路一个降压的芯片;CS为片选信号,直接全程拉低选中,也可以直接接地;RESET为屏的复位信号,RS为数据/指令选择控制信号(代表发给屏的是数据还是命令),MOSI就是我们SPI的数据发送接口了,SCK为时钟信号,LED是屏幕的背光,我这里直接接了3.3V,为常亮状态,如果需要开关背光,可以接到IO口上。因为只需要向屏幕发数据,所以此处并未接MISO信号。

XR806开发板TFT液晶屏
5V —>VCC
GND—>GND
A13—>CS
A12—>RESET
A11—>RS
B04—>MOSI
B07—>SCK
3V3—>LED

在这里插入图片描述

【设计思路】

1、配置XR806芯片的SPI功能,调试通信ok,可以将MOSI和MISO两个信号接在一起,实现自发自收,此处参考了论坛的一篇文章;
2、完成自发自收后一直屏幕相关例程,将底层的SPI驱动函数替换成XR806中的驱动函数,这样就基本完成了主要代码的移植;
3、将极术小姐姐的头像下载后,用取模工具获取数据,然后将数据用数组形式放到代码中就好了;
ps:我使用的取模工具是Image2Lcd,网上能找到这款屏的资料,有兴趣的同学可以搜一下;

【关键代码】

1、IO口定义
#define CS_PIN      13
#define RST_PIN     12
#define RS_PIN      11
#define LED_PIN     19#define	LCD_CS_SET      IoTGpioSetOutputVal(CS_PIN, 1)  
#define	LCD_RS_SET	    IoTGpioSetOutputVal(RS_PIN, 1)  
#define	LCD_RST_SET	    IoTGpioSetOutputVal(RST_PIN, 1) #define	LCD_CS_CLR      IoTGpioSetOutputVal(CS_PIN, 0)    
#define	LCD_RS_CLR	    IoTGpioSetOutputVal(RS_PIN, 0)    
#define	LCD_RST_CLR	    IoTGpioSetOutputVal(RST_PIN, 0)  
2、硬件SPI初始化
SPI_Global_Config spi_param;spi_param.cs_level = DEMO_SPI_CS_LEVEL;spi_param.mclk = DEMO_SPI_MCLK;HAL_SPI_Init(DEMO_SPI_PORT, &spi_param);SPI_Config spi_Config;spi_Config.firstBit = SPI_TCTRL_FBS_MSB;spi_Config.mode = SPI_CTRL_MODE_MASTER;spi_Config.opMode = SPI_OPERATION_MODE_POLL;spi_Config.sclk = 24000000;spi_Config.sclkMode = SPI_SCLK_Mode0;printf("spi open...\n");ret = HAL_SPI_Open(DEMO_SPI_PORT, DEMO_SPI_CS, &spi_Config, 5000);if (ret != HAL_OK) {printf("spi open failed");return ret;}HAL_SPI_Config(DEMO_SPI_PORT, SPI_ATTRIBUTION_IO_MODE, SPI_IO_MODE_NORMAL);
3、IO口初始化
void LCD_GPIOInit(void)
{IoTGpioInit(RST_PIN);IoTGpioSetDir(RST_PIN, IOT_GPIO_DIR_OUT);IoTGpioInit(CS_PIN);IoTGpioSetDir(CS_PIN, IOT_GPIO_DIR_OUT);IoTGpioInit(RS_PIN);IoTGpioSetDir(RS_PIN, IOT_GPIO_DIR_OUT);IoTGpioInit(LED_PIN);IoTGpioSetDir(LED_PIN, IOT_GPIO_DIR_OUT);
}
4、LCD初始化与图片显示
LCD_Init1();	 for(i = 0; i < 6; i++){for(j = 0; j < 5; j++){Gui_Drawbmp16(50*j, 50*i, gImage_jishu);}}  
5、底层SPI驱动替换
uint8_t SPI_WriteByte(uint8_t SPIx, uint8_t Byte)
{uint8_t tx_data = 0;uint8_t rx_data = 0;HAL_Status ret = HAL_OK;tx_data = Byte;ret = HAL_SPI_TransmitReceive(DEMO_SPI_PORT, &tx_data, &rx_data, 1);if (ret != HAL_OK) {printf("spi write failed");return 0;}return rx_data;
} 
6、更多代码

另外还有很多移植的LCD的代码,此处就不贴了,可以到网盘下载
链接: https://pan.baidu.com/s/1rPyMVggAddNiTbb2XZGdJQ?pwd=bi63 提取码: bi63

【问题与改进】

1、大家可以看到显示的图片其实比较小,原因是如果取模数据量太大后会编译不过,我估计是代码空间超了,目前还没有比较好的解决方案;原本还有字符、汉字、画图等展示,都因为这个同样的原因加不进去;
2、至此已将XR806的IO功能、PWM功能、SPI功能基本用起来了,更重要的wifi和蓝牙功能还在熟悉中,这部分不太熟,希望在后面的测试中用起来;
3、报错内容从253之后开始的,前面都没有错误,详细内容如下,怀疑是跟空间有关,但还不确定,暂时也还没有想到解决办法;
报错内容:

[OHOS INFO] [252/254] STAMP obj/build/lite/gen_rootfs.stamp
[OHOS INFO] [253/254] ACTION //device/xradio/xr806:libSDK(//build/lite/toolchain:arm-none-eabi-gcc)
[OHOS ERROR] [253/254] ACTION //device/xradio/xr806:libSDK(//build/lite/toolchain:arm-none-eabi-gcc)
[OHOS ERROR] FAILED: obj/device/xradio/xr806/libSDK_build_ext_components.txt 
[OHOS ERROR] /usr/bin/python3 ../../../build/lite/build_ext_components.py --path=../../../device/xradio/xr806 --command=./build.sh\ /home/jackie/out/xr806/wifi_skylark --target_dir=/home/jackie/out/xr806/wifi_skylark/obj/device/xradio/xr806/build.log --out_dir=/home/jackie/out/xr806/wifi_skylark/error.log
[OHOS ERROR] make[1]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc'
[OHOS ERROR] cd ../../../..; make prj=demo/audio_demo include/generated/autoconf.h; cd -
[OHOS ERROR] make[2]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark'
[OHOS ERROR] make[3]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/tools/config'
[OHOS ERROR] make[3]: 'conf' is up to date.
[OHOS ERROR] make[3]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/tools/config'
[OHOS ERROR] /home/jackie/device/xradio/xr806/xr_skylark
[OHOS ERROR] #
[OHOS ERROR] # No change to .config
[OHOS ERROR] #
[OHOS ERROR]   NUPD    .config
[OHOS ERROR]   NUPD    include/generated/autoconf.h
[OHOS ERROR] make[2]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark'
[OHOS ERROR] /home/jackie/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc
[OHOS ERROR] make  __build sdk_cfg_rdy=y
[OHOS ERROR] make[2]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc'
[OHOS ERROR] make  -C ../../../../src install
[OHOS ERROR] make[3]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src'
[OHOS ERROR] make _install TARGET=install
[OHOS ERROR] make[4]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src'
[OHOS ERROR] make  -C driver/chip install
[OHOS ERROR] make  -C libc install
[OHOS ERROR] make  -C image install
[OHOS ERROR] make  -C rom install
[OHOS ERROR] make  -C sys install
[OHOS ERROR] make  -C debug install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/driver/chip'
[OHOS ERROR] make  -C pm install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/libc'
[OHOS ERROR] make  -C driver/component install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/image'
[OHOS ERROR] make  -C console install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/rom'
[OHOS ERROR] make  -C efpg install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/sys'
[OHOS ERROR] make  -C fs install
[OHOS ERROR] make  -C audio/pcm install
[OHOS ERROR] make  -C audio/manager install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/driver/component'
[OHOS ERROR] make  -C net/ethernetif install
[OHOS ERROR] make  -C net/lwip-2.1.2 install
[OHOS ERROR] make  -C net/ping install
[OHOS ERROR] make  -C net/HTTPClient install
[OHOS ERROR] make  -C net/mbedtls-"2.16.8" install
[OHOS ERROR] make  -C net/nopoll install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/efpg'
[OHOS ERROR] make  -C net/libwebsockets/lib install
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/audio/manager'
[OHOS ERROR] make  -C net/mqtt install
[OHOS ERROR] make  -C net/shttpd-1.42 install
[OHOS ERROR] make  -C net/sntp install
[OHOS ERROR] make  -C net/udhcp-0.9.8 install
[OHOS ERROR] make  -C net/cloud/aliyun install
[OHOS ERROR] make  -C smartlink install
[OHOS ERROR] make  -C wlan install
[OHOS ERROR] make  -C atcmd install
[OHOS ERROR] make  -C cjson install
[OHOS ERROR] make  -C util install
[OHOS ERROR] make  -C sdd install
[OHOS ERROR] cp -t ../../lib libimage.a
[OHOS ERROR] cp -t ../../lib librom.a
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/wlan'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/fs'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/console'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/ping'
[OHOS ERROR] cp -t ../../lib libxrc.a
[OHOS ERROR] cp -t ../../../lib libaudmgr.a
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/mqtt'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/audio/pcm'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/HTTPClient'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/libwebsockets/lib'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/nopoll'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/pm'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/lwip-2.1.2'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/rom'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/util'
[OHOS ERROR] cp -t ../../lib libefpg.a
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/udhcp-0.9.8'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/cloud/aliyun'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/debug'
[OHOS ERROR] cp -t ../../lib libxrsys.a
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/sntp'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/shttpd-1.42'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/libc'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/sys'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/smartlink'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/cjson'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/atcmd'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/ethernetif'
[OHOS ERROR] cp -t ../../lib libpm.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/audio/manager'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/mbedtls-2.16.8'
[OHOS ERROR] cp -t ../../../lib libpcm.a
[OHOS ERROR] cp -t ../../lib libfs.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/efpg'
[OHOS ERROR] cp -t ../../../lib libsntp.a
[OHOS ERROR] cp -t ../../lib libmbuf.a
[OHOS ERROR] cp -t ../../lib libdebug.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/image'
[OHOS ERROR] make[5]: Entering directory '/home/jackie/device/xradio/xr806/xr_skylark/src/sdd'
[OHOS ERROR] cp -t ../../lib libcjson.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/pm'
[OHOS ERROR] cp -t ../../../..//lib libaliyun.a
[OHOS ERROR] cp -t ../../../lib libmqtt.a
[OHOS ERROR] cp -t ../../lib libatcmd.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/audio/pcm'
[OHOS ERROR] cp -t ../../../lib libethernetif.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/sntp'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/cloud/aliyun'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/fs'
[OHOS ERROR] cp -t ../../lib libconsole.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/cjson'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/wlan'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/ethernetif'
[OHOS ERROR] cp -t ../../lib libsmartlink.a
[OHOS ERROR] cp -t ../../../lib libhttpcli.a
[OHOS ERROR] cp -t ../../lib libutil.a
[OHOS ERROR] cp -t ../../../lib libping.a
[OHOS ERROR] cp -t ../../../lib libnopoll.a
[OHOS ERROR] cp -t ../../lib libsdd.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/util'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/atcmd'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/debug'
[OHOS ERROR] cp -t ../../../lib libudhcpd.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/smartlink'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/ping'
[OHOS ERROR] cp -t ../../../lib libhttpd.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/mqtt'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/HTTPClient'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/shttpd-1.42'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/console'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/nopoll'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/udhcp-0.9.8'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/sdd'
[OHOS ERROR] cp -t ../../../lib libcomponent.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/driver/component'
[OHOS ERROR] cp -t ../../../lib libchip.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/driver/chip'
[OHOS ERROR] cp -t ../../../lib libmbedtls.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/mbedtls-2.16.8'
[OHOS ERROR] cp -t ../../../lib liblwip.a
[OHOS ERROR] cp -t ../../../../lib liblibwebsockets.a
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/lwip-2.1.2'
[OHOS ERROR] make[5]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src/net/libwebsockets/lib'
[OHOS ERROR] make[4]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src'
[OHOS ERROR] make[3]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/src'
[OHOS ERROR] ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc -E -P -CC -DCONFIG_CHIP_ARCH_VER=3 -DCONFIG_ARCH_APP_CORE -DCONFIG_CPU_CM33F -DPRJ_XIP_SIZE=8M -DPRJ_BOOT_CERT="\"null\"" -DPRJ_IMAGE_BOOT_ATTR="\"0x1\"" -DPRJ_IMAGE_APP_SRAM_OFFS="\"0x00201000\"" -DPRJ_IMAGE_APP_EP="\"0x00201101\"" -DPRJ_IMAGE_BOOT_SRAM_OFFS="\"0x00230000\"" -DPRJ_IMAGE_BOOT_EP="\"0x00230101\"" -DPRJ_IMAGE_TZ_ATTR="\"0x25\"" -DPRJ_IMAGE_TZ_XIP_ATTR="\"0x26\"" -DPRJ_IMAGE_TZ_PSRAM_ATTR="\"0x25\"" -DPRJ_APP_BIN_CERT="\"null\"" -DPRJ_APP_XIP_BIN_CERT="\"null\"" -DPRJ_APP_PSRAM_BIN_CERT="\"null\"" -DPRJ_IMAGE_APP_ATTR="\"0x1\"" -DPRJ_IMAGE_APP_XIP_ATTR="\"0x2\"" -DPRJ_IMAGE_APP_PSRAM_ATTR="\"0x1\"" -DCONFIG_RAM_START=0x00201000 -DPRJ_RAM_SIZE=300K -DPRJ_PSRAM_START_OFFS="\"0x01400000\"" -DCONFIG_PSRAM_START=0x01400000 -DPRJ_PSRAM_SIZE=0K -DPRJ_IMAGE_BOOT_BIN="\"boot_"40"M.bin\"" -DPRJ_IMAGE_SYS_SDD_BIN="\"sys_sdd_"40"M.bin\""  -I../../../../include -I../../../../lib/xradio_v3 -include generated/autoconf.h -o .project.ld - < ../../../../project/linker_script/gcc/appos.ld && \
[OHOS ERROR] ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc -mcpu=cortex-m33 -mtune=cortex-m33 -march=armv8-m.main+dsp -mfpu=fpv5-sp-d16 -mfloat-abi=softfp -mcmse -mthumb -Wl,--gc-sections --specs=nano.specs --specs=nosys.specs -Wl,-Map=audio_demo.map,--cref -u _printf_float -u _scanf_float -Wl,--wrap,main -Wl,--wrap,exit -Wl,--wrap,_malloc_r -Wl,--wrap,_realloc_r -Wl,--wrap,_free_r -Wl,--wrap,gettimeofday -Wl,--wrap,settimeofday -Wl,--wrap,time -Wl,--wrap,printf -Wl,--wrap,vprintf -Wl,--wrap,puts -Wl,--wrap,fprintf -Wl,--wrap,vfprintf -Wl,--wrap,fputs -Wl,--wrap,putchar -Wl,--wrap,putc -Wl,--wrap,fputc -Wl,--wrap,fflush -Wl,--wrap,memcpy -Wl,--wrap,memset -Wl,--wrap,memmove -T.project.ld -L../../../../lib -L../../../../lib/xradio_v3  -o audio_demo.elf ../../../../project/common/iperf/iperf.o ../../../../project/common/startup/gcc/retarget.o ../../../../project/common/startup/gcc/retarget_main.o ../../../../project/common/startup/gcc/retarget_stdout.o ../../../../project/common/startup/gcc/startup.o ../../../../project/common/framework/user_data.o ../../../../project/common/framework/fs_ctrl.o ../../../../project/common/framework/bt_ctrl.o ../../../../project/common/framework/sys_monitor.o ../../../../project/common/framework/psram.o ../../../../project/common/framework/audio_ctrl.o ../../../../project/common/framework/net_ctrl.o ../../../../project/common/framework/sc_assistant_port.o ../../../../project/common/framework/net_sys.o ../../../../project/common/framework/sysinfo.o ../../../../project/common/framework/platform_init.o ../../../../project/common/framework/sys_ctrl/event_queue.o ../../../../project/common/framework/sys_ctrl/container.o ../../../../project/common/framework/sys_ctrl/observer.o ../../../../project/common/framework/sys_ctrl/publisher.o ../../../../project/common/framework/sys_ctrl/looper.o ../../../../project/common/framework/sys_ctrl/sys_ctrl.o ../../../../project/common/apps/player_app.o ../../../../project/common/apps/recorder_app.o ../../../../project/common/apps/cedarx/capture_ctrl/captureControl_rtos.o ../../../../project/common/apps/cedarx/os_glue/cdx_fs.o ../../../../project/common/apps/cedarx/os_glue/cdx_memory.o ../../../../project/common/apps/cedarx/os_glue/sleep.o ../../../../project/common/apps/cedarx/os_glue/atomic.o ../../../../project/common/apps/cedarx/os_glue/pthread.o ../../../../project/common/apps/cedarx/sound_ctrl/soundControl_rtos.o ../../../../project/common/apps/cedarx/sound_ctrl/soundStreamControl.o ../../../../project/common/apps/cedarx/sound_ctrl/reverb_pcm.o ../../../../project/common/apps/cedarx/sound_ctrl/reverb_buffer.o ../../../../project/common/apps/cedarx/sound_ctrl/card_pcm.o ../../../../project/common/apps/buttons/matrix_buttons_low_level.o ../../../../project/common/apps/buttons/matrix_buttons.o ../../../../project/common/apps/buttons/buttons.o ../../../../project/common/apps/buttons/buttons_low_level.o ../../../../project/common/board/board.o ../../../../project/common/board/board_common.o ../../../../project/common/cmd/cmd_i2c.o ../../../../project/common/cmd/cmd_etf.o ../../../../project/common/cmd/cmd_keyboard.o ../../../../project/common/cmd/cmd_irtx.o ../../../../project/common/cmd/cmd_arp.o ../../../../project/common/cmd/cmd_thread.o ../../../../project/common/cmd/cmd_ping.o ../../../../project/common/cmd/cmd_flash.o ../../../../project/common/cmd/cmd_i2s.o ../../../../project/common/cmd/cmd_wlancmd.o ../../../../project/common/cmd/cmd_dhcpd.o ../../../../project/common/cmd/cmd_bench_mark.o ../../../../project/common/cmd/cmd_iperf.o ../../../../project/common/cmd/cmd_smartlink.o ../../../../project/common/cmd/cmd_clock.o ../../../../project/common/cmd/cmd_nopoll.o ../../../../project/common/cmd/cmd_voice_print.o ../../../../project/common/cmd/cmd_pwm.o ../../../../project/common/cmd/cmd_ble.o ../../../../project/common/cmd/cmd_wlan.o ../../../../project/common/cmd/cmd_uart.o ../../../../project/common/cmd/cmd_sysinfo.o ../../../../project/common/cmd/cmd_sntp.o ../../../../project/common/cmd/cmd_heap.o ../../../../project/common/cmd/cmd_rtc.o ../../../../project/common/cmd/cmd_httpc.o ../../../../project/common/cmd/cmd_echo.o ../../../../project/common/cmd/cmd_httpd.o ../../../../project/common/cmd/cmd_audio.o ../../../../project/common/cmd/cmd_ble_etf.o ../../../../project/common/cmd/cmd_sd.o ../../../../project/common/cmd/cmd_scr.o ../../../../project/common/cmd/cmd_oled.o ../../../../project/common/cmd/cmd_broadcast.o ../../../../project/common/cmd/cmd_smart_config.o ../../../../project/common/cmd/cmd_rf.o ../../../../project/common/cmd/cmd_lpuart.o ../../../../project/common/cmd/cmd_cedarx.o ../../../../project/common/cmd/cmd_gpio.o ../../../../project/common/cmd/cmd_console.o ../../../../project/common/cmd/cmd_json.o ../../../../project/common/cmd/cmd_flashc_crypto.o ../../../../project/common/cmd/cmd_ota.o ../../../../project/common/cmd/cmd_camera.o ../../../../project/common/cmd/cmd_timer.o ../../../../project/common/cmd/cmd_adv.o ../../../../project/common/cmd/cmd_mesh.o ../../../../project/common/cmd/cmd_lws.o ../../../../project/common/cmd/cmd_btsnoop.o ../../../../project/common/cmd/cmd_fs.o ../../../../project/common/cmd/cmd_mem.o ../../../../project/common/cmd/cmd_gatt.o ../../../../project/common/cmd/cmd_codec.o ../../../../project/common/cmd/cmd_pm.o ../../../../project/common/cmd/cmd_efpg.o ../../../../project/common/cmd/cmd_psram.o ../../../../project/common/cmd/cmd_rom.o ../../../../project/common/cmd/cmd_ifconfig.o ../../../../project/common/cmd/cmd_airkiss.o ../../../../project/common/cmd/cmd_trustzone.o ../../../../project/common/cmd/cmd_hexdump.o ../../../../project/common/cmd/cmd_irrx.o ../../../../project/common/cmd/cmd_psensor.o ../../../../project/common/cmd/cmd_blink.o ../../../../project/common/cmd/cmd_ce.o ../../../../project/common/cmd/cmd_cache.o ../../../../project/common/cmd/cmd_util.o ../../../../project/common/cmd/cmd_mqtt.o ../../../../project/common/cmd/cmd_lmac.o ../../../../project/common/cmd/cmd_settings.o ../../../../project/common/cmd/cmd_upgrade.o ../../../../project/common/cmd/cmd_adc.o ../../../../project/common/cmd/cmd_xz.o ../../../../project/common/cmd/cmd_auddbg.o ../../../../project/common/cmd/cmd_spi.o ../../../../project/common/cmd/cmd_wdg.o ../../../../project/common/cmd/fft/Cooley_Tukey_FFT_para.o ../../../../project/common/cmd/fft/Cooley_Tukey_FFT.o ../../../../project/common/cmd/tls/cmd_tls.o ../../../../project/common/cmd/tls/client.o ../../../../project/common/cmd/tls/tls.o ../../../../project/common/cmd/tls/server.o ../../../../project/common/cmd/tls/custom_certs.o ../../../../project/common/board/xr806_dig_ver/board_config.o -Wl,--whole-archive -lchip -lxrsys -lrom -Wl,--no-whole-archive  -lefpg -lwlan -lwpas -lhostapd -lwpa -lwpas -lhostapd -lwpa -lnet80211 -lxrwireless -lnet80211 -lxrwireless_phy -lcedarx -lmp3 -lamr -lamren -lwav -laac -lcedarx -lmqtt -lnopoll -llibwebsockets -lhttpd -lhttpcli -lmbedtls -lsntp -lping -ludhcpd -lsmartlink -lairkiss_aes -lsc_assistant -lethernetif -llwip -lmbuf -lcjson -lfs -lconsole -lcomponent -lreverb -laudmgr -lpcm -ladt -lutil -lsdd -lzbar -leq -ldrc -lopus -lpm -limage  -ldebug -lxrc -lstdc++ -lsupc++ -lm -lc -lgcc -lxrc -Wl,--whole-archive ../../../../lib/ohos/libapp_console.a ../../../../lib/ohos/libapp_spi_demo.a -Wl,--no-whole-archive -Wl,--start-group ../../../../lib/ohos/libcpup.a ../../../../lib/ohos/libbacktrace.a ../../../../lib/ohos/libhilog_lite.a ../../../../lib/ohos/libnative_file.a ../../../../lib/ohos/libhal_sysparam.a ../../../../lib/ohos/libhal_file_static.a ../../../../lib/ohos/libbroadcast.a ../../../../lib/ohos/libhichainsdk.a ../../../../lib/ohos/libwifiservice.a ../../../../lib/ohos/libcmsis.a ../../../../lib/ohos/libsec.a ../../../../lib/ohos/libtoken_static.a ../../../../lib/ohos/libexchook.a ../../../../lib/ohos/libarch.a ../../../../lib/ohos/libhilog_lite_command.a ../../../../lib/ohos/libdump_static.a ../../../../lib/ohos/libbootstrap.a ../../../../lib/ohos/libutils.a ../../../../lib/ohos/libkal.a ../../../../lib/ohos/libliteos_glue.a ../../../../lib/ohos/libhievent_lite.a ../../../../lib/ohos/libxr_wifi_adapter.a ../../../../lib/ohos/libkernel.a ../../../../lib/ohos/libhal_iothardware.a ../../../../lib/ohos/libsamgr_adapter.a ../../../../lib/ohos/libutils_kv_store.a ../../../../lib/ohos/libposix.a ../../../../lib/ohos/libhal_token_static.a ../../../../lib/ohos/libhiview_lite.a ../../../../lib/ohos/libsysparam.a ../../../../lib/ohos/libsamgr.a ../../../../lib/ohos/libohos_bt_gatt.a ../../../../lib/ohos/libsamgr_source.a -Wl,--end-group
[OHOS ERROR] ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-objcopy -O binary -R .xip   audio_demo.elf audio_demo.bin
[OHOS ERROR] ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-size audio_demo.elf
[OHOS ERROR]    text       data     bss     dec     hex filename
[OHOS ERROR] 1156600       8032   76268 1240900  12ef44 audio_demo.elf
[OHOS ERROR] ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-objcopy -O binary -j .xip audio_demo.elf audio_demo_xip.bin
[OHOS ERROR] cp audio_demo_xip.bin ../image/"xr806"/app_xip.bin
[OHOS ERROR] cd ../image/"xr806" && \
[OHOS ERROR] chmod a+r *.bin && \
[OHOS ERROR] ~/tools/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc -E -P -CC -DCONFIG_CHIP_ARCH_VER=3 -DCONFIG_ARCH_APP_CORE -DCONFIG_CPU_CM33F -DPRJ_XIP_SIZE=8M -DPRJ_BOOT_CERT="\"null\"" -DPRJ_IMAGE_BOOT_ATTR="\"0x1\"" -DPRJ_IMAGE_APP_SRAM_OFFS="\"0x00201000\"" -DPRJ_IMAGE_APP_EP="\"0x00201101\"" -DPRJ_IMAGE_BOOT_SRAM_OFFS="\"0x00230000\"" -DPRJ_IMAGE_BOOT_EP="\"0x00230101\"" -DPRJ_IMAGE_TZ_ATTR="\"0x25\"" -DPRJ_IMAGE_TZ_XIP_ATTR="\"0x26\"" -DPRJ_IMAGE_TZ_PSRAM_ATTR="\"0x25\"" -DPRJ_APP_BIN_CERT="\"null\"" -DPRJ_APP_XIP_BIN_CERT="\"null\"" -DPRJ_APP_PSRAM_BIN_CERT="\"null\"" -DPRJ_IMAGE_APP_ATTR="\"0x1\"" -DPRJ_IMAGE_APP_XIP_ATTR="\"0x2\"" -DPRJ_IMAGE_APP_PSRAM_ATTR="\"0x1\"" -DCONFIG_RAM_START=0x00201000 -DPRJ_RAM_SIZE=300K -DPRJ_PSRAM_START_OFFS="\"0x01400000\"" -DCONFIG_PSRAM_START=0x01400000 -DPRJ_PSRAM_SIZE=0K -DPRJ_IMAGE_BOOT_BIN="\"boot_"40"M.bin\"" -DPRJ_IMAGE_SYS_SDD_BIN="\"sys_sdd_"40"M.bin\""  -I../../../../../include/generated -include autoconf.h -o .image.cfg - < image.cfg && \
[OHOS ERROR] true && \
[OHOS ERROR] chmod 777 ../../../../../tools/mkimage && ../../../../../tools/mkimage  -c .image.cfg -o xr_system.img
[OHOS ERROR] err: bin 1 and bin 2 were overlaped!
[OHOS ERROR] Overlapped size: 1024 Byte(1kB)
[OHOS ERROR] bin 1 name:app.bin    begin: 0x00008000    end: 0x00019000
[OHOS ERROR] bin 2 name:app_xip.bin    begin: 0x00018C00
[OHOS ERROR] 
[OHOS ERROR] We've rearranged bin files and generated new cfg file 'image_auto_cal.cfg', the new one is recommended.
[OHOS ERROR] Generate image file failed
[OHOS ERROR] cfg string:
[OHOS ERROR] /*
[OHOS ERROR]  *
[OHOS ERROR]  * Automatically generated file; DO NOT EDIT.
[OHOS ERROR]  * XR806 SDK Configuration
[OHOS ERROR]  *
[OHOS ERROR]  */
[OHOS ERROR] /*
[OHOS ERROR]  *
[OHOS ERROR]  * Automatically generated file; DO NOT EDIT.
[OHOS ERROR]  * XR806 SDK Configuration
[OHOS ERROR]  *
[OHOS ERROR]  */
[OHOS ERROR] {
[OHOS ERROR]     "magic" : "AWIH",
[OHOS ERROR]     "version" : "0.5",
[OHOS ERROR]     "image" : {"max_size": "1532K"},
[OHOS ERROR]     "section" :[
[OHOS ERROR]   {"id": "0xa5ff5a00", "bin" :"boot_40M.bin", "cert": "null", "flash_offs": "0K", "sram_offs": "0x00230000", "ep": "0x00230101", "attr":"0x1"},
[OHOS ERROR]   {"id": "0xa5fe5a01", "bin" :"app.bin", "cert": "null", "flash_offs": "32K", "sram_offs": "0x00201000", "ep": "0x00201101", "attr":"0x1"},
[OHOS ERROR]   {"id": "0xa5fd5a02", "bin" :"app_xip.bin", "cert": "null", "flash_offs": "99K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x2"},
[OHOS ERROR]   {"id": "0xa5fa5a05", "bin" :"wlan_bl.bin", "cert": "null", "flash_offs": "1170K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x1"},
[OHOS ERROR]   {"id": "0xa5f95a06", "bin" :"wlan_fw.bin", "cert": "null", "flash_offs": "1173K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x1"},
[OHOS ERROR]   {"id": "0xa5f85a07", "bin" :"sys_sdd_40M.bin", "cert": "null", "flash_offs": "1198K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x1"},
[OHOS ERROR]   {}
[OHOS ERROR]  ]
[OHOS ERROR] }
[OHOS ERROR] 
[OHOS ERROR] ../../../../project/project.mk:519: recipe for target 'image' failed
[OHOS ERROR] make[2]: *** [image] Error 255
[OHOS ERROR] make[2]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc'
[OHOS ERROR] ../../../../project/project.mk:493: recipe for target '__build' failed
[OHOS ERROR] make[1]: *** [__build] Error 2
[OHOS ERROR] make[1]: Leaving directory '/home/jackie/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc'
[OHOS ERROR] Makefile:164: recipe for target 'build' failed
[OHOS ERROR] make: *** [build] Error 2
[OHOS ERROR] you can check build log in /home/jackie/out/xr806/wifi_skylark/build.log
[OHOS ERROR] command: "/home/jackie/prebuilts/build-tools/linux-x86/bin/ninja -w dupbuild=warn -C /home/jackie/out/xr806/wifi_skylark" failed
[OHOS ERROR] return code: 1
[OHOS ERROR] execution path: /home/jackie
root@USER-20200124ZG:/home/jackie# 

这篇关于【XR806开发板试用】使用硬件SPI驱动TFT液晶屏显示图片的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/897779

相关文章

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

使用opencv优化图片(画面变清晰)

文章目录 需求影响照片清晰度的因素 实现降噪测试代码 锐化空间锐化Unsharp Masking频率域锐化对比测试 对比度增强常用算法对比测试 需求 对图像进行优化,使其看起来更清晰,同时保持尺寸不变,通常涉及到图像处理技术如锐化、降噪、对比度增强等 影响照片清晰度的因素 影响照片清晰度的因素有很多,主要可以从以下几个方面来分析 1. 拍摄设备 相机传感器:相机传

安卓链接正常显示,ios#符被转义%23导致链接访问404

原因分析: url中含有特殊字符 中文未编码 都有可能导致URL转换失败,所以需要对url编码处理  如下: guard let allowUrl = webUrl.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return} 后面发现当url中有#号时,会被误伤转义为%23,导致链接无法访问

pdfmake生成pdf的使用

实际项目中有时会有根据填写的表单数据或者其他格式的数据,将数据自动填充到pdf文件中根据固定模板生成pdf文件的需求 文章目录 利用pdfmake生成pdf文件1.下载安装pdfmake第三方包2.封装生成pdf文件的共用配置3.生成pdf文件的文件模板内容4.调用方法生成pdf 利用pdfmake生成pdf文件 1.下载安装pdfmake第三方包 npm i pdfma

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]