From 9f1291c40036a3630ee1a6abb7d0f59a33e7f84b Mon Sep 17 00:00:00 2001 From: NonPIayerCharacter <18557343+NonPIayerCharacter@users.noreply.github.com> Date: Mon, 29 Sep 2025 20:36:14 +0300 Subject: [PATCH] sp0828 sensor --- project/Makefile | 1 + project/project_config.h | 2311 +------------------ sdk/app/spook/encoder-audio.c | 2 +- sdk/app/spook/rtp-audio.c | 2 +- sdk/include/lib/video/dvp/cmos_sensor/csi.h | 9 + sdk/lib/bus/iic/sensor/sensor_sp0828.c | 305 +++ sdk/lib/video/dvp/cmos_sensor/csi_v2.c | 16 +- 7 files changed, 332 insertions(+), 2314 deletions(-) create mode 100644 sdk/lib/bus/iic/sensor/sensor_sp0828.c diff --git a/project/Makefile b/project/Makefile index c231938..52e52e4 100644 --- a/project/Makefile +++ b/project/Makefile @@ -427,6 +427,7 @@ SRC_C += ../sdk/lib/bus/iic/sensor/sensor_sp0718.c SRC_C += ../sdk/lib/bus/iic/sensor/sensor_bf30a2.c SRC_C += ../sdk/lib/bus/iic/sensor/sensor_ov7660.c SRC_C += ../sdk/lib/bus/iic/sensor/sensor_hi704.c +SRC_C += ../sdk/lib/bus/iic/sensor/sensor_sp0828.c SRC_C += ../sdk/lib/bus/iic/gsensor/da280.c SRC_C += ../sdk/lib/bus/iic/gsensor/qma7981.c SRC_C += ../sdk/lib/bus/iic/gsensor/sc7a20.c diff --git a/project/project_config.h b/project/project_config.h index 4f82300..f44ce45 100644 --- a/project/project_config.h +++ b/project/project_config.h @@ -1,785 +1,6 @@ #ifndef __SDK_PROJECT_CONFIG_H__ #define __SDK_PROJECT_CONFIG_H__ - - -#define CUSTOMER_ID 5 -/** - * CUSTOMER_ID : - * 1 TXW818_WAV_EVB - * 2 Ear_pick - * 3 FPV - * 4 FPV_UVC - * 5 MINI_DV - * 6 FEM_BBM_LCD - * 7 FEM_BBM_CAM - * 8 FEM_AV_Intercom - * 9 IPC - * 10 LLM - */ - - - - - -#if (CUSTOMER_ID == 1) - -#define DEFAULT_SYS_CLK (240*1000000) - -#define USB_EN 1 -#define USB_HOST_EN 1 -#define MACBUS_USB -#define USB_DEVICE_MASS_OR_UVC //使用rtt device架构需将此宏注释 -#define USBDISK 1 //1代表将sd卡作为u盘 2代表将flash作为usb盘,需要配合USB_EN使用,并且其他宏不能有冲突 - -/*=========== RTT USB架构宏定义 ==========*/ -#define RTT_USB_EN 0 //RTT USB 架构使能 (USB_EN打开) -#define USB_DETECT_EN 0 //USB 主从检测使能 (USB_HOST_EN关闭、USB_EN打开) - -/* USB HOST */ - -//#define RT_USBH //RTT USB HOST 使能 - -// #define RT_USBH_CDC -// #define RT_USBH_UVC -// #define RT_USBH_UAC -// #define RT_USBH_WIRELESS -// #define RT_USBH_VENDOR_QUECTEL -// #define RT_USBH_VENDOR_CHINAMOBILE -// #define RT_USBH_MSTORAGE - -/* USB DEVICE */ - -//#define RT_USING_USB_DEVICE //RTT USB DEVICE 使能 - -//#define RT_USB_DEVICE_COMPOSITE //USB DEVICE 复合设备使能 - -// #define RT_USB_DEVICE_CDC -// #define RT_USB_DEVICE_AUDIO_MIC -// #define RT_USB_DEVICE_AUDIO_SPEAKER -// #define RT_USB_DEVICE_MSTORAGE -// #define RT_USB_DEVICE_VIDEO -// #define RT_USB_DEVICE_RNDIS -// #define RT_USB_DEVICE_HID -// #define RT_USB_DEVICE_WINUSB - -/*================== end =================*/ - -/*============== WPA3宏定义 ==============*/ -#define WIFI_MODULE_80211W_EN 1 -#define CONFIG_IEEE80211W -#define CONFIG_SAE -#define CONFIG_OWE -#define WPA_CRYPTO_OPS 1 - -#define BLE_PAIR_NET 0 -#define WIRELESS_PAIR_CODE 0 - -#define PRC_EN 1 -#define OF_EN 1 -#define DVP_EN 1 -#define VPP_EN DVP_EN -#define JPG_EN (1 && DVP_EN) -#define LCD_EN 1 -#define SCALE_EN 1 -#define SDH_EN 1 -#define FS_EN 1 -#define SD_SAVE (0&&SDH_EN&&FS_EN&&JPG_EN) - -#define VCAM_EN (0 || DVP_EN) - -#define OPENDML_EN 1 -#define UART_FLY_CTRL_EN 0 -#define PWM_EN 0 -#define KEY_MODULE_EN 1 -#define FLASHDISK_EN 1 -#define MP3_EN 1 -#define AMR_EN 1 -#define NET_PAIR 1 -#define PRINTER_EN 0 - - -#define AUDIO_EN 0 -#define AUDIO_DAC_EN 0 -#define RTP_SOUND (1&&AUDIO_EN) - -#define MJPEG_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&JPG_EN) //基于框架的mjpeg录像 -#define UVC_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&USB_EN) //基于框架的uvc录像 - -#define DCDC_EN 1 //板子是否使用DCDC电路 -//低功耗demo -#define LOWPOWER_DEMO 0 - -///////////////wifi parameter//////////// -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 -/* 每1bit代表一种速率。每bit代表的格式: - * bit 0 : DSSS 1M - * bit 1 : DSSS 2M - * bit 2 : DSSS 5.5M - * bit 3 : DSSS 11M - * bit 4 : NON-HT 6M - * bit 5 : NON-HT 9M - * bit 6 : NON-HT 12M - * bit 7 : NON-HT 18M - * bit 8 : NON-HT 24M - * bit 9 : NON-HT 36M - * bit 10 : NON-HT 48M - * bit 11 : NON-HT 54M - * bit 12 : HT MCS0 - * bit 13 : HT MCS1 - * bit 14 : HT MCS2 - * bit 15 : HT MCS3 - * bit 16 : HT MCS4 - * bit 17 : HT MCS5 - * bit 18 : HT MCS6 - * bit 19 : HT MCS7 - */ -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -///////////////uart1//////////// -#define PIN_UART0_TX PA_12//PA_9 -#define PIN_UART0_RX PA_13 -#define ATCMD_UARTDEV HG_UART0_DEVID - - -///////////////uart4//////////// -#define PIN_UART4_TX 255 -#define PIN_UART4_RX PA_3 - -#define PIN_PDM_MCLK PA_4 -#define PIN_PDM_DATA PA_3 - -#define PIN_IIS0_MCLK 255 -#define PIN_IIS0_BCLK PA_7 -#define PIN_IIS0_WCLK PA_8 -#define PIN_IIS0_DATA PA_5 - - -//新增加,由于新增加功能不全,暂时用宏隔离,保留旧的逻辑 -#define LVGL_STREAM_ENABLE 0 -///////////////LCD///////////// -//#define LCD_HX8282_EN 1 -//#define LCD_ST7789V_EN 1 -//#define LCD_ST7789V_MCU666_EN 1 -#define LCD_ST7789V_MCU565_EN 1 -//#define LCD_ST7701S_EN 1 -//#define LCD_GC9503V_EN 1 - - -#define PIN_LCD_RESET 255//255// - -#if LCD_GC9503V_EN -#define PIN_SPI0_CS PA_11//PA_13// -#define PIN_SPI0_CLK PA_8//PA_14// -#define PIN_SPI0_IO0 PC_5//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_11 -#define DE_ERD 255 -#define VS_CS PA_8 -#define HS_DC PC_5 -#define LCD_TE 255 -#else -#define PIN_SPI0_CS PA_8//PA_13// -#define PIN_SPI0_CLK PA_2//PA_14// -#define PIN_SPI0_IO0 PA_0//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_0 -#define DE_ERD PA_2 -#define VS_CS PC_5 -#define HS_DC PA_11 -#define LCD_TE 255 -#endif - -#if (LCD_ST7701S_EN == 1) -#define LCD_D0 PA_7 -#define LCD_D1 PA_1 -#define LCD_D2 PA_12 -#define LCD_D3 PA_13 -#define LCD_D4 PA_14 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 PA_4 -#define LCD_D9 PA_5 -#define LCD_D10 PA_6 -#define LCD_D11 PC_8 -#define LCD_D12 PC_9 -#define LCD_D13 PC_10 -#define LCD_D14 PC_11 -#define LCD_D15 PC_12 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#elif LCD_GC9503V_EN -#define LCD_D0 PC_8 //B0 -#define LCD_D1 PC_9 //B1 -#define LCD_D2 PC_10 //B2 -#define LCD_D3 PC_11 //B3 -#define LCD_D4 PC_12 //B4 -#define LCD_D5 PC_13 //B5 -#define LCD_D6 PC_14 //G0 -#define LCD_D7 PC_15 //G1 -#define LCD_D8 PA_4 //G2 -#define LCD_D9 PA_5 //G3 -#define LCD_D10 PA_6 //G4 -#define LCD_D11 PA_7 //G5 -#define LCD_D12 PA_1 //R0 -#define LCD_D13 PA_12 //R1 -#define LCD_D14 PA_13 //R2 -#define LCD_D15 PA_14 //R3 -#define LCD_D16 PA_2 //R4 -#define LCD_D17 PA_0 //R5 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#else -#define LCD_D0 PC_8 -#define LCD_D1 PC_9 -#define LCD_D2 PC_10 -#define LCD_D3 PC_11 -#define LCD_D4 PC_12 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 255 -#define LCD_D9 255 -#define LCD_D10 255 -#define LCD_D11 255 -#define LCD_D12 255 -#define LCD_D13 255 -#define LCD_D14 255 -#define LCD_D15 255 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#endif - -#define SDH_I2C2_REUSE (0 && DVP_EN && SDH_EN) - -/*---------------------------------------*/ -/*---------SDH PIN DEFINITION------------*/ -/*---------------------------------------*/ - -#define PIN_SDH_CLK PC_4//PC_2// -#define PIN_SDH_CMD PC_3//PC_3// -#define PIN_SDH_DAT0 PC_2//PC_4// -#define PIN_SDH_DAT1 255 -#define PIN_SDH_DAT2 255 -#define PIN_SDH_DAT3 255 - - - -///////////////IIC2///////////// -#define PIN_IIC2_SCL PC_2//PA_11// -#define PIN_IIC2_SDA PC_3//PA_8// - -#define PIN_IIC1_SCL PA_13 -#define PIN_IIC1_SDA PA_12 - - - - - -#define MOTO_AIN1_PIN PB_7 -#define MOTO_AIN2_PIN PB_6 -#define MOTO_BIN1_PIN PC_0 -#define MOTO_BIN2_PIN PC_1 - - -#define PIN_PWM_CHANNEL_0 MOTO_AIN1_PIN -#define PIN_PWM_CHANNEL_1 MOTO_AIN2_PIN -#define PIN_PWM_CHANNEL_2 MOTO_BIN1_PIN -#define PIN_PWM_CHANNEL_3 MOTO_BIN2_PIN -#define PIN_PWM_CHANNEL_4 255 - - -#define PIN_SPI_PDN 0 - - -///////////////DVP////////////// -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 - -#define PIN_DVP_RESET 255//PA_12// -#define PIN_DVP_PDN 255 - - -//////////////SET QC///////////////////////////// -#define NET_TO_QC 0 -#define QC_STA_NAME "BGN_test" -#define QC_STA_PW "12345678" -#define QC_SCAN_TIME 200 //ms -#define QC_SCAN_CNT 10 //total time = QC_SCAN_TIME*QC_SCAN_CNT -#define QC_SCAN_CHANNEL 0x010 //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) - - - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG_NODE 40//18//30*2 -#define JPG_TAIL_RESERVER 0 - -#define JPG0_HEAD_RESERVER 0//0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 1400//8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40//20//18//30*2 -#define JPG0_TAIL_RESERVER 0 - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40//18//30*2 -#define JPG1_TAIL_RESERVER 0 - - -//设定自定义空间,前提heap要足够,main的时候会从heap申请这样一大片空间分配到custom_malloc中 -//空间组成大概是 jpg空间+csi空间(VGA 30kB)+ 其他模块的空间 -//系统尽量留有20K左右,防止其他地方malloc申请不到 - -//#define VCAM_33 - - -//#define WIFI_BRIDGE_EN 1 -//#define WIFI_BRIDGE_DEV HG_GMAC_DEVID - -#define CUSTOM_PSRAM_SIZE 500*1024 -#define PSRAM_HEAP //如果需要psram当作heap,需要打开这个宏 - -//速率调整参数选择,默认是耳勺 -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_BABYMPNITOR - -#if (RATE_CONTROL_SELECT == RATE_CONTROL_BABYMPNITOR) -//#define WIFI_TX_MAX_RETRY 5 //最大传输次数,范围为1~31 -#endif - -//是能5m/20m共存和自动带宽切换, -//#define WIFI_FEM_CHIP LMAC_FEM_GSR2401C -//#define LMAC_BGN_PCF - -///////////////ble enable//////////// -#define BLE_SUPPORT 1 -#define BLE_METER_TEST_EN 0 - -#elif (CUSTOMER_ID == 2) - -//是否使能需要psram的空间 -//#define PSRAM_HEAP -#define DEFAULT_SYS_CLK (120*1000000) -/************************************************************************* - * CUSTOM_SIZE要根据需求来配置,如果没有带psram,需要配合mjpeg空间以及节点配置 -**************************************************************************/ -#define CUSTOM_SIZE (60*1024) - -/*************************************************************************** */ -//VCAM是否能,部分io需要打开才能有输出,典型的是:DVP需要打开才能有输出 -#define VCAM_EN 1 -/***************************************************************************** */ - - -/***************************视频相关宏要打开********************************************************** */ -#define DVP_EN 1 //dvp镜头使能 -#define VPP_EN 1 //硬件vpp使能 -#define JPG_EN 1 //jpg硬件编码使能 -/*************************************************************************************************** */ - - - - - - -/************************************速率调整参数选择 ************************************************/ -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_ERSHAO -/************************************************************************************************** */ - - -/*****************************************wifi相关参数配置*********************************************************** */ -#define WIFI_RF_PWR_LEVEL 1 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 -/* 每1bit代表一种速率。每bit代表的格式: - * bit 0 : DSSS 1M - * bit 1 : DSSS 2M - * bit 2 : DSSS 5.5M - * bit 3 : DSSS 11M - * bit 4 : NON-HT 6M - * bit 5 : NON-HT 9M - * bit 6 : NON-HT 12M - * bit 7 : NON-HT 18M - * bit 8 : NON-HT 24M - * bit 9 : NON-HT 36M - * bit 10 : NON-HT 48M - * bit 11 : NON-HT 54M - * bit 12 : HT MCS0 - * bit 13 : HT MCS1 - * bit 14 : HT MCS2 - * bit 15 : HT MCS3 - * bit 16 : HT MCS4 - * bit 17 : HT MCS5 - * bit 18 : HT MCS6 - * bit 19 : HT MCS7 - */ -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 - -//设置AP的ip地址以及ip池 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -/************************************************************************************************************************************ */ - - - - - -/***********************************************IO配置,需要用到的IO配置需要在这里配置 **************************************/ - -//串口配置 -#define PIN_UART0_TX PA_12 -#define PIN_UART0_RX PA_13 - -//AT命令使用哪个串口 -#define ATCMD_UARTDEV HG_UART0_DEVID - - -//默认sdk匹配学习板,使用PC_2和PC_3作为dvp的i2c -#define PIN_IIC2_SCL PC_2 -#define PIN_IIC2_SDA PC_3 - - -//DVP的power down和reset引脚 -#define PIN_DVP_RESET 255 -#define PIN_DVP_PDN 255 -/*********************************************************************************************************************** */ - - - - -/**************************************DVP摄像头型号配置***************************************************************** */ -//如果sdk没有对应型号,需要自己去添加 -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 -/*********************************************************************************************************************** */ - - - - - -/*******************************************jpeg 空间分配,需要根据自己内存去配置,带psram和不带psram配置不一致************************************** */ - -//jpg0 -#define JPG0_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 1400 //8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40 //20//18//30*2 -#define JPG0_TAIL_RESERVER 0 - - -//jpg1 -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308 //2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40 //18//30*2 -#define JPG1_TAIL_RESERVER 0 -/****************************************************************************************************************************************** */ - - - -#elif (CUSTOMER_ID == 3) - -//是否使能需要psram的空间,注意,CUSTOM_SIZE需要根据需求使用(规则是在某个模式需求最大值就好了) -//#define PSRAM_HEAP -//#define CUSTOM_PSRAM_SIZE 500*1024 -#define CUSTOM_SIZE (60*1024) -#define DEFAULT_SYS_CLK (240*1000000) - -/*************************************************************************** */ -//VCAM是否能,部分io需要打开才能有输出,典型的是:DVP需要打开才能有输出 -#define VCAM_EN 1 -/***************************************************************************** */ - - -/***************************视频相关宏要打开********************************************************** */ -#define DVP_EN 1 //dvp镜头使能 -#define VPP_EN 1 //硬件vpp使能 -#define JPG_EN 1 //jpg硬件编码使能 -/*************************************************************************************************** */ - - - - - - -/************************************速率调整参数选择 ************************************************/ -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_HANGPAI -/************************************************************************************************** */ - - -/*****************************************wifi相关参数配置*********************************************************** */ -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 -/* 每1bit代表一种速率。每bit代表的格式: - * bit 0 : DSSS 1M - * bit 1 : DSSS 2M - * bit 2 : DSSS 5.5M - * bit 3 : DSSS 11M - * bit 4 : NON-HT 6M - * bit 5 : NON-HT 9M - * bit 6 : NON-HT 12M - * bit 7 : NON-HT 18M - * bit 8 : NON-HT 24M - * bit 9 : NON-HT 36M - * bit 10 : NON-HT 48M - * bit 11 : NON-HT 54M - * bit 12 : HT MCS0 - * bit 13 : HT MCS1 - * bit 14 : HT MCS2 - * bit 15 : HT MCS3 - * bit 16 : HT MCS4 - * bit 17 : HT MCS5 - * bit 18 : HT MCS6 - * bit 19 : HT MCS7 - */ -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 - -//设置AP的ip地址以及ip池 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -/************************************************************************************************************************************ */ - - - - - -/***********************************************IO配置,需要用到的IO配置需要在这里配置 **************************************/ - -//串口配置 -#define PIN_UART0_TX PA_12 -#define PIN_UART0_RX PA_13 - -//AT命令使用哪个串口 -#define ATCMD_UARTDEV HG_UART0_DEVID - - -//默认sdk匹配学习板,使用PC_2和PC_3作为dvp的i2c -#define PIN_IIC2_SCL PC_2 -#define PIN_IIC2_SDA PC_3 - - -//DVP的power down和reset引脚 -#define PIN_DVP_RESET 255 -#define PIN_DVP_PDN 255 -/*********************************************************************************************************************** */ - - - - -/**************************************DVP摄像头型号配置***************************************************************** */ -//如果sdk没有对应型号,需要自己去添加 -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 -/*********************************************************************************************************************** */ - - - - - -/*******************************************jpeg 空间分配,需要根据自己内存去配置,带psram和不带psram配置不一致************************************** */ - -//jpg0 -#define JPG0_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 1400 //8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40 //20//18//30*2 -#define JPG0_TAIL_RESERVER 0 - - -//jpg1 -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308 //2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40 //18//30*2 -#define JPG1_TAIL_RESERVER 0 -/****************************************************************************************************************************************** */ - -#elif (CUSTOMER_ID == 4) - - -//是否使能需要psram的空间,psram空间根据自己需求来分配 -#define PSRAM_HEAP -#define CUSTOM_PSRAM_SIZE 500*1024 -#define CUSTOM_SIZE (5*1024) -#define DEFAULT_SYS_CLK (240*1000000) - - - - -/***************************视频相关宏要打开********************************************************** */ -#define USB_EN 1 -#define USB_HOST_EN 1 - -#define RTT_USB_EN 1 //RTT USB 架构使能 (USB_EN打开) -#define RT_USBH_UVC -#define RT_USBH -/*************************************************************************************************** */ - - - - - - -/************************************速率调整参数选择 ************************************************/ -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_IPC -/************************************************************************************************** */ - - -/*****************************************wifi相关参数配置*********************************************************** */ -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 -/* 每1bit代表一种速率。每bit代表的格式: - * bit 0 : DSSS 1M - * bit 1 : DSSS 2M - * bit 2 : DSSS 5.5M - * bit 3 : DSSS 11M - * bit 4 : NON-HT 6M - * bit 5 : NON-HT 9M - * bit 6 : NON-HT 12M - * bit 7 : NON-HT 18M - * bit 8 : NON-HT 24M - * bit 9 : NON-HT 36M - * bit 10 : NON-HT 48M - * bit 11 : NON-HT 54M - * bit 12 : HT MCS0 - * bit 13 : HT MCS1 - * bit 14 : HT MCS2 - * bit 15 : HT MCS3 - * bit 16 : HT MCS4 - * bit 17 : HT MCS5 - * bit 18 : HT MCS6 - * bit 19 : HT MCS7 - */ -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 - -//设置AP的ip地址以及ip池 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -/************************************************************************************************************************************ */ - - - - - -/***********************************************IO配置,需要用到的IO配置需要在这里配置 **************************************/ - -//串口配置 -#define PIN_UART0_TX PA_12 -#define PIN_UART0_RX PA_13 - -//AT命令使用哪个串口 -#define ATCMD_UARTDEV HG_UART0_DEVID -/*********************************************************************************************************************** */ - -#elif (CUSTOMER_ID == 5) //是否使能需要psram的空间 //#define PSRAM_HEAP //#define CUSTOM_PSRAM_SIZE (2000*1024) @@ -977,6 +198,7 @@ #define DEV_SENSOR_XC7016_H63 1 #define DEV_SENSOR_XCG532 1 #define DEV_SENSOR_HI704 1 +#define DEV_SENSOR_SP0828 1 /*********************************************************************************************************************** */ @@ -1009,1535 +231,4 @@ #define JPG1_NODE 40 //18//30*2 #define JPG1_TAIL_RESERVER 0 -#elif (CUSTOMER_ID == 6) - -#define DEFAULT_SYS_CLK (240*1000000) - -#define USB_EN 0 -#define USB_HOST_EN 0 -#define MACBUS_USB -//#define USB_DEVICE_MASS_OR_UVC //使用rtt device架构需将此宏注释 -#define USBDISK 0 //1代表将sd卡作为u盘 2代表将flash作为usb盘,需要配合USB_EN使用,并且其他宏不能有冲突 - -/*=========== RTT USB架构宏定义 ==========*/ -#define RTT_USB_EN 0 //RTT USB 架构使能 (USB_EN打开) -#define USB_DETECT_EN 0 //USB 主从检测使能 (USB_HOST_EN关闭、USB_EN打开) -/*================== end =================*/ - - -#define BLE_PAIR_NET 0 -#define WIRELESS_PAIR_CODE 0 - -#define PRC_EN 0 -#define OF_EN 0 -#define DVP_EN 0 -#define VPP_EN DVP_EN -#define JPG_EN (1 || DVP_EN) -#define LCD_EN 1 -#define SCALE_EN 1 -#define SDH_EN 1 -#define FS_EN 1 -#define SD_SAVE (0&&SDH_EN&&FS_EN&&JPG_EN) - -#define VCAM_EN 1 - -#define OPENDML_EN 1 -#define UART_FLY_CTRL_EN 0 -#define PWM_EN 0 -#define KEY_MODULE_EN 1 -#define FLASHDISK_EN 1 -#define MP3_EN 1 -#define AMR_EN 1 -#define NET_PAIR 1 -#define PRINTER_EN 0 - -#define AUDIO_EN 0 -#define AUDIO_DAC_EN 0 -#define RTP_SOUND (0&&AUDIO_EN) - -#define MJPEG_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&JPG_EN) //基于框架的mjpeg录像 -#define UVC_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&USB_EN) //基于框架的uvc录像 - -#define DCDC_EN 1 //板子是否使用DCDC电路 -//低功耗demo -#define LOWPOWER_DEMO 0 - -#define BBM_DEMO 1 -///////////////wifi parameter//////////// -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 - -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -#define WIFI_FREQ_OFFSET_TRACK_MODE LMAC_FREQ_OFFSET_TRACK_ONLY_STA_ON -///////////////uart1//////////// -#define PIN_UART0_TX PA_7//PA_9 -#define PIN_UART0_RX PA_13 -#define ATCMD_UARTDEV HG_UART0_DEVID - -///////////////uart4//////////// -#define PIN_UART4_TX 255 -#define PIN_UART4_RX PA_3 - -#define PIN_PDM_MCLK PA_4 -#define PIN_PDM_DATA PA_3 - -#define PIN_IIS0_MCLK 255 -#define PIN_IIS0_BCLK PA_7 -#define PIN_IIS0_WCLK PA_8 -#define PIN_IIS0_DATA PA_5 - - -//新增加,由于新增加功能不全,暂时用宏隔离,保留旧的逻辑 -#define LVGL_STREAM_ENABLE 1 -///////////////LCD///////////// -//#define LCD_HX8282_EN 1 -//#define LCD_ST7789V_EN 1 -//#define LCD_ST7789V_MCU666_EN 1 -#define LCD_ST7789V_MCU565_EN 1 -//#define LCD_ST7701S_EN 1 -//#define LCD_GC9503V_EN 1 - - -#define PIN_LCD_RESET 255//255// - -#if LCD_GC9503V_EN -#define PIN_SPI0_CS PA_11//PA_13// -#define PIN_SPI0_CLK PA_8//PA_14// -#define PIN_SPI0_IO0 PC_5//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_11 -#define DE_ERD 255 -#define VS_CS PA_8 -#define HS_DC PC_5 -#define LCD_TE 255 -#else -#define PIN_SPI0_CS PA_8//PA_13// -#define PIN_SPI0_CLK PA_2//PA_14// -#define PIN_SPI0_IO0 PA_0//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_0 -#define DE_ERD PA_2 -#define VS_CS PC_5 -#define HS_DC PA_11 -#define LCD_TE 255 -#endif - -#if (LCD_ST7701S_EN == 1) -#define LCD_D0 PA_7 -#define LCD_D1 PA_1 -#define LCD_D2 PA_12 -#define LCD_D3 PA_13 -#define LCD_D4 PA_14 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 PA_4 -#define LCD_D9 PA_5 -#define LCD_D10 PA_6 -#define LCD_D11 PC_8 -#define LCD_D12 PC_9 -#define LCD_D13 PC_10 -#define LCD_D14 PC_11 -#define LCD_D15 PC_12 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#elif LCD_GC9503V_EN -#define LCD_D0 PC_8 //B0 -#define LCD_D1 PC_9 //B1 -#define LCD_D2 PC_10 //B2 -#define LCD_D3 PC_11 //B3 -#define LCD_D4 PC_12 //B4 -#define LCD_D5 PC_13 //B5 -#define LCD_D6 PC_14 //G0 -#define LCD_D7 PC_15 //G1 -#define LCD_D8 PA_4 //G2 -#define LCD_D9 PA_5 //G3 -#define LCD_D10 PA_6 //G4 -#define LCD_D11 PA_7 //G5 -#define LCD_D12 PA_1 //R0 -#define LCD_D13 PA_12 //R1 -#define LCD_D14 PA_13 //R2 -#define LCD_D15 PA_14 //R3 -#define LCD_D16 PA_2 //R4 -#define LCD_D17 PA_0 //R5 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#else -#define LCD_D0 PC_8 -#define LCD_D1 PC_9 -#define LCD_D2 PC_10 -#define LCD_D3 PC_11 -#define LCD_D4 PC_12 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 255 -#define LCD_D9 255 -#define LCD_D10 255 -#define LCD_D11 255 -#define LCD_D12 255 -#define LCD_D13 255 -#define LCD_D14 255 -#define LCD_D15 255 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#endif - -#define SDH_I2C2_REUSE (0 && DVP_EN && SDH_EN) - -/*---------------------------------------*/ -/*---------SDH PIN DEFINITION------------*/ -/*---------------------------------------*/ - -#define PIN_SDH_CLK PC_4//PC_2// -#define PIN_SDH_CMD PC_3//PC_3// -#define PIN_SDH_DAT0 PC_2//PC_4// -#define PIN_SDH_DAT1 255 -#define PIN_SDH_DAT2 255 -#define PIN_SDH_DAT3 255 - -///////////////IIC2///////////// -#define PIN_IIC2_SCL PC_2//PA_11// -#define PIN_IIC2_SDA PC_3//PA_8// - -#define PIN_IIC1_SCL PA_13 -#define PIN_IIC1_SDA PA_12 - -#define MOTO_AIN1_PIN PB_7 -#define MOTO_AIN2_PIN PB_6 -#define MOTO_BIN1_PIN PC_0 -#define MOTO_BIN2_PIN PC_1 - -#define PIN_PWM_CHANNEL_0 MOTO_AIN1_PIN -#define PIN_PWM_CHANNEL_1 MOTO_AIN2_PIN -#define PIN_PWM_CHANNEL_2 MOTO_BIN1_PIN -#define PIN_PWM_CHANNEL_3 MOTO_BIN2_PIN -#define PIN_PWM_CHANNEL_4 255 - -#define PIN_SPI_PDN 0 - -///////////////DVP////////////// -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 - -#define PIN_DVP_RESET 255//PA_12// -#define PIN_DVP_PDN 255 - -//////////////SET QC///////////////////////////// -#define NET_TO_QC 0 -#define QC_STA_NAME "BGN_test" -#define QC_STA_PW "12345678" -#define QC_SCAN_TIME 200 //ms -#define QC_SCAN_CNT 10 //total time = QC_SCAN_TIME*QC_SCAN_CNT -#define QC_SCAN_CHANNEL 0x010 //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG_NODE 40//18//30*2 -#define JPG_TAIL_RESERVER 0 - -#define JPG0_HEAD_RESERVER 0//0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 2616//8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40//20//18//30*2 -#define JPG0_TAIL_RESERVER 8 - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40//18//30*2 -#define JPG1_TAIL_RESERVER 0 - -//设定自定义空间,前提heap要足够,main的时候会从heap申请这样一大片空间分配到custom_malloc中 -//空间组成大概是 jpg空间+csi空间(VGA 30kB)+ 其他模块的空间 -//系统尽量留有20K左右,防止其他地方malloc申请不到 - -//#define VCAM_33 - -#define CUSTOM_PSRAM_SIZE 1000*1024 -#define PSRAM_HEAP //如果需要psram当作heap,需要打开这个宏 - -//速率调整参数选择,默认是耳勺 -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_BABYMPNITOR - -#if (RATE_CONTROL_SELECT == RATE_CONTROL_BABYMPNITOR) -//#define WIFI_TX_MAX_RETRY 5 //最大传输次数,范围为1~31 -#endif - -//是能5m/20m共存和自动带宽切换, -#define WIFI_FEM_CHIP LMAC_FEM_GSR2401C -#define LMAC_BGN_PCF - -///////////////ble enable//////////// -#define BLE_SUPPORT 1 -#define BLE_METER_TEST_EN 0 - -#elif (CUSTOMER_ID==7) - -#define DEFAULT_SYS_CLK (240*1000000) - -#define USB_EN 0 -#define USB_HOST_EN 0 -#define MACBUS_USB -//#define USB_DEVICE_MASS_OR_UVC //使用rtt device架构需将此宏注释 -#define USBDISK 0 //1代表将sd卡作为u盘 2代表将flash作为usb盘,需要配合USB_EN使用,并且其他宏不能有冲突 - -/*=========== RTT USB架构宏定义 ==========*/ -#define RTT_USB_EN 0 //RTT USB 架构使能 (USB_EN打开) -#define USB_DETECT_EN 0 //USB 主从检测使能 (USB_HOST_EN关闭、USB_EN打开) -/*================== end =================*/ - - -#define BLE_PAIR_NET 0 -#define WIRELESS_PAIR_CODE 0 - -#define PRC_EN 0 -#define OF_EN 0 -#define DVP_EN 1 -#define VPP_EN DVP_EN -#define JPG_EN (1 || DVP_EN) -#define LCD_EN 0 -#define SCALE_EN 0 -#define SDH_EN 0 -#define FS_EN 0 -#define SD_SAVE (0&&SDH_EN&&FS_EN&&JPG_EN) - -#define VCAM_EN (0 || DVP_EN) - -#define OPENDML_EN 0 -#define UART_FLY_CTRL_EN 0 -#define PWM_EN 0 -#define KEY_MODULE_EN 1 -#define FLASHDISK_EN 1 -#define MP3_EN 1 -#define AMR_EN 1 -#define NET_PAIR 1 -#define PRINTER_EN 0 - - -#define AUDIO_EN 1 -#define AUDIO_DAC_EN 1 -#define RTP_SOUND (1&&AUDIO_EN) - -#define MJPEG_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&JPG_EN) //基于框架的mjpeg录像 -#define UVC_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&USB_EN) //基于框架的uvc录像 - -#define DCDC_EN 1 //板子是否使用DCDC电路 -//低功耗demo -#define LOWPOWER_DEMO 0 - -#define BBM_DEMO 1 - -///////////////wifi parameter//////////// -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 - -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -#define WIFI_FREQ_OFFSET_TRACK_MODE LMAC_FREQ_OFFSET_TRACK_ONLY_STA_ON -///////////////uart1//////////// -#define PIN_UART0_TX PC_6//PA_9 -#define PIN_UART0_RX PC_7 -#define ATCMD_UARTDEV HG_UART0_DEVID - -///////////////uart4//////////// -#define PIN_UART4_TX 255 -#define PIN_UART4_RX PA_3 - -#define PIN_PDM_MCLK PA_4 -#define PIN_PDM_DATA PA_3 - -#define PIN_IIS0_MCLK 255 -#define PIN_IIS0_BCLK PA_7 -#define PIN_IIS0_WCLK PA_8 -#define PIN_IIS0_DATA PA_5 - -//新增加,由于新增加功能不全,暂时用宏隔离,保留旧的逻辑 -#define LVGL_STREAM_ENABLE 0 -///////////////LCD///////////// -//#define LCD_HX8282_EN 1 -//#define LCD_ST7789V_EN 1 -//#define LCD_ST7789V_MCU666_EN 1 -#define LCD_ST7789V_MCU565_EN 1 -//#define LCD_ST7701S_EN 1 -//#define LCD_GC9503V_EN 1 - - -#define PIN_LCD_RESET 255//255// - -#if LCD_GC9503V_EN -#define PIN_SPI0_CS PA_11//PA_13// -#define PIN_SPI0_CLK PA_8//PA_14// -#define PIN_SPI0_IO0 PC_5//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_11 -#define DE_ERD 255 -#define VS_CS PA_8 -#define HS_DC PC_5 -#define LCD_TE 255 -#else -#define PIN_SPI0_CS PA_8//PA_13// -#define PIN_SPI0_CLK PA_2//PA_14// -#define PIN_SPI0_IO0 PA_0//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_0 -#define DE_ERD PA_2 -#define VS_CS PC_5 -#define HS_DC PA_11 -#define LCD_TE 255 -#endif - -#if (LCD_ST7701S_EN == 1) -#define LCD_D0 PA_7 -#define LCD_D1 PA_1 -#define LCD_D2 PA_12 -#define LCD_D3 PA_13 -#define LCD_D4 PA_14 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 PA_4 -#define LCD_D9 PA_5 -#define LCD_D10 PA_6 -#define LCD_D11 PC_8 -#define LCD_D12 PC_9 -#define LCD_D13 PC_10 -#define LCD_D14 PC_11 -#define LCD_D15 PC_12 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#elif LCD_GC9503V_EN -#define LCD_D0 PC_8 //B0 -#define LCD_D1 PC_9 //B1 -#define LCD_D2 PC_10 //B2 -#define LCD_D3 PC_11 //B3 -#define LCD_D4 PC_12 //B4 -#define LCD_D5 PC_13 //B5 -#define LCD_D6 PC_14 //G0 -#define LCD_D7 PC_15 //G1 -#define LCD_D8 PA_4 //G2 -#define LCD_D9 PA_5 //G3 -#define LCD_D10 PA_6 //G4 -#define LCD_D11 PA_7 //G5 -#define LCD_D12 PA_1 //R0 -#define LCD_D13 PA_12 //R1 -#define LCD_D14 PA_13 //R2 -#define LCD_D15 PA_14 //R3 -#define LCD_D16 PA_2 //R4 -#define LCD_D17 PA_0 //R5 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#else -#define LCD_D0 PC_8 -#define LCD_D1 PC_9 -#define LCD_D2 PC_10 -#define LCD_D3 PC_11 -#define LCD_D4 PC_12 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 255 -#define LCD_D9 255 -#define LCD_D10 255 -#define LCD_D11 255 -#define LCD_D12 255 -#define LCD_D13 255 -#define LCD_D14 255 -#define LCD_D15 255 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#endif - -#define SDH_I2C2_REUSE (0 && DVP_EN && SDH_EN) - -/*---------------------------------------*/ -/*---------SDH PIN DEFINITION------------*/ -/*---------------------------------------*/ - -#define PIN_SDH_CLK PC_4//PC_2// -#define PIN_SDH_CMD PC_3//PC_3// -#define PIN_SDH_DAT0 PC_2//PC_4// -#define PIN_SDH_DAT1 255 -#define PIN_SDH_DAT2 255 -#define PIN_SDH_DAT3 255 - -///////////////IIC2///////////// -#define PIN_IIC2_SCL PC_2//PA_11// -#define PIN_IIC2_SDA PC_3//PA_8// - -#define PIN_IIC1_SCL PA_13 -#define PIN_IIC1_SDA PA_12 - -#define MOTO_AIN1_PIN PB_7 -#define MOTO_AIN2_PIN PB_6 -#define MOTO_BIN1_PIN PC_0 -#define MOTO_BIN2_PIN PC_1 - - -#define PIN_PWM_CHANNEL_0 MOTO_AIN1_PIN -#define PIN_PWM_CHANNEL_1 MOTO_AIN2_PIN -#define PIN_PWM_CHANNEL_2 MOTO_BIN1_PIN -#define PIN_PWM_CHANNEL_3 MOTO_BIN2_PIN -#define PIN_PWM_CHANNEL_4 255 - -#define PIN_SPI_PDN 0 - -///////////////DVP////////////// -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 - -#define PIN_DVP_RESET 255//PA_12// -#define PIN_DVP_PDN 255 - -//////////////SET QC///////////////////////////// -#define NET_TO_QC 0 -#define QC_STA_NAME "BGN_test" -#define QC_STA_PW "12345678" -#define QC_SCAN_TIME 200 //ms -#define QC_SCAN_CNT 10 //total time = QC_SCAN_TIME*QC_SCAN_CNT -#define QC_SCAN_CHANNEL 0x010 //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG_NODE 40//18//30*2 -#define JPG_TAIL_RESERVER 0 - -#define JPG0_HEAD_RESERVER 0//0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 2616//8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40//20//18//30*2 -#define JPG0_TAIL_RESERVER 8 - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40//18//30*2 -#define JPG1_TAIL_RESERVER 0 - -//设定自定义空间,前提heap要足够,main的时候会从heap申请这样一大片空间分配到custom_malloc中 -//空间组成大概是 jpg空间+csi空间(VGA 30kB)+ 其他模块的空间 -//系统尽量留有20K左右,防止其他地方malloc申请不到 - -//#define VCAM_33 - -//#define WIFI_BRIDGE_EN 1 -//#define WIFI_BRIDGE_DEV HG_GMAC_DEVID - -#define CUSTOM_PSRAM_SIZE 500*1024 -#define PSRAM_HEAP //如果需要psram当作heap,需要打开这个宏 - -//速率调整参数选择,默认是耳勺 -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_BABYMPNITOR - -#if (RATE_CONTROL_SELECT == RATE_CONTROL_BABYMPNITOR) -//#define WIFI_TX_MAX_RETRY 5 //最大传输次数,范围为1~31 -#endif - -//是能5m/20m共存和自动带宽切换, -#define WIFI_FEM_CHIP LMAC_FEM_GSR2401C -#define LMAC_BGN_PCF - -///////////////ble enable//////////// -#define BLE_SUPPORT 1 -#define BLE_METER_TEST_EN 0 - -#elif (CUSTOMER_ID==8) - -#define DEFAULT_SYS_CLK (240*1000000) - -#define USB_EN 0 -#define USB_HOST_EN 0 -#define MACBUS_USB -//#define USB_DEVICE_MASS_OR_UVC //使用rtt device架构需将此宏注释 -#define USBDISK 0 //1代表将sd卡作为u盘 2代表将flash作为usb盘,需要配合USB_EN使用,并且其他宏不能有冲突 - -/*=========== RTT USB架构宏定义 ==========*/ -#define RTT_USB_EN 0 //RTT USB 架构使能 (USB_EN打开) -#define USB_DETECT_EN 0 //USB 主从检测使能 (USB_HOST_EN关闭、USB_EN打开) -/*================== end =================*/ - - -#define BLE_PAIR_NET 0 -#define WIRELESS_PAIR_CODE 0 - -#define PRC_EN 1 -#define OF_EN 0 -#define DVP_EN 1 -#define VPP_EN DVP_EN -#define JPG_EN (1 || DVP_EN) -#define LCD_EN 1 -#define SCALE_EN 1 -#define SDH_EN 0 -#define FS_EN 0 -#define SD_SAVE (0&&SDH_EN&&FS_EN&&JPG_EN) - -#define VCAM_EN 1 - -#define OPENDML_EN 0 -#define UART_FLY_CTRL_EN 0 -#define PWM_EN 0 -#define KEY_MODULE_EN 1 -#define FLASHDISK_EN 1 -#define MP3_EN 1 -#define AMR_EN 1 -#define NET_PAIR 1 -#define PRINTER_EN 0 - - -#define AUDIO_EN 1 -#define AUDIO_DAC_EN 1 -#define RTP_SOUND (1&&AUDIO_EN) - -#define MJPEG_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&JPG_EN) //基于框架的mjpeg录像 -#define UVC_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&USB_EN) //基于框架的uvc录像 - -#define DCDC_EN 1 //板子是否使用DCDC电路 -//低功耗demo -#define LOWPOWER_DEMO 0 - -///////////////wifi parameter//////////// -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 - -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -#define WIFI_FREQ_OFFSET_TRACK_MODE LMAC_FREQ_OFFSET_TRACK_ONLY_STA_ON -///////////////uart1//////////// -#define PIN_UART0_TX PA_7//PA_9 -#define PIN_UART0_RX PA_13 -#define ATCMD_UARTDEV HG_UART0_DEVID - -///////////////uart4//////////// -#define PIN_UART4_TX 255 -#define PIN_UART4_RX PA_3 - -#define PIN_PDM_MCLK PA_4 -#define PIN_PDM_DATA PA_3 - -#define PIN_IIS0_MCLK 255 -#define PIN_IIS0_BCLK PA_7 -#define PIN_IIS0_WCLK PA_8 -#define PIN_IIS0_DATA PA_5 - -//新增加,由于新增加功能不全,暂时用宏隔离,保留旧的逻辑 -#define LVGL_STREAM_ENABLE 1 -///////////////LCD///////////// -//#define LCD_HX8282_EN 1 -//#define LCD_ST7789V_EN 1 -//#define LCD_ST7789V_MCU666_EN 1 -#define LCD_ST7789V_MCU565_EN 1 -//#define LCD_ST7701S_EN 1 -//#define LCD_GC9503V_EN 1 - - -#define PIN_LCD_RESET 255//255// - -#if LCD_GC9503V_EN -#define PIN_SPI0_CS PA_11//PA_13// -#define PIN_SPI0_CLK PA_8//PA_14// -#define PIN_SPI0_IO0 PC_5//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_11 -#define DE_ERD 255 -#define VS_CS PA_8 -#define HS_DC PC_5 -#define LCD_TE 255 -#else -#define PIN_SPI0_CS PA_8//PA_13// -#define PIN_SPI0_CLK PA_2//PA_14// -#define PIN_SPI0_IO0 PA_0//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_0 -#define DE_ERD PA_2 -#define VS_CS PC_5 -#define HS_DC PA_11 -#define LCD_TE 255 -#endif - -#if (LCD_ST7701S_EN == 1) -#define LCD_D0 PA_7 -#define LCD_D1 PA_1 -#define LCD_D2 PA_12 -#define LCD_D3 PA_13 -#define LCD_D4 PA_14 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 PA_4 -#define LCD_D9 PA_5 -#define LCD_D10 PA_6 -#define LCD_D11 PC_8 -#define LCD_D12 PC_9 -#define LCD_D13 PC_10 -#define LCD_D14 PC_11 -#define LCD_D15 PC_12 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#elif LCD_GC9503V_EN -#define LCD_D0 PC_8 //B0 -#define LCD_D1 PC_9 //B1 -#define LCD_D2 PC_10 //B2 -#define LCD_D3 PC_11 //B3 -#define LCD_D4 PC_12 //B4 -#define LCD_D5 PC_13 //B5 -#define LCD_D6 PC_14 //G0 -#define LCD_D7 PC_15 //G1 -#define LCD_D8 PA_4 //G2 -#define LCD_D9 PA_5 //G3 -#define LCD_D10 PA_6 //G4 -#define LCD_D11 PA_7 //G5 -#define LCD_D12 PA_1 //R0 -#define LCD_D13 PA_12 //R1 -#define LCD_D14 PA_13 //R2 -#define LCD_D15 PA_14 //R3 -#define LCD_D16 PA_2 //R4 -#define LCD_D17 PA_0 //R5 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#else -#define LCD_D0 PC_8 -#define LCD_D1 PC_9 -#define LCD_D2 PC_10 -#define LCD_D3 PC_11 -#define LCD_D4 PC_12 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 255 -#define LCD_D9 255 -#define LCD_D10 255 -#define LCD_D11 255 -#define LCD_D12 255 -#define LCD_D13 255 -#define LCD_D14 255 -#define LCD_D15 255 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#endif - -#define SDH_I2C2_REUSE (0 && DVP_EN && SDH_EN) - -/*---------------------------------------*/ -/*---------SDH PIN DEFINITION------------*/ -/*---------------------------------------*/ - -#define PIN_SDH_CLK PC_4//PC_2// -#define PIN_SDH_CMD PC_3//PC_3// -#define PIN_SDH_DAT0 PC_2//PC_4// -#define PIN_SDH_DAT1 255 -#define PIN_SDH_DAT2 255 -#define PIN_SDH_DAT3 255 - -///////////////IIC2///////////// -#define PIN_IIC2_SCL PC_2//PA_11// -#define PIN_IIC2_SDA PC_3//PA_8// - -#define PIN_IIC1_SCL PA_13 -#define PIN_IIC1_SDA PA_12 - -#define MOTO_AIN1_PIN PB_7 -#define MOTO_AIN2_PIN PB_6 -#define MOTO_BIN1_PIN PC_0 -#define MOTO_BIN2_PIN PC_1 - - -#define PIN_PWM_CHANNEL_0 MOTO_AIN1_PIN -#define PIN_PWM_CHANNEL_1 MOTO_AIN2_PIN -#define PIN_PWM_CHANNEL_2 MOTO_BIN1_PIN -#define PIN_PWM_CHANNEL_3 MOTO_BIN2_PIN -#define PIN_PWM_CHANNEL_4 255 - -#define PIN_SPI_PDN 0 - -///////////////DVP////////////// -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 - -#define PIN_DVP_RESET 255//PA_12// -#define PIN_DVP_PDN 255 - -//////////////SET QC///////////////////////////// -#define NET_TO_QC 0 -#define QC_STA_NAME "BGN_test" -#define QC_STA_PW "12345678" -#define QC_SCAN_TIME 200 //ms -#define QC_SCAN_CNT 10 //total time = QC_SCAN_TIME*QC_SCAN_CNT -#define QC_SCAN_CHANNEL 0x010 //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG_NODE 40//18//30*2 -#define JPG_TAIL_RESERVER 0 - -#define JPG0_HEAD_RESERVER 0//0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 2616//8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40//20//18//30*2 -#define JPG0_TAIL_RESERVER 8 - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40//18//30*2 -#define JPG1_TAIL_RESERVER 0 - -//设定自定义空间,前提heap要足够,main的时候会从heap申请这样一大片空间分配到custom_malloc中 -//空间组成大概是 jpg空间+csi空间(VGA 30kB)+ 其他模块的空间 -//系统尽量留有20K左右,防止其他地方malloc申请不到 - -//#define VCAM_33 - -//#define WIFI_BRIDGE_EN 1 -//#define WIFI_BRIDGE_DEV HG_GMAC_DEVID - -#define CUSTOM_PSRAM_SIZE 1500*1024 -#define PSRAM_HEAP //如果需要psram当作heap,需要打开这个宏 - -//速率调整参数选择,默认是耳勺 -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_BABYMPNITOR - -#if (RATE_CONTROL_SELECT == RATE_CONTROL_BABYMPNITOR) -//#define WIFI_TX_MAX_RETRY 5 //最大传输次数,范围为1~31 -#endif - -//是能5m/20m共存和自动带宽切换, -#define WIFI_FEM_CHIP LMAC_FEM_GSR2401C -#define LMAC_BGN_PCF - -///////////////ble enable//////////// -#define BLE_SUPPORT 1 -#define BLE_METER_TEST_EN 0 - - -#elif (CUSTOMER_ID == 9) -//是否使能需要psram的空间 -#define PSRAM_HEAP -#define CUSTOM_PSRAM_SIZE (2000*1024) -#define CUSTOM_SIZE (50*1024) -#define DEFAULT_SYS_CLK (240*1000000) - -/*************************************************************************** */ -//VCAM是否能,部分io需要打开才能有输出,典型的是:DVP需要打开才能有输出 -#define VCAM_EN 1 -/***************************************************************************** */ - - -/**************************************按键配置******************************************************** */ -#define KEY_MODULE_EN 1 -/*************************************************************************************************** */ - - -/***************************视频相关宏要打开********************************************************** */ -#define USB_EN 1 -#define USB_HOST_EN 1 - -#define RTT_USB_EN 1 //RTT USB 架构使能 (USB_EN打开) -#define RT_USBH_UVC -#define RT_USBH -/*************************************************************************************************** */ - - -/**********************************sd卡配置*********************************************************** */ -#define SDH_EN 1 -#define FS_EN 1 -/*************************************************************************************************** */ - -/***************************视频相关宏要打开********************************************************** */ -#define VPP_EN 1 //硬件vpp使能 -#define JPG_EN 1 //jpg硬件编码解码使能 -#define PRC_EN 1 //prc,支持重新编码 -#define SCALE_EN 1 //解码需要,拉伸需要 -/*************************************************************************************************** */ - -/**********************************************音频相关********************************************* */ -#define AUDIO_EN 1 -#define AUDIO_DAC_EN 1 -/************************************************************************************************** */ - - -/**********************************************MCU屏驱动配置************************************************************* */ -#define LCD_EN 1 -#define LVGL_STREAM_ENABLE 1 -#define LCD_ST7789V_MCU565_EN 1 - - -/************************************************************************************************************************* */ - - - - -/************************************速率调整参数选择 ************************************************/ -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_IPC -/************************************************************************************************** */ - - -/*****************************************wifi相关参数配置*********************************************************** */ -#define WIFI_RF_PWR_LEVEL 1 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 -/* 每1bit代表一种速率。每bit代表的格式: - * bit 0 : DSSS 1M - * bit 1 : DSSS 2M - * bit 2 : DSSS 5.5M - * bit 3 : DSSS 11M - * bit 4 : NON-HT 6M - * bit 5 : NON-HT 9M - * bit 6 : NON-HT 12M - * bit 7 : NON-HT 18M - * bit 8 : NON-HT 24M - * bit 9 : NON-HT 36M - * bit 10 : NON-HT 48M - * bit 11 : NON-HT 54M - * bit 12 : HT MCS0 - * bit 13 : HT MCS1 - * bit 14 : HT MCS2 - * bit 15 : HT MCS3 - * bit 16 : HT MCS4 - * bit 17 : HT MCS5 - * bit 18 : HT MCS6 - * bit 19 : HT MCS7 - */ - -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 - -//设置AP的ip地址以及ip池 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -/************************************************************************************************************************************ */ - - - - - -/***********************************************IO配置,需要用到的IO配置需要在这里配置 **************************************/ - -//串口配置 -#define PIN_UART0_TX PA_12 -#define PIN_UART0_RX PA_13 - -//AT命令使用哪个串口 -#define ATCMD_UARTDEV HG_UART0_DEVID - - -//sd卡的io -#define PIN_SDH_CLK PC_4//PC_2// -#define PIN_SDH_CMD PC_3//PC_3// -#define PIN_SDH_DAT0 PC_2//PC_4// -#define PIN_SDH_DAT1 255 -#define PIN_SDH_DAT2 255 -#define PIN_SDH_DAT3 255 - - -//LCD的io -#define PIN_LCD_RESET 255//255// - -#define DOTCLK_RWR PA_0 -#define DE_ERD PA_2 -#define VS_CS PC_5 -#define HS_DC PA_11 -#define LCD_TE 255 - - -#define LCD_D0 PC_8 -#define LCD_D1 PC_9 -#define LCD_D2 PC_10 -#define LCD_D3 PC_11 -#define LCD_D4 PC_12 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 255 -#define LCD_D9 255 -#define LCD_D10 255 -#define LCD_D11 255 -#define LCD_D12 255 -#define LCD_D13 255 -#define LCD_D14 255 -#define LCD_D15 255 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 - - -#define PIN_SPI_PDN 255 - - -/*********************************************************************************************************************** */ - - - - - - - - -/*******************************************jpeg 空间分配,需要根据自己内存去配置,带psram和不带psram配置不一致************************************** */ - -//jpg0,注意如果带psram,jpg0_buf_len可以设置4096,如果是sram,则要改成1400左右 -#define JPG0_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 4096 //8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40 //20//18//30*2 -#define JPG0_TAIL_RESERVER 0 - - -//jpg1 -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308 //2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40 //18//30*2 -#define JPG1_TAIL_RESERVER 0 -/****************************************************************************************************************************************** */ -#elif (CUSTOMER_ID == 10) - -#define DEFAULT_SYS_CLK (240*1000000) - -#define USB_EN 1 -#define USB_HOST_EN 1 -#define MACBUS_USB -#define USB_DEVICE_MASS_OR_UVC //使用rtt device架构需将此宏注释 -#define USBDISK 1 //1代表将sd卡作为u盘 2代表将flash作为usb盘,需要配合USB_EN使用,并且其他宏不能有冲突 - -/*=========== RTT USB架构宏定义 ==========*/ -#define RTT_USB_EN 0 //RTT USB 架构使能 (USB_EN打开) -#define USB_DETECT_EN 0 //USB 主从检测使能 (USB_HOST_EN关闭、USB_EN打开) - -/* USB HOST */ - -//#define RT_USBH //RTT USB HOST 使能 - -// #define RT_USBH_CDC -// #define RT_USBH_UVC -// #define RT_USBH_UAC -// #define RT_USBH_WIRELESS -// #define RT_USBH_VENDOR_QUECTEL -// #define RT_USBH_VENDOR_CHINAMOBILE -// #define RT_USBH_MSTORAGE - -/* USB DEVICE */ - -//#define RT_USING_USB_DEVICE //RTT USB DEVICE 使能 - -//#define RT_USB_DEVICE_COMPOSITE //USB DEVICE 复合设备使能 - -// #define RT_USB_DEVICE_CDC -// #define RT_USB_DEVICE_AUDIO_MIC -// #define RT_USB_DEVICE_AUDIO_SPEAKER -// #define RT_USB_DEVICE_MSTORAGE -// #define RT_USB_DEVICE_VIDEO -// #define RT_USB_DEVICE_RNDIS -// #define RT_USB_DEVICE_HID -// #define RT_USB_DEVICE_WINUSB - -/*================== end =================*/ - -/*============== WPA3宏定义 ==============*/ -#define WIFI_MODULE_80211W_EN 1 -#define CONFIG_IEEE80211W -#define CONFIG_SAE -#define CONFIG_OWE -#define WPA_CRYPTO_OPS 1 - -#define BLE_PAIR_NET 0 -#define WIRELESS_PAIR_CODE 0 - -#define PRC_EN 0 -#define OF_EN 0 -#define DVP_EN 0 -#define VPP_EN DVP_EN -#define JPG_EN (1 && DVP_EN) -#define LCD_EN 0 -#define SCALE_EN 0 -#define SDH_EN 0 -#define FS_EN 0 -#define SD_SAVE (0&&SDH_EN&&FS_EN&&JPG_EN) - -#define VCAM_EN (1 || DVP_EN) - -#define OPENDML_EN 1 -#define UART_FLY_CTRL_EN 0 -#define PWM_EN 0 -#define KEY_MODULE_EN 1 -#define FLASHDISK_EN 1 -#define MP3_EN 1 -#define AMR_EN 1 -#define NET_PAIR 1 -#define PRINTER_EN 0 - - -#define AUDIO_EN 1 -#define AUDIO_DAC_EN 1 -#define RTP_SOUND (1&&AUDIO_EN) - -#define MJPEG_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&JPG_EN) //基于框架的mjpeg录像 -#define UVC_VIDEO (1 &&OPENDML_EN&&FS_EN&&SDH_EN&&USB_EN) //基于框架的uvc录像 - -#define DCDC_EN 1 //板子是否使用DCDC电路 -//低功耗demo -#define LOWPOWER_DEMO 0 - -///////////////wifi parameter//////////// -#define WIFI_RF_PWR_LEVEL 0 //选择WIFI功率。0:普通功率;1:比0的功率小;2:比1更小;10:大电流 -#define WIFI_RTS_THRESHOLD 1600 //RTS阈值,2304等效于不用RTS -#define WIFI_RTS_MAX_RETRY 2 //RTS重试次数,范围为2~16 -#define WIFI_TX_MAX_RETRY 7 //最大传输次数,范围为1~31 -#define WIFI_TX_MAX_POWER 7 //TX最大发射功率,有0~7档 -/* 每1bit代表一种速率。每bit代表的格式: - * bit 0 : DSSS 1M - * bit 1 : DSSS 2M - * bit 2 : DSSS 5.5M - * bit 3 : DSSS 11M - * bit 4 : NON-HT 6M - * bit 5 : NON-HT 9M - * bit 6 : NON-HT 12M - * bit 7 : NON-HT 18M - * bit 8 : NON-HT 24M - * bit 9 : NON-HT 36M - * bit 10 : NON-HT 48M - * bit 11 : NON-HT 54M - * bit 12 : HT MCS0 - * bit 13 : HT MCS1 - * bit 14 : HT MCS2 - * bit 15 : HT MCS3 - * bit 16 : HT MCS4 - * bit 17 : HT MCS5 - * bit 18 : HT MCS6 - * bit 19 : HT MCS7 - */ -#define WIFI_TX_SUPP_RATE 0x0FFFFF //TX速率支持,每1bit对应一种速率 -#define WIFI_MAX_STA_CNT 8 //最多连接sta的数量。有效值为1~8 -#define WIFI_MULICAST_RETRY 0 //组播帧传输次数 -#define WIFI_ACS_CHAN_LISTS 0x03FF //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) -#define WIFI_ACS_SCAN_TIME 150 //每个信道的扫描时间,单位ms -#define WIFI_MAX_PS_CNT 30 //底层为休眠sta缓存的帧最大数量。0代表sta休眠由umac全程管理,底层不缓存 -#define CHANNEL_DEFAULT 0 -#define SSID_DEFAULT "HG-WIFI_" -#define WIFI_TX_DUTY_CYCLE 80 //tx发送占空比,单位是%,范围是0~100 -#define WIFI_SSID_FILTER_EN 0 //是否使能SSID过滤功能。使能后,只有隐藏SSID和指定SSID的beacon才会上传 -#define WIFI_PREVENT_PS_MODE_EN 1 //是否尽可能的阻止sta进入休眠 -#define IP_ADDR_DEFAULT 0x0101A8C0 //192.168.1.1 -#define NET_MASK_DEFAULT 0x00FFFFFF //255.255.255.0 -#define GW_IP_DEFAULT 0x0101A8C0 //192.168.1.1 -#define DHCP_START_IP_DEFAULT 0x6401A8C0 //192.168.1.100 -#define DHCP_END_IP_DEFAULT 0xFE01A8C0 //192.168.1.254 -///////////////uart1//////////// -#define PIN_UART0_TX PA_12//PA_9 -#define PIN_UART0_RX PA_13 -#define ATCMD_UARTDEV HG_UART0_DEVID - - -///////////////uart4//////////// -#define PIN_UART4_TX 255 -#define PIN_UART4_RX PA_3 - -#define PIN_PDM_MCLK PA_4 -#define PIN_PDM_DATA PA_3 - -#define PIN_IIS0_MCLK 255 -#define PIN_IIS0_BCLK PA_7 -#define PIN_IIS0_WCLK PA_8 -#define PIN_IIS0_DATA PA_5 - - -//新增加,由于新增加功能不全,暂时用宏隔离,保留旧的逻辑 -#define LVGL_STREAM_ENABLE 0 -///////////////LCD///////////// -//#define LCD_HX8282_EN 1 -//#define LCD_ST7789V_EN 1 -//#define LCD_ST7789V_MCU666_EN 1 -#define LCD_ST7789V_MCU565_EN 1 -//#define LCD_ST7701S_EN 1 -//#define LCD_GC9503V_EN 1 - - -#define PIN_LCD_RESET 255//255// - -#if LCD_GC9503V_EN -#define PIN_SPI0_CS PA_11//PA_13// -#define PIN_SPI0_CLK PA_8//PA_14// -#define PIN_SPI0_IO0 PC_5//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_11 -#define DE_ERD 255 -#define VS_CS PA_8 -#define HS_DC PC_5 -#define LCD_TE 255 -#else -#define PIN_SPI0_CS PA_8//PA_13// -#define PIN_SPI0_CLK PA_2//PA_14// -#define PIN_SPI0_IO0 PA_0//PE_3// -#define PIN_SPI0_IO1 255 -#define PIN_SPI0_IO2 255 -#define PIN_SPI0_IO3 255 - -#define DOTCLK_RWR PA_0 -#define DE_ERD PA_2 -#define VS_CS PC_5 -#define HS_DC PA_11 -#define LCD_TE 255 -#endif - -#if (LCD_ST7701S_EN == 1) -#define LCD_D0 PA_7 -#define LCD_D1 PA_1 -#define LCD_D2 PA_12 -#define LCD_D3 PA_13 -#define LCD_D4 PA_14 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 PA_4 -#define LCD_D9 PA_5 -#define LCD_D10 PA_6 -#define LCD_D11 PC_8 -#define LCD_D12 PC_9 -#define LCD_D13 PC_10 -#define LCD_D14 PC_11 -#define LCD_D15 PC_12 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#elif LCD_GC9503V_EN -#define LCD_D0 PC_8 //B0 -#define LCD_D1 PC_9 //B1 -#define LCD_D2 PC_10 //B2 -#define LCD_D3 PC_11 //B3 -#define LCD_D4 PC_12 //B4 -#define LCD_D5 PC_13 //B5 -#define LCD_D6 PC_14 //G0 -#define LCD_D7 PC_15 //G1 -#define LCD_D8 PA_4 //G2 -#define LCD_D9 PA_5 //G3 -#define LCD_D10 PA_6 //G4 -#define LCD_D11 PA_7 //G5 -#define LCD_D12 PA_1 //R0 -#define LCD_D13 PA_12 //R1 -#define LCD_D14 PA_13 //R2 -#define LCD_D15 PA_14 //R3 -#define LCD_D16 PA_2 //R4 -#define LCD_D17 PA_0 //R5 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#else -#define LCD_D0 PC_8 -#define LCD_D1 PC_9 -#define LCD_D2 PC_10 -#define LCD_D3 PC_11 -#define LCD_D4 PC_12 -#define LCD_D5 PC_13 -#define LCD_D6 PC_14 -#define LCD_D7 PC_15 -#define LCD_D8 255 -#define LCD_D9 255 -#define LCD_D10 255 -#define LCD_D11 255 -#define LCD_D12 255 -#define LCD_D13 255 -#define LCD_D14 255 -#define LCD_D15 255 -#define LCD_D16 255 -#define LCD_D17 255 -#define LCD_D18 255 -#define LCD_D19 255 -#define LCD_D20 255 -#define LCD_D21 255 -#define LCD_D22 255 -#define LCD_D23 255 -#endif - -#define SDH_I2C2_REUSE (0 && DVP_EN && SDH_EN) - -/*---------------------------------------*/ -/*---------SDH PIN DEFINITION------------*/ -/*---------------------------------------*/ - -#define PIN_SDH_CLK PC_4//PC_2// -#define PIN_SDH_CMD PC_3//PC_3// -#define PIN_SDH_DAT0 PC_2//PC_4// -#define PIN_SDH_DAT1 255 -#define PIN_SDH_DAT2 255 -#define PIN_SDH_DAT3 255 - - - -///////////////IIC2///////////// -#define PIN_IIC2_SCL PC_2//PA_11// -#define PIN_IIC2_SDA PC_3//PA_8// - -#define PIN_IIC1_SCL PA_13 -#define PIN_IIC1_SDA PA_12 - - - - - -#define MOTO_AIN1_PIN PB_7 -#define MOTO_AIN2_PIN PB_6 -#define MOTO_BIN1_PIN PC_0 -#define MOTO_BIN2_PIN PC_1 - - -#define PIN_PWM_CHANNEL_0 MOTO_AIN1_PIN -#define PIN_PWM_CHANNEL_1 MOTO_AIN2_PIN -#define PIN_PWM_CHANNEL_2 MOTO_BIN1_PIN -#define PIN_PWM_CHANNEL_3 MOTO_BIN2_PIN -#define PIN_PWM_CHANNEL_4 255 - - -#define PIN_SPI_PDN 0 - - -///////////////DVP////////////// -#define CMOS_AUTO_LOAD 1 -#define DEV_SENSOR_GC0308 1 -#define DEV_SENSOR_OV2640 1 - -#define PIN_DVP_RESET 255//PA_12// -#define PIN_DVP_PDN 255 - - -//////////////SET QC///////////////////////////// -#define NET_TO_QC 0 -#define QC_STA_NAME "BGN_test" -#define QC_STA_PW "12345678" -#define QC_SCAN_TIME 200 //ms -#define QC_SCAN_CNT 10 //total time = QC_SCAN_TIME*QC_SCAN_CNT -#define QC_SCAN_CHANNEL 0x010 //要扫描的信道。每1bit对应1个信道(bit 0~11 -> chan 1~12) - - - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG_NODE 40//18//30*2 -#define JPG_TAIL_RESERVER 0 - -#define JPG0_HEAD_RESERVER 0//0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG0_BUF_LEN 1400//8192//1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG0_NODE 40//20//18//30*2 -#define JPG0_TAIL_RESERVER 0 - -//////////////////////////////////////////////////jpg app room cfg//////////////////////////////////////////////////// -#define JPG1_HEAD_RESERVER 0 //每段JPEG BUF前面预留用于填充其他数据的数据量,无需预留填0 -#define JPG1_BUF_LEN 1308//2880//4096+24 // 1*1024// 1*1024// JPG buf长度+reserver长度 1308 -#define JPG1_NODE 40//18//30*2 -#define JPG1_TAIL_RESERVER 0 - - -//设定自定义空间,前提heap要足够,main的时候会从heap申请这样一大片空间分配到custom_malloc中 -//空间组成大概是 jpg空间+csi空间(VGA 30kB)+ 其他模块的空间 -//系统尽量留有20K左右,防止其他地方malloc申请不到 - -//#define VCAM_33 - - -//#define WIFI_BRIDGE_EN 1 -//#define WIFI_BRIDGE_DEV HG_GMAC_DEVID - -#define CUSTOM_PSRAM_SIZE 500*1024 -#define PSRAM_HEAP //如果需要psram当作heap,需要打开这个宏 - -//速率调整参数选择,默认是耳勺 -#define RATE_CONTROL_ERSHAO 1 -#define RATE_CONTROL_HANGPAI 2 -#define RATE_CONTROL_IPC 3 -#define RATE_CONTROL_BABYMPNITOR 4 - -#define RATE_CONTROL_SELECT RATE_CONTROL_BABYMPNITOR - -#if (RATE_CONTROL_SELECT == RATE_CONTROL_BABYMPNITOR) -//#define WIFI_TX_MAX_RETRY 5 //最大传输次数,范围为1~31 -#endif - -//是能5m/20m共存和自动带宽切换, -//#define WIFI_FEM_CHIP LMAC_FEM_GSR2401C -//#define LMAC_BGN_PCF - -///////////////ble enable//////////// -#define BLE_SUPPORT 1 -#define BLE_METER_TEST_EN 0 - -//调整 buffer 大小,尽可能省 heap 空间 -#define WIFI_RX_BUFF_SIZE (8*1024) -#define SKB_POOL_SIZE (16*1024) - -#define LLM_DEMO - -#endif - - - - - #endif diff --git a/sdk/app/spook/encoder-audio.c b/sdk/app/spook/encoder-audio.c index 9759f20..34a41d6 100644 --- a/sdk/app/spook/encoder-audio.c +++ b/sdk/app/spook/encoder-audio.c @@ -58,7 +58,7 @@ static void *start_block(void) static void get_back_audio_frame( struct frame *f, void *d ) { struct audio_encoder *en = (struct audio_encoder *)d; - _os_printf("-"); + //_os_printf("-"); //exchange_frame( en->ex, new_frame() ); deliver_frame_to_stream( f, en->output ); } diff --git a/sdk/app/spook/rtp-audio.c b/sdk/app/spook/rtp-audio.c index 9e3b9a7..ffab7ec 100644 --- a/sdk/app/spook/rtp-audio.c +++ b/sdk/app/spook/rtp-audio.c @@ -72,7 +72,7 @@ static int audio_get_sdp( char *dest, int len, int payload, int port, void *d ) static int audio_process_frame( struct frame *f, void *d ) { - _os_printf("+"); + //_os_printf("+"); struct rtp_media *rtp = (struct rtp_media *)d; struct rtp_audio *out = (struct rtp_audio *)rtp->private; out->f = f; diff --git a/sdk/include/lib/video/dvp/cmos_sensor/csi.h b/sdk/include/lib/video/dvp/cmos_sensor/csi.h index 794c02b..01d71b8 100644 --- a/sdk/include/lib/video/dvp/cmos_sensor/csi.h +++ b/sdk/include/lib/video/dvp/cmos_sensor/csi.h @@ -310,6 +310,10 @@ void vpp_put_psram(uint32 yuvbuf_addr,uint32 s_w,uint32 s_h); #define DEV_SENSOR_HI704 (0||CMOS_AUTO_LOAD) #endif +#ifndef DEV_SENSOR_SP0828 +#define DEV_SENSOR_SP0828 (0||CMOS_AUTO_LOAD) +#endif + #if DEV_SENSOR_OV7725 extern const _Sensor_Ident_ ov7725_init; extern SENSOR_OP_SECTION const _Sensor_Adpt_ ov7725_cmd; @@ -442,4 +446,9 @@ extern const _Sensor_Ident_ hi704_init; extern SENSOR_OP_SECTION const _Sensor_Adpt_ hi704_cmd; #endif +#if DEV_SENSOR_SP0828 +extern const _Sensor_Ident_ sp0828_init; +extern SENSOR_OP_SECTION const _Sensor_Adpt_ sp0828_cmd; +#endif + #endif diff --git a/sdk/lib/bus/iic/sensor/sensor_sp0828.c b/sdk/lib/bus/iic/sensor/sensor_sp0828.c new file mode 100644 index 0000000..e1418a9 --- /dev/null +++ b/sdk/lib/bus/iic/sensor/sensor_sp0828.c @@ -0,0 +1,305 @@ +// sensor_sp0828.c — SP0828 (SuperPix) camera sensor driver (revised) +/* + * Notes: + * - Platform cam clock is 156 MHz / div. Use div=6 (~26 MHz) for probe/bring-up. + * - I2C 7-bit address: 0x18 => write: 0x30, read: 0x31 + * - ID register: 0x02 should read 0x0C on SP0828 in this platform’s reference. + */ + +#include "sys_config.h" +#include "typesdef.h" +#include "lib/video/dvp/cmos_sensor/csi.h" +#include "tx_platform.h" +#include "list.h" +#include "dev.h" +#include "hal/i2c.h" + +#if DEV_SENSOR_SP0828 + + // ----------------------------- + // Main init table (bring-up) + // ----------------------------- +SENSOR_INIT_SECTION static const unsigned char SP0828InitTable[CMOS_INIT_LEN] = { + 0xFD, 0x00, + 0x1C, 0x00, + 0x30, 0x00, + 0x0F, 0x2F, + 0x10, 0x2F, + 0x12, 0x7F, + //0x13, 0x2F, + //0x15, 0x7F, + //0x16, 0x0F, + 0x22, 0xE0, + 0x26, 0x08, + 0x27, 0xE8, + 0x28, 0x0B, + 0x32, 0x00, + 0xFD, 0x00, + 0x31, 0x50, + 0xD8, 0x58, + 0xD9, 0x58, + 0xDA, 0x58, + 0xDB, 0x58, + 0x36, 0x00, + 0x5F, 0x11, + 0xE0, 0x00, + 0xE1, 0xDC, + 0xE2, 0xB0, + 0xE3, 0x00, + 0xE4, 0x2E, + 0xE5, 0x00, + 0xE6, 0x2B, + 0xB7, 0x3C, + 0xB8, 0x50, + 0xFD, 0x01, + 0x25, 0x1A, + 0x26, 0xFB, + 0x28, 0x61, + 0x29, 0x49, + 0x31, 0x64, + 0x32, 0x18, + 0x4D, 0xDC, + 0x4E, 0x53, + 0x41, 0x8C, + 0x42, 0x57, + 0x55, 0xFF, + 0x56, 0x00, + 0x59, 0x82, + 0x5A, 0x00, + 0x5D, 0xFF, + 0x5E, 0x6F, + 0x57, 0xFF, + 0x58, 0x00, + 0x5B, 0xFF, + 0x5C, 0xA8, + 0x5F, 0x75, + 0x60, 0x00, + 0x2D, 0x00, + 0x2E, 0x00, + 0x2F, 0x00, + 0x30, 0x00, + 0x33, 0x00, + 0x34, 0x00, + 0x37, 0x00, + 0x38, 0x00, + 0x39, 0x01, + 0x3A, 0x07, + 0xFD, 0x00, + 0x33, 0x0F, + 0x51, 0x3F, + 0x52, 0x09, + 0x53, 0x00, + 0x54, 0x00, + 0x55, 0x10, + 0x4F, 0x08, + 0x50, 0x08, + 0x56, 0x70, + 0x57, 0x10, + 0x58, 0x10, + 0x59, 0x10, + 0x5A, 0x02, + 0x5B, 0x02, + 0x5C, 0x20, + 0x65, 0x03, + 0x66, 0x01, + 0x67, 0x03, + 0x68, 0x46, + 0x69, 0x7F, + 0x6A, 0x01, + 0x6B, 0x04, + 0x6C, 0x01, + 0x6D, 0x03, + 0x6E, 0x46, + 0x6F, 0x7F, + 0x70, 0x01, + 0x71, 0x05, + 0x72, 0x01, + 0x73, 0x03, + 0x74, 0x46, + 0x75, 0x7F, + 0x76, 0x01, + 0x7F, 0x96, + 0x80, 0x00, + 0x81, 0xE0, + 0x82, 0xED, + 0x83, 0xA6, + 0x84, 0xED, + 0x85, 0xFA, + 0x86, 0xBA, + 0x87, 0xCC, + 0x88, 0x30, + 0x89, 0x33, + 0x8A, 0x0F, + 0x8B, 0x00, + 0x8C, 0x1A, + 0x8D, 0x29, + 0x8E, 0x41, + 0x8F, 0x62, + 0x90, 0x7C, + 0x91, 0x90, + 0x92, 0xA2, + 0x93, 0xAF, + 0x94, 0xBA, + 0x95, 0xC4, + 0x96, 0xCE, + 0x97, 0xD6, + 0x98, 0xDD, + 0x99, 0xE4, + 0x9A, 0xEA, + 0x9B, 0xF1, + 0xFD, 0x01, + 0x8D, 0xF8, + 0x8E, 0xFF, + 0xFD, 0x00, + 0xCA, 0xCF, + 0xCB, 0x07, + 0xCC, 0x04, + 0xCE, 0xFF, + 0xCF, 0x10, + 0xD0, 0x20, + 0xD1, 0x00, + 0xD2, 0x1C, + 0xD3, 0x16, + 0xD4, 0x00, + 0xD6, 0x1C, + 0xD7, 0x16, + 0xDD, 0x6C, + 0xDE, 0xA0, + 0xB9, 0x00, + 0xBA, 0x04, + 0xBB, 0x08, + 0xBC, 0x10, + 0xBD, 0x20, + 0xBE, 0x30, + 0xBF, 0x40, + 0xC0, 0x50, + 0xC1, 0x60, + 0xC2, 0x70, + 0xC3, 0x80, + 0xC4, 0x90, + 0xC5, 0xA0, + 0xC6, 0xB0, + 0xC7, 0xC0, + 0xC8, 0xD0, + 0xC9, 0xE0, + 0xFD, 0x01, + 0x89, 0xF0, + 0x8A, 0xFF, + 0xFD, 0x00, + 0xE8, 0x30, + 0xE9, 0x30, + 0xEA, 0x40, + 0xF4, 0x1B, + 0xF5, 0x97, + //0xEC, 0x53, + //0xED, 0x78, + //0xEE, 0x47, + //0xEF, 0x6C, + 0xF7, 0x78, + 0xF8, 0x63, + 0xF9, 0x68, + 0xFA, 0x53, + 0xFD, 0x01, + 0x09, 0x31, + 0x0A, 0x85, + 0x0B, 0x0B, + 0x14, 0x20, + 0x15, 0x0F, + + 0xfd,0x00, + 0x05,0x0 , + 0x06,0x0 , + 0x09,0x3 , + 0x0a,0xbc, + 0xf0,0x50, + 0xf1,0x0 , + 0xf2,0x60, + 0xf5,0x79, + 0xfd,0x01, + 0x00,0xb9, + 0x0f,0x61, + 0x16,0x61, + 0x17,0xa9, + 0x18,0xb1, + 0x1b,0x61, + 0x1c,0xb1, + 0xb4,0x21, + 0xb5,0x3b, + 0xb6,0x5f, + 0xb9,0x40, + 0xba,0x4f, + 0xbb,0x47, + 0xbc,0x45, + 0xbd,0x43, + 0xbe,0x42, + 0xbf,0x42, + 0xc0,0x42, + 0xc1,0x41, + 0xc2,0x41, + 0xc3,0x41, + 0xc4,0x41, + 0xc5,0x41, + 0xc6,0x41, + 0xca,0x70, + 0xcb,0x10, + 0xfd,0x00, + + 0xFD, 0x00, + 0x32, 0x15, + 0x34, 0x26, + 0x35, 0x40, + 0xFD, 0x00, + //0x1B, 0x07, + //0xFE, 0xFE, + //0x01, 0xFD, + //0x00, 0x62, + //0x00, 0x63, + //0x80, 0x64, + //0x80, + 0xFF, 0xFF, +}; + + +// ----------------------------- +// Optional prewrite (kept, but not required for probe) +// ----------------------------- +SENSOR_INIT_SECTION static const unsigned char SP0828prewriteInitTable[CMOS_INIT_LEN] = +{ + 0xFD,0x00, + 0x1C,0x00, + 0x30,0x00, + 0x31,0x00, + 0xFF,0xFF +}; + +// ----------------------------- +// Adapter descriptor +// ----------------------------- +SENSOR_OP_SECTION const _Sensor_Adpt_ sp0828_cmd = +{ + .typ = 1, //YUV + .pixelw = 240, + .pixelh = 320, + .hsyn = 1, + .vsyn = 1, + .rduline = 0, + .rawwide = 1, + .colrarray = 2, + .init = (uint8*)SP0828InitTable, + .preset = (uint8*)SP0828prewriteInitTable, + .rotate_adapt = {0}, + .hvb_adapt = {0x80,0x0a,0x80,0x0a}, + . mclk = 24000000, + .p_fun_adapt = {NULL,NULL,NULL}, + .p_xc7016_adapt = {NULL}, +}; + +// ----------------------------- +// Chip ID (probe expects reg 0x02 == 0x0C) +// ----------------------------- +const _Sensor_Ident_ sp0828_init = +{ + 0x0C,0x30,0x31,0x01,0x01,0x02 +}; + +#endif // DEV_SENSOR_SP0828 diff --git a/sdk/lib/video/dvp/cmos_sensor/csi_v2.c b/sdk/lib/video/dvp/cmos_sensor/csi_v2.c index c1e70d3..1839e07 100644 --- a/sdk/lib/video/dvp/cmos_sensor/csi_v2.c +++ b/sdk/lib/video/dvp/cmos_sensor/csi_v2.c @@ -141,6 +141,10 @@ static const _Sensor_Ident_ *devSensorInitTable[] = { &hi704_init, #endif +#if DEV_SENSOR_SP0828 + &sp0828_init, +#endif + NULL, }; @@ -242,6 +246,10 @@ static const _Sensor_Adpt_ *devSensorOPTable[] = { &hi704_cmd, #endif +#if DEV_SENSOR_SP0828 + &sp0828_cmd, +#endif + }; // Keep same order as devSensorOPTable - helps ID which driver is used to init sensor @@ -342,6 +350,10 @@ static const char *devSensorNameTable[] = { #if DEV_SENSOR_HI704 "hi704", #endif + +#if DEV_SENSOR_SP0828 + "sp0828", +#endif }; #if IPF_EN @@ -1750,9 +1762,9 @@ bool csi_yuv_mode(){ i2c_ioctl(iic_test,IIC_STRONG_OUTPUT,1); //i2c_send_stop(iic_test); - os_printf("iic init finish,sensor reset & set sensor clk into 6M\r\n"); + os_printf("iic init finish,sensor reset & set sensor clk into 16M\r\n"); //2:init sensor - dvp_set_baudrate(dvp_test,6000000); + dvp_set_baudrate(dvp_test,16000000); os_sleep_ms(3); os_printf("set sensor finish ,Auto Check sensor id\r\n");