From 2708bb705860a113282682b2512af4f139c12888 Mon Sep 17 00:00:00 2001
From: chen <15335560115@163.com>
Date: 星期二, 20 五月 2025 18:31:36 +0800
Subject: [PATCH] 初步移植过来lora基础包协议格式,不能和网关通信未解决

---
 keil/include/board/board.c |   53 +++++++++++++++++++++++------------------------------
 1 files changed, 23 insertions(+), 30 deletions(-)

diff --git a/keil/include/board/board.c b/keil/include/board/board.c
index 14c5b02..302905e 100644
--- a/keil/include/board/board.c
+++ b/keil/include/board/board.c
@@ -61,9 +61,7 @@
 
 struct BOARD_PARAM_T board_param = {0};
 static GPIO_IRQ_HANDLER_T button_irq_handler = NULL;
-static GPIO_IRQ_HANDLER_T accelerate_irq_handler=NULL;
-static GPIO_IRQ_HANDLER_T _4Gusart_irq_handler=NULL;
-extern struct UART_CFG_T test_uart_cfg;
+
 void board_clock_run(void)
 {
     // default load cap
@@ -393,40 +391,35 @@
 void board_5V_input_init(GPIO_IRQ_HANDLER_T irq_handler)
 {
 		button_irq_handler = irq_handler;
-    gpio_pin_set_dir(INPUT_5V_Pin , GPIO_DIR_IN, 0);
-    io_pull_set(INPUT_5V_Pin , IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
+    gpio_pin_set_dir(INPUT_5V_Pin, GPIO_DIR_IN, 0);
+    io_pull_set(INPUT_5V_Pin, IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
     gpio_enable_irq(INPUT_5V_Pin, GPIO_IRQ_TYPE_RISING_EDGE, button_irq_handler);
-    //power_wakeup_enable((enum POWER_WAKEUP_SOURCE_T)INPUT_5V_Pin, POWER_WAKEUP_LEVEL_LOW);
-}
-void board_acceleration_detection_init(GPIO_IRQ_HANDLER_T irq_handler)
-{
-		accelerate_irq_handler=irq_handler;
-		gpio_pin_set_dir(ACCLERATE_DETECT_Pin , GPIO_DIR_IN, 0);
-		io_pull_set(ACCLERATE_DETECT_Pin, IO_PULL_DOWN, IO_PULL_UP_LEVEL4);
-        gpio_enable_irq(ACCLERATE_DETECT_Pin, GPIO_IRQ_TYPE_RISING_EDGE, accelerate_irq_handler);
-}
-void board_4GUsart_detection_init(GPIO_IRQ_HANDLER_T irq_handler)  //4G 串口输入检测中断,下拉触发
-{
-        _4Gusart_irq_handler=irq_handler;  
-        io_pin_mux_set(_4G_USART_RX_Pin,IO_FUNC0);//把原先io 变为普通GPIO
-		gpio_pin_set_dir(_4G_USART_RX_Pin , GPIO_DIR_IN, 0);
-		io_pull_set(_4G_USART_RX_Pin, IO_PULL_UP, IO_PULL_UP_LEVEL2);
-        gpio_enable_irq(_4G_USART_RX_Pin, GPIO_IRQ_TYPE_FALLING_EDGE, _4Gusart_irq_handler);
+    power_wakeup_enable((enum POWER_WAKEUP_SOURCE_T)INPUT_5V_Pin, POWER_WAKEUP_LEVEL_LOW);
 }
 void board_button_init(GPIO_IRQ_HANDLER_T irq_handler)
 {
     button_irq_handler = irq_handler;
     gpio_pin_set_dir(BOARD_SW_1, GPIO_DIR_IN, 0);
-    io_pull_set(BOARD_SW_1, IO_PULL_UP, IO_PULL_UP_LEVEL3);
+    io_pull_set(BOARD_SW_1, IO_PULL_UP, IO_PULL_UP_LEVEL4);
     gpio_enable_irq(BOARD_SW_1, GPIO_IRQ_TYPE_FALLING_EDGE, button_irq_handler);
 
     power_wakeup_enable((enum POWER_WAKEUP_SOURCE_T)BOARD_SW_1, POWER_WAKEUP_LEVEL_LOW);
 }
 
-void board_led_init(void)
-{
-    gpio_pin_set_dir(BOARD_LED_1, GPIO_DIR_OUT, 0);
-    gpio_pin_set_dir(BOARD_LED_2, GPIO_DIR_OUT, 0);
+void board_mode_pin_init(void)
+{				 
+		//配置spi片选脚
+		gpio_pin_set_dir(LORA_CS , GPIO_DIR_OUT, 0);
+    io_pull_set(LORA_CS, IO_HIGH_Z, IO_PULL_UP_NONE);
+		 // 判断是Airtag还是免布线模式
+    io_pin_mux_set(MODE_CHANGE_PIN, IO_FUNC0);
+		gpio_pin_set_dir( MODE_CHANGE_PIN, GPIO_DIR_IN, 0);
+		io_pull_set(MODE_CHANGE_PIN , IO_PULL_DOWN, IO_PULL_UP_LEVEL2);
+	//初始化NRST脚
+	io_pin_mux_set(LORA_NRST, IO_FUNC0);
+	gpio_pin_set_dir(LORA_NRST , GPIO_DIR_OUT, 1);
+  io_pull_set(LORA_NRST, IO_HIGH_Z, IO_PULL_UP_NONE);
+	gpio_pin_set(LORA_NRST);
 }
 
 void board_led_on(enum IO_PIN_T idx)
@@ -447,9 +440,10 @@
 void board_configure(void)
 {
 }
-
+extern struct UART_CFG_T test_uart_cfg;
 void board_prepare_for_power_down(void)
 {
+	 
 #if !defined(CELL_PHONE_EN)
     board_led_off(BOARD_LED_1);
 #endif
@@ -457,8 +451,7 @@
 
 void board_restore_from_power_down(void)
 {
-	uart_open(UART_ID1, &test_uart_cfg);
-	
+	//uart_open(UART_ID0, &test_uart_cfg);
 #if defined(UCI_INTF_PORT)
     uci_tl_resume();
 #else
@@ -477,6 +470,6 @@
     sys_timer_open();
 
 #if TRACE_EN
-    trace_open(user_trace_port, TRACE_BAUD_RATE);
+    trace_open(user_trace_port, TRACE_BAUD_RATE);//记得回复
 #endif
 }

--
Gitblit v1.9.3