add lora lowpower at command support

add lora lowpower at command support
This commit is contained in:
supowang
2019-12-18 13:01:35 +08:00
parent d0f61b43a5
commit e1c19fd194
8 changed files with 86 additions and 104 deletions

View File

@@ -5,9 +5,16 @@
#define USART0_GPIO_RX_PIN GPIO_PIN_10
#define USART0_GPIO_PORT GPIOA
#define USART3_GPIO_TX_PIN GPIO_PIN_10
#define USART3_GPIO_RX_PIN GPIO_PIN_11
#define USART3_GPIO_PORT GPIOC
#define USART1_GPIO_TX_PIN GPIO_PIN_2
#define USART1_GPIO_RX_PIN GPIO_PIN_3
#define USART1_GPIO_PORT GPIOA
#define USART2_GPIO_TX_PIN GPIO_PIN_10
#define USART2_GPIO_RX_PIN GPIO_PIN_11
#define USART2_GPIO_PORT GPIOC
void usart0_init(int baud);
void uart3_init(int baud);
void usart1_init(int baud);
void usart2_init(int baud);
#endif // __USART_H

View File

@@ -11,16 +11,18 @@ static void led_config(void)
gpio_bit_set(LED_GPIO_PORT, LED_PIN);
}
void board_init() {
void board_init()
{
char *str = "Tencent";
SystemInit();
led_config();
uart3_init(115200);
usart0_init(115200);
usart1_init(115200);
usart2_init(115200);
OLED_Init();
OLED_Clear();
OLED_ShowChinese(36,0,0);
OLED_ShowChinese(54,0,1);
OLED_ShowChinese(72,0,2);
OLED_ShowString(36,2,(uint8_t*)str,8);
}

View File

@@ -27,39 +27,69 @@ void usart0_init(int baud)
usart_enable(USART0);
}
void usart1_init(int baud)
{
/* enable GPIO clock */
rcu_periph_clock_enable(RCU_GPIOA);
void uart3_init(int baud)
/* enable USART1 clock */
rcu_periph_clock_enable(RCU_USART1);
/* connect port to USART0_Tx */
gpio_init(USART1_GPIO_PORT, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, USART1_GPIO_TX_PIN);
/* connect port to USART0_Rx */
gpio_init(USART1_GPIO_PORT, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, USART1_GPIO_RX_PIN);
/* USART1 configure */
usart_deinit(USART1);
usart_baudrate_set(USART1, baud);
usart_word_length_set(USART1, USART_WL_8BIT);
usart_stop_bit_set(USART1, USART_STB_1BIT);
usart_parity_config(USART1, USART_PM_NONE);
usart_hardware_flow_rts_config(USART1, USART_RTS_DISABLE);
usart_hardware_flow_cts_config(USART1, USART_CTS_DISABLE);
usart_receive_config(USART1, USART_RECEIVE_ENABLE);
usart_transmit_config(USART1, USART_TRANSMIT_ENABLE);
usart_enable(USART1);
}
void usart2_init(int baud)
{
/* enable GPIO clock */
rcu_periph_clock_enable(RCU_GPIOC);
/* enable USART0 clock */
rcu_periph_clock_enable(RCU_UART3);
/* enable USART2 clock */
rcu_periph_clock_enable(RCU_USART2);
/* connect port to USART0_Tx */
gpio_init(USART3_GPIO_PORT, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, USART3_GPIO_TX_PIN);
gpio_init(USART2_GPIO_PORT, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, USART2_GPIO_TX_PIN);
/* connect port to USART0_Rx */
gpio_init(USART3_GPIO_PORT, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, USART3_GPIO_RX_PIN);
gpio_init(USART2_GPIO_PORT, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, USART2_GPIO_RX_PIN);
/* USART0 configure */
usart_deinit(UART3);
usart_baudrate_set(UART3, baud);
usart_word_length_set(UART3, USART_WL_8BIT);
usart_stop_bit_set(UART3, USART_STB_1BIT);
usart_parity_config(UART3, USART_PM_NONE);
usart_hardware_flow_rts_config(UART3, USART_RTS_DISABLE);
usart_hardware_flow_cts_config(UART3, USART_CTS_DISABLE);
usart_receive_config(UART3, USART_RECEIVE_ENABLE);
usart_transmit_config(UART3, USART_TRANSMIT_ENABLE);
usart_enable(UART3);
gpio_pin_remap_config(GPIO_USART2_FULL_REMAP,ENABLE);
/* USART1 configure */
usart_deinit(USART2);
usart_baudrate_set(USART2, baud);
usart_word_length_set(USART2, USART_WL_8BIT);
usart_stop_bit_set(USART2, USART_STB_1BIT);
usart_parity_config(USART2, USART_PM_NONE);
usart_hardware_flow_rts_config(USART2, USART_RTS_DISABLE);
usart_hardware_flow_cts_config(USART2, USART_CTS_DISABLE);
usart_receive_config(USART2, USART_RECEIVE_ENABLE);
usart_transmit_config(USART2, USART_TRANSMIT_ENABLE);
usart_enable(USART2);
}
int _put_char(int ch)
{
usart_data_transmit(UART3, (uint8_t) ch );
while ( usart_flag_get(UART3, USART_FLAG_TBE)== RESET){
usart_data_transmit(USART0, (uint8_t) ch );
while ( usart_flag_get(USART0, USART_FLAG_TBE)== RESET){
}
return ch;