diff --git a/APP_Framework/Applications/app_test/Makefile b/APP_Framework/Applications/app_test/Makefile index 8b6ac8332..be43d9839 100644 --- a/APP_Framework/Applications/app_test/Makefile +++ b/APP_Framework/Applications/app_test/Makefile @@ -1,29 +1,37 @@ -SRC_FILES := test_shell.c - -ifeq ($(CONFIG_USER_TEST_ADC),y) - SRC_FILES += test_adc.c -endif - -ifeq ($(CONFIG_USER_TEST_DAC),y) - SRC_FILES += test_dac.c -endif - -ifeq ($(CONFIG_USER_TEST_SEMC),y) - SRC_FILES += test_extsram.c -endif - -ifeq ($(CONFIG_USER_TEST_LCD),y) - SRC_FILES += -endif - -ifeq ($(CONFIG_ADD_XIZI_FETURES),y) -include $(KERNEL_ROOT)/compiler.mk -endif - include $(KERNEL_ROOT)/.config ifeq ($(CONFIG_ADD_NUTTX_FETURES),y) include $(APPDIR)/Make.defs - CSRCS += test_extsram.c test_lcd.c + + ifeq ($(CONFIG_USER_TEST_SEMC),y) + CSRCS += test_extsram.c + endif + + ifeq ($(CONFIG_USER_TEST_LCD),y) + CSRCS += test_lcd.c + endif + include $(APPDIR)/Application.mk + endif +ifeq ($(CONFIG_ADD_XIZI_FETURES),y) + SRC_FILES := test_shell.c + + ifeq ($(CONFIG_USER_TEST_ADC),y) + SRC_FILES += test_adc.c + endif + + ifeq ($(CONFIG_USER_TEST_DAC),y) + SRC_FILES += test_dac.c + endif + + ifeq ($(CONFIG_USER_TEST_SEMC),y) + SRC_FILES += test_extsram.c + endif + + ifeq ($(CONFIG_USER_TEST_LCD),y) + SRC_FILES += + endif + + include $(KERNEL_ROOT)/compiler.mk +endif diff --git a/APP_Framework/Applications/app_test/test_lcd.c b/APP_Framework/Applications/app_test/test_lcd.c index 9133f9628..d6633dd1b 100755 --- a/APP_Framework/Applications/app_test/test_lcd.c +++ b/APP_Framework/Applications/app_test/test_lcd.c @@ -22,17 +22,11 @@ * Included Files ****************************************************************************/ -#include +#include #ifdef ADD_NUTTX_FETURES #ifdef CONFIG_K210_LCD - -#include "nuttx/arch.h" -#include "nuttx/lcd/lt768.h" -#include "nuttx/lcd/lt768_lib.h" -#include "nuttx/lcd/k210_lcd.h" - void LcdDemo(void) { int x1 = 50, y1 = 50, x2 = LCD_XSIZE_TFT - 50, y2 = LCD_YSIZE_TFT - 50; @@ -72,18 +66,6 @@ void LcdDemo(void) } #else - -#include -#include -#include -#include -#include -#include -#include - -#include -#include - /**************************************************************************** * Preprocessor Definitions ****************************************************************************/ diff --git a/APP_Framework/Framework/connection/wifi/adapter_wifi.c b/APP_Framework/Framework/connection/wifi/adapter_wifi.c index f3622ade5..6c40f7413 100644 --- a/APP_Framework/Framework/connection/wifi/adapter_wifi.c +++ b/APP_Framework/Framework/connection/wifi/adapter_wifi.c @@ -384,7 +384,6 @@ int AdapterWifiTestWithParam(int argc, char *argv[]) strcpy(apt_param->wifi_ssid, wifi_param[APT_WIFI_PARAM_SSID]); strcpy(apt_param->wifi_pwd, wifi_param[APT_WIFI_PARAM_PWD]); - printf("2022-10-14 Mr. Wang commit Wifi\n"); printf("apt %p ssid %p %s\n", apt_param, apt_param->wifi_ssid); CHECK_RET(AdapterDeviceOpen(adapter)); diff --git a/APP_Framework/Framework/connection/wifi/esp8285_wifi/esp8285_wifi.c b/APP_Framework/Framework/connection/wifi/esp8285_wifi/esp8285_wifi.c index 07a050333..f0a3b77c8 100644 --- a/APP_Framework/Framework/connection/wifi/esp8285_wifi/esp8285_wifi.c +++ b/APP_Framework/Framework/connection/wifi/esp8285_wifi/esp8285_wifi.c @@ -238,7 +238,7 @@ static int Esp8285WifiSetUp(struct Adapter *adapter) result = GetReplyText(reply); if (!result) { - printf("%s %n get reply failed.\n",__func__,__LINE__); + printf("%s %d get reply failed.\n",__func__,__LINE__); ret = -1; goto __exit; } @@ -355,7 +355,7 @@ static int Esp8285WifiNetstat(struct Adapter *adapter) result = GetReplyText(reply); if (!result) { - printf("%s %n get reply failed.\n",__func__,__LINE__); + printf("%s %d get reply failed.\n",__func__,__LINE__); ret = -1; goto __exit; } diff --git a/APP_Framework/Framework/transform_layer/nuttx/transform.h b/APP_Framework/Framework/transform_layer/nuttx/transform.h index 400bf39ff..2c17c31cf 100644 --- a/APP_Framework/Framework/transform_layer/nuttx/transform.h +++ b/APP_Framework/Framework/transform_layer/nuttx/transform.h @@ -25,11 +25,33 @@ #include #include #include +#include #include #include -#include +#include +#include +#include +#include +#include #include #include +#include + +#ifdef CONFIG_ADAPTER_SX1278 +#include +#endif + +#ifdef CONFIG_USER_TEST_LCD +#ifdef CONFIG_K210_LCD +# include "nuttx/lcd/lt768.h" +# include "nuttx/lcd/lt768_lib.h" +# include "nuttx/lcd/if_port.h" +#else +# include +# include +# include +#endif +#endif typedef uint8_t uint8; typedef uint16_t uint16; diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/lcdnsh/defconfig b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/lcdnsh/defconfig index a5e7abb94..588b67f60 100755 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/lcdnsh/defconfig +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/lcdnsh/defconfig @@ -63,6 +63,5 @@ CONFIG_K210_LCD=y CONFIG_K210_LCD_BACKLIGHT=y CONFIG_LCD=y CONFIG_LCD_LT768=y - CONFIG_USER_TEST=y CONFIG_USER_TEST_LCD=y diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/wifinsh/defconfig b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/wifinsh/defconfig new file mode 100644 index 000000000..791657efc --- /dev/null +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/configs/wifinsh/defconfig @@ -0,0 +1,77 @@ +# +# This file is autogenerated: PLEASE DO NOT EDIT IT. +# +# You can use "make menuconfig" to make any modifications to the installed .config file. +# You can then do "make savedefconfig" to generate a new defconfig file that includes your +# modifications. +# +# CONFIG_NSH_DISABLE_LOSMART is not set +# CONFIG_STANDARD_SERIAL is not set +CONFIG_ADD_NUTTX_FETURES=y +CONFIG_ARCH="risc-v" +CONFIG_ARCH_BOARD="xidatong-riscv64" +CONFIG_ARCH_BOARD_XIDATONG_RISCV64=y +CONFIG_ARCH_CHIP="k210" +CONFIG_ARCH_CHIP_K210=y +CONFIG_ARCH_INTERRUPTSTACK=2048 +CONFIG_ARCH_RISCV=y +CONFIG_ARCH_STACKDUMP=y +CONFIG_BINFMT_DISABLE=y +CONFIG_BOARD_LOOPSPERMSEC=46000 +CONFIG_BUILTIN=y +CONFIG_DEBUG_FULLOPT=y +CONFIG_DEBUG_SYMBOLS=y +CONFIG_EXAMPLES_HELLO=y +CONFIG_IDLETHREAD_STACKSIZE=2048 +CONFIG_INIT_ENTRYPOINT="nsh_main" +CONFIG_INIT_STACKSIZE=3072 +CONFIG_INTELHEX_BINARY=y +CONFIG_LIBC_PERROR_STDOUT=y +CONFIG_LIBC_STRERROR=y +CONFIG_NSH_ARCHINIT=y +CONFIG_NSH_BUILTIN_APPS=y +CONFIG_NSH_DISABLE_IFUPDOWN=y +CONFIG_NSH_DISABLE_MKDIR=y +CONFIG_NSH_DISABLE_RM=y +CONFIG_NSH_DISABLE_RMDIR=y +CONFIG_NSH_DISABLE_UMOUNT=y +CONFIG_NSH_READLINE=y +CONFIG_NSH_STRERROR=y +CONFIG_PREALLOC_TIMERS=4 +CONFIG_RAM_SIZE=2097152 +CONFIG_RAM_START=0x80400000 +CONFIG_RAW_BINARY=y +CONFIG_READLINE_CMD_HISTORY=y +CONFIG_READLINE_CMD_HISTORY_LEN=100 +CONFIG_READLINE_CMD_HISTORY_LINELEN=120 +CONFIG_RR_INTERVAL=200 +CONFIG_SCHED_WAITPID=y +CONFIG_STACK_COLORATION=y +CONFIG_START_DAY=28 +CONFIG_START_MONTH=12 +CONFIG_START_YEAR=2019 +CONFIG_SYSTEM_NSH=y +CONFIG_TASK_NAME_SIZE=20 +CONFIG_TESTING_GETPRIME=y +CONFIG_UART0_SERIAL_CONSOLE=y +CONFIG_READLINE_TABCOMPLETION=y +CONFIG_SCHED_HPWORK=y +CONFIG_DEV_GPIO=y +CONFIG_BOARDCTL_RESET=y +CONFIG_K210_16550_UART=y +CONFIG_K210_16550_UART1=y +CONFIG_K210_16550_UART1_BASE=0x50210000 +CONFIG_K210_16550_UART1_CLOCK=195000000 +CONFIG_K210_16550_UART1_IRQ=38 +CONFIG_K210_16550_UART1_BAUD=115200 +CONFIG_K210_16550_UART1_PARITY=0 +CONFIG_K210_16550_UART1_BITS=8 +CONFIG_K210_16550_UART1_2STOP=0 +CONFIG_K210_16550_UART1_RXBUFSIZE=128 +CONFIG_K210_16550_UART1_TXBUFSIZE=128 +CONFIG_SUPPORT_CONNECTION_FRAMEWORK=y +CONFIG_CONNECTION_FRAMEWORK_DEBUG=y +CONFIG_CONNECTION_ADAPTER_WIFI=y +CONFIG_ADAPTER_ESP8285_WIFI=y +CONFIG_ADAPTER_WIFI_ESP8285="esp8285_wifi" +CONFIG_ADAPTER_ESP8285_DRIVER="/dev/ttyS1" diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/include/board.h b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/include/board.h index 5757d2b3f..d429da72a 100644 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/include/board.h +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/include/board.h @@ -55,7 +55,7 @@ /* GPIO pins used by the GPIO Subsystem */ -#define BOARD_NGPIOOUT 4 /* Amount of GPIO Output pins */ +#define BOARD_NGPIOOUT 3 /* Amount of register GPIO Output pins */ #define BOARD_NGPIOINT 0 /* Amount of GPIO Input */ /**************************************************************************** @@ -111,6 +111,14 @@ extern "C" #define BSP_ENET_NRST 13 #define BSP_ENET_NINT 14 +/* LCD IO */ +#define BSP_LCD_NRST 37 +#define BSP_LCD_SCLK 38 +#define BSP_LCD_MOSI 39 +#define BSP_LCD_MISO 40 +#define BSP_LCD_NCS 41 +#define BSP_LCD_BL_PIN 47 + /* I2C */ #define BSP_IIC_SDA 15 #define BSP_IIC_SCL 17 @@ -157,6 +165,14 @@ extern "C" #define FPIOA_ENET_MOSI 23 #define FPIOA_ENET_NCS 31 +/* LCD FPIOA */ +#define FPIOA_LCD_NRST 0 +#define FPIOA_LCD_BL 9 +#define FPIOA_LCD_SCLK 28 +#define FPIOA_LCD_MOSI 29 +#define FPIOA_LCD_MISO 23 +#define FPIOA_LCD_NCS 31 + /* I2C */ #define FPIOA_IIC_SDA 7 #define FPIOA_IIC_SCL 8 diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/Makefile b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/Makefile index 04afe7e33..7ac890b57 100644 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/Makefile +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/Makefile @@ -35,7 +35,7 @@ CSRCS += k210_leds.c endif ifeq ($(CONFIG_K210_LCD),y) -CSRCS += k210_lcd.c lcd_demo.c +CSRCS += k210_lcd.c endif ifeq ($(CONFIG_DEV_GPIO),y) diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_bringup.c b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_bringup.c index 1fed3801b..4f4eb7b0f 100644 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_bringup.c +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_bringup.c @@ -32,12 +32,16 @@ #include #include +#include #include "k210.h" #include "k210_clockconfig.h" #include "xidatong-riscv64.h" #include #include "k210_sysctl.h" +#include "k210_fpioa.h" +#include "k210_gpiohs.h" +#include "k210_gpio_common.h" #ifdef CONFIG_BSP_USING_CH438 # include "k210_ch438.h" @@ -80,18 +84,21 @@ int k210_bringup(void) #ifdef CONFIG_K210_LCD k210_sysctl_init(); - ret = board_lcd_initialize(); - if (ret < 0) - { - syslog(LOG_NOTICE, "board lcd initialize %d\n", ret); - } + board_lcd_initialize(); #endif #ifdef CONFIG_K210_16550_UART1 sysctl_clock_enable(SYSCTL_CLOCK_UART1); sysctl_reset(SYSCTL_RESET_UART1); - fpioa_set_function(GPIO_WIFI_RXD, FPOA_USART1_RX); - fpioa_set_function(GPIO_WIFI_TXD, FPOA_USART1_TX); + + fpioa_set_function(GPIO_WIFI_TXD, FPOA_USART1_RX); + fpioa_set_function(GPIO_WIFI_RXD, FPOA_USART1_TX); + + fpioa_set_function(GPIO_WIFI_EN, K210_IO_FUNC_GPIOHS0 + GPIO_WIFI_EN); + k210_gpiohs_set_direction(GPIO_WIFI_EN, GPIO_DM_OUTPUT); + k210_gpiohs_set_value(GPIO_WIFI_EN, GPIO_PV_LOW); + up_mdelay(50); + k210_gpiohs_set_value(GPIO_WIFI_EN, GPIO_PV_HIGH); #endif #ifdef CONFIG_K210_16550_UART2 diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_gpio.c b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_gpio.c index ab1b880a7..ea55c8c2b 100644 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_gpio.c +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_gpio.c @@ -88,16 +88,14 @@ static const uint32_t g_gpiooutputs[BOARD_NGPIOOUT] = { GPIO_E220_M0, GPIO_E220_M1, - GPIO_E18_MODE, - GPIO_WIFI_EN + GPIO_E18_MODE }; static const uint32_t g_fpioa[BOARD_NGPIOOUT] = { FPIOA_E220_M0, FPIOA_E220_M1, - FPIOA_E18_MODE, - FPIOA_WIFI_EN + FPIOA_E18_MODE }; static struct k210gpio_dev_s g_gpout[BOARD_NGPIOOUT]; @@ -173,7 +171,6 @@ int k210_gpio_init(void) (K210_IO_FUNC_GPIOHS0 + g_fpioa[i]) | K210_IOFLAG_GPIOHS); k210_gpiohs_set_direction(g_fpioa[i], GPIO_DM_OUTPUT); k210_gpiohs_set_value(g_fpioa[i], false); - pincount++; } #endif diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_lcd.c b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_lcd.c index 5eebdbb4f..bc689c08f 100755 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_lcd.c +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/k210_lcd.c @@ -28,24 +28,24 @@ #include "nuttx/arch.h" #include "nuttx/lcd/lt768.h" #include "nuttx/lcd/lt768_lib.h" -#include "nuttx/lcd/k210_lcd.h" +#include "nuttx/lcd/if_port.h" +#include +#include #ifdef CONFIG_LCD_LCDDRV_SPIIF #include "nuttx/lcd/lcddrv_spiif.h" #endif +#define NCS_H() k210_gpiohs_set_value(FPIOA_LCD_NCS, GPIO_PV_HIGH); up_udelay(20) +#define NCS_L() k210_gpiohs_set_value(FPIOA_LCD_NCS, GPIO_PV_LOW); up_udelay(20) +#define CLK_H() k210_gpiohs_set_value(FPIOA_LCD_SCLK, GPIO_PV_HIGH); up_udelay(20) +#define CLK_L() k210_gpiohs_set_value(FPIOA_LCD_SCLK, GPIO_PV_LOW); up_udelay(20) +#define MOSI_H() k210_gpiohs_set_value(FPIOA_LCD_MOSI, GPIO_PV_HIGH) +#define MOSI_L() k210_gpiohs_set_value(FPIOA_LCD_MOSI, GPIO_PV_LOW) + /**************************************************************************** * Public Functions ****************************************************************************/ -void test_delay(void) -{ - volatile uint32_t i = 0; - for (i = 0; i < 200; ++i) - { - __asm("NOP"); /* delay */ - } -} - void lcd_pin_init(void) { k210_fpioa_config(BSP_LCD_NRST, HS_GPIO(FPIOA_LCD_NRST) | K210_IOFLAG_GPIOHS); @@ -60,9 +60,9 @@ void lcd_pin_init(void) k210_gpiohs_set_direction(FPIOA_LCD_MOSI, GPIO_DM_OUTPUT); k210_gpiohs_set_direction(FPIOA_LCD_NCS, GPIO_DM_OUTPUT); - lcd_set_pin(FPIOA_LCD_SCLK, GPIO_PV_HIGH); - lcd_set_pin(FPIOA_LCD_NCS, GPIO_PV_HIGH); - lcd_set_pin(FPIOA_LCD_NRST, GPIO_PV_HIGH); + k210_gpiohs_set_value(FPIOA_LCD_SCLK, GPIO_PV_HIGH); + k210_gpiohs_set_value(FPIOA_LCD_NCS, GPIO_PV_HIGH); + k210_gpiohs_set_value(FPIOA_LCD_NRST, GPIO_PV_HIGH); } void lcd_backlight_init(bool enable) @@ -86,74 +86,74 @@ uint8_t lcd_transfer_byte(uint8_t dat) for(i = 0; i < 8; i++) { - CLK_H; + CLK_H(); // MOSI during falling edge if((dat << i) & 0x80) { - MOSI_H; + MOSI_H(); } else { - MOSI_L; + MOSI_L(); } - CLK_L; + CLK_L(); // MISO during rising edge rx_data <<= 1; - if(lcd_get_pin(FPIOA_LCD_MISO)) + if(k210_gpiohs_get_value(FPIOA_LCD_MISO)) rx_data ++; } - CLK_H; + CLK_H(); return rx_data; } void LCD_CmdWrite(uint8_t cmd) { - NCS_L; + NCS_L(); lcd_transfer_byte(0x00); lcd_transfer_byte(cmd); - NCS_H; + NCS_H(); } void LCD_DataWrite(uint8_t data) { - NCS_L; + NCS_L(); lcd_transfer_byte(0x80); lcd_transfer_byte(data); - NCS_H; + NCS_H(); } void LCD_DataWrite_Pixel(uint8_t data) { - NCS_L; + NCS_L(); lcd_transfer_byte(0x80); lcd_transfer_byte(data); - NCS_H; - NCS_L; + NCS_H(); + NCS_L(); lcd_transfer_byte(0x80); lcd_transfer_byte(data >> 8); - NCS_H; + NCS_H(); } uint8_t LCD_StatusRead(void) { uint8_t temp = 0; - NCS_L; + NCS_L(); lcd_transfer_byte(0x40); temp = lcd_transfer_byte(0xff); - NCS_H; + NCS_H(); return temp; } uint8_t LCD_DataRead(void) { uint8_t temp = 0; - NCS_L; + NCS_L(); lcd_transfer_byte(0xc0); temp = lcd_transfer_byte(0xff); - NCS_H; + NCS_H(); return temp; } @@ -195,11 +195,12 @@ void lcd_drv_init(void) * ****************************************************************************/ -void board_lcd_initialize(void) +int board_lcd_initialize(void) { /* Configure the LCD backlight (and turn the backlight off) */ lcd_backlight_init(true); lcd_drv_init(); + return 0; } /**************************************************************************** diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/lcd_demo.c b/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/lcd_demo.c deleted file mode 100755 index cebf7d69e..000000000 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/aiit_board/xidatong-riscv64/src/lcd_demo.c +++ /dev/null @@ -1,64 +0,0 @@ -/**************************************************************************** - * lcd_demo.c - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. The - * ASF licenses this file to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance with the - * License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations - * under the License. - * - ****************************************************************************/ - -/** -* @file lcd_demo.c -* @brief -* @version 1.0.0 -* @author AIIT XUOS Lab -* @date 2022-07-21 -*/ - -/**************************************************************************** - * Included Files - ****************************************************************************/ - -#include "nuttx/arch.h" -#include "nuttx/lcd/lt768.h" -#include "nuttx/lcd/lt768_lib.h" -#include "nuttx/lcd/k210_lcd.h" - -void LcdDemo(void) -{ -// int x1 = 0, y1 = 0, x2 = LCD_XSIZE_TFT, y2 = LCD_YSIZE_TFT; - int x1 = 100, y1 = 100, x2 = 200, y2 = 200; - - Main_Image_Start_Address(LCD_START_ADDR); - Main_Image_Width(LCD_XSIZE_TFT); - Main_Window_Start_XY(0, 0); - Canvas_Image_Start_address(LCD_START_ADDR); - Canvas_image_width(LCD_XSIZE_TFT); - Active_Window_XY(0, 0); - Active_Window_WH(LCD_XSIZE_TFT, LCD_YSIZE_TFT); - up_mdelay(10); - Canvas_Image_Start_address(LCD_START_ADDR); - - for(int i = 0; i < 3; i++) - { - syslog(LOG_NOTICE, "Disp_demo %d\n", i); - LT768_DrawSquare_Fill(x1, y1, x2, y2, Red); - up_mdelay(2000); - LT768_DrawSquare_Fill(x1, y1, x2, y2, Green); - up_mdelay(2000); - LT768_DrawSquare_Fill(x1, y1, x2, y2, Blue); - up_mdelay(2000); - } -} - diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/arch/risc-v/src/k210/k210_gpio.c b/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/arch/risc-v/src/k210/k210_gpio.c index eb3c0e93e..8b966b3b7 100644 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/arch/risc-v/src/k210/k210_gpio.c +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/arch/risc-v/src/k210/k210_gpio.c @@ -101,8 +101,8 @@ void gpio_set_drive_mode(uint8_t pin, gpio_drive_mode_t mode) int io_number = fpioa_get_io_by_function(K210_IO_FUNC_GPIO0 + pin); DEBUGASSERT(io_number >= 0); - fpioa_pull_t pull; - uint32_t dir; + fpioa_pull_t pull = FPIOA_PULL_NONE; + uint32_t dir = 0; switch(mode) { diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/drivers/lcd/lt768.c b/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/drivers/lcd/lt768.c index 2cfffc1ba..6045def7d 100755 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/drivers/lcd/lt768.c +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/drivers/lcd/lt768.c @@ -1839,11 +1839,9 @@ void Display_ON(void) uint8_t temp; LCD_CmdWrite(0x12); temp = LCD_DataRead(); - syslog(LOG_NOTICE, "Display_ON.pre_read=%02x\n", temp); temp |= cSetb6; LCD_DataWrite(temp); temp = LCD_DataRead(); - syslog(LOG_NOTICE, "Display_ON.write_read=%02x\n", temp); } void Display_OFF(void) diff --git a/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/include/nuttx/lcd/k210_lcd.h b/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/include/nuttx/lcd/if_port.h old mode 100755 new mode 100644 similarity index 53% rename from Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/include/nuttx/lcd/k210_lcd.h rename to Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/include/nuttx/lcd/if_port.h index 9265434a4..8f8f47119 --- a/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/include/nuttx/lcd/k210_lcd.h +++ b/Ubiquitous/Nuttx_Fusion_XiUOS/app_match_nuttx/nuttx/include/nuttx/lcd/if_port.h @@ -1,5 +1,5 @@ /**************************************************************************** - * k210_lcd.h + * if_port.h * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with @@ -19,73 +19,31 @@ ****************************************************************************/ /** -* @file k210_lcd.h +* @file if_port.h * @brief * @version 1.0.0 * @author AIIT XUOS Lab * @date 2022-07-21 */ -#ifndef __K210_LCD_H_ -#define __K210_LCD_H_ +#ifndef _IF_PORT_H +#define _IF_PORT_H #include - #include #include - #include "nuttx/lcd/lt768.h" #include "nuttx/lcd/lt768_lib.h" -//PIN.define -#define BSP_LCD_NRST 37 -#define BSP_LCD_SCLK 38 -#define BSP_LCD_MOSI 39 -#define BSP_LCD_MISO 40 -#define BSP_LCD_NCS 41 -#define BSP_LCD_BL_PIN 47 - -//FPIOA.define -#define FPIOA_LCD_NRST 0 -#define FPIOA_LCD_BL 9 -#define FPIOA_LCD_SCLK 28 -#define FPIOA_LCD_MOSI 29 -#define FPIOA_LCD_MISO 23 //can't use GPIOHS30 -#define FPIOA_LCD_NCS 31 - -#define GPIO_PV_HIGH 1 // true -#define GPIO_PV_LOW 0 // false - #define LCD_START_ADDR 0 #define STM32_FSMC_8 0 -#define lcd_set_pin k210_gpiohs_set_value -#define lcd_get_pin k210_gpiohs_get_value - -void test_delay(void); - -#define lcd_delay() up_udelay(20) - -#define NCS_H lcd_set_pin(FPIOA_LCD_NCS, GPIO_PV_HIGH); lcd_delay() -#define NCS_L lcd_set_pin(FPIOA_LCD_NCS, GPIO_PV_LOW); lcd_delay() - -#define CLK_H lcd_set_pin(FPIOA_LCD_SCLK, GPIO_PV_HIGH); lcd_delay() -#define CLK_L lcd_set_pin(FPIOA_LCD_SCLK, GPIO_PV_LOW); lcd_delay() - -#define MOSI_H lcd_set_pin(FPIOA_LCD_MOSI, GPIO_PV_HIGH) -#define MOSI_L lcd_set_pin(FPIOA_LCD_MOSI, GPIO_PV_LOW) - -/*----------------------------------------------------------------------------*/ - void lcd_backlight_init(bool enable); void lcd_drv_init(void); - void LCD_CmdWrite(uint8_t cmd); void LCD_DataWrite(uint8_t data); uint8_t LCD_DataRead(void); uint8_t LCD_StatusRead(void); void LCD_DataWrite_Pixel(uint8_t data); -/*----------------------------------------------------------------------------*/ - #endif