fix lorawan class A demo for RHF76_052DM board
LoRaMac-node-4.4.4 demo
This commit is contained in:
@@ -1,98 +1,35 @@
|
||||
#include "LoRaApi.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include "tos_k.h"
|
||||
#include "atcmd-board.h"
|
||||
/*LORA<52><41><EFBFBD><EFBFBD>״̬*/
|
||||
uint8_t g_join_state = 0;
|
||||
uint8_t g_st_state = 0;
|
||||
/*<2A><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>*/
|
||||
uint32_t g_rx_num = 0;
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
||||
#define TASK1_PRIO 3
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB>С
|
||||
#define TASK1_STK_SIZE (1024 * 4)
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD>
|
||||
k_task_t Task1TCB;
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ
|
||||
k_stack_t TASK1_STK[TASK1_STK_SIZE];
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
void task1(void *arg);
|
||||
void lora_send_timer(void* context)
|
||||
k_task_t task1;
|
||||
k_stack_t task1_stack[4096];
|
||||
|
||||
extern int lora_main(void);
|
||||
void task1_fun(void *arg)
|
||||
{
|
||||
g_st_state =2;
|
||||
}
|
||||
void task1(void *arg)
|
||||
{
|
||||
at_cmd_init();
|
||||
LoRa_Init();
|
||||
printf_device_info();
|
||||
TimerInit( &TxNextPacketTimer, lora_send_timer );
|
||||
while(1)
|
||||
{
|
||||
LoRaMacProcess();
|
||||
if(g_join_state == 0)
|
||||
{
|
||||
printf("start join...\r\n");
|
||||
/*<2A><><EFBFBD><EFBFBD>*/
|
||||
LoRa_JoinNetwork(1);
|
||||
g_join_state = 1;
|
||||
}
|
||||
if(g_join_state == 2)
|
||||
{
|
||||
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
if(g_st_state == 0)
|
||||
{
|
||||
g_st_state = 1;
|
||||
TimerSetValue( &TxNextPacketTimer, 60000 );
|
||||
TimerStart( &TxNextPacketTimer);
|
||||
printf("\r\ntime to ");
|
||||
}
|
||||
else if(g_st_state == 2)
|
||||
{
|
||||
g_st_state = 3;
|
||||
printf("send!\r\n");
|
||||
/*<2A><><EFBFBD><EFBFBD>lora<72><61><EFBFBD><EFBFBD>*/
|
||||
uint8_t tmpbuf[] = "tos tiny!";
|
||||
Lora_Send(0, 2, tmpbuf, sizeof(tmpbuf));
|
||||
g_rx_num++;
|
||||
}
|
||||
}
|
||||
at_cmd_handle();
|
||||
}
|
||||
lora_main();
|
||||
}
|
||||
|
||||
extern uint8_t sx1276_band;
|
||||
int main(void)
|
||||
{
|
||||
k_err_t err;
|
||||
TOS_CPU_CPSR_ALLOC();
|
||||
BoardInitMcu( );
|
||||
BoardInitPeriph( );
|
||||
sx1276_band = 2;
|
||||
printf("welcome to tencent IoTOS\r\n");
|
||||
err = tos_knl_init(); //<2F><>ʼ<EFBFBD><CABC>TOS
|
||||
if (err != K_ERR_NONE)
|
||||
{
|
||||
printf("tos init failed\r\n");
|
||||
return err;
|
||||
}
|
||||
TOS_CPU_INT_DISABLE();//<2F><><EFBFBD><EFBFBD><EFBFBD>ٽ<EFBFBD><D9BD><EFBFBD>
|
||||
err = tos_task_create((k_task_t * )&Task1TCB, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD>
|
||||
(char * )"task1", //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
(k_task_entry_t )task1, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
(void * )0, //<2F><><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>
|
||||
(k_prio_t )TASK1_PRIO, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
||||
TASK1_STK, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD>ַ
|
||||
(size_t)TASK1_STK_SIZE, //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB>С
|
||||
(size_t )0); //<2F><>ʹ<EFBFBD><CAB9>ʱ<EFBFBD><CAB1>Ƭ<EFBFBD><C6AC>תʱ<D7AA><CAB1>ʱ<EFBFBD><CAB1>Ƭ<EFBFBD><C6AC><EFBFBD>ȣ<EFBFBD>Ϊ0ʱΪĬ<CEAA>ϳ<EFBFBD><CFB3>ȣ<EFBFBD>
|
||||
printf("Welcome to TencentOS Tiny! \r\n");
|
||||
tos_knl_init();
|
||||
TOS_CPU_INT_DISABLE();
|
||||
err = tos_task_create(&task1,
|
||||
"task1",
|
||||
task1_fun,
|
||||
NULL,
|
||||
3,
|
||||
task1_stack,
|
||||
4096,
|
||||
20);
|
||||
if(err != K_ERR_NONE)
|
||||
printf("TencentOS Tiny Create task1 fail! code : %d \r\n",err);
|
||||
|
||||
TOS_CPU_INT_ENABLE(); //<2F>˳<EFBFBD><CBB3>ٽ<EFBFBD><D9BD><EFBFBD>
|
||||
tos_knl_start(); //<2F><><EFBFBD><EFBFBD>TOS
|
||||
while (1)
|
||||
{
|
||||
|
||||
}
|
||||
TOS_CPU_INT_ENABLE();
|
||||
tos_knl_start();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user