EV-Embedded-Control-System/project/inc/freertos_app.h

120 lines
3.5 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* add user code begin Header */
/**
******************************************************************************
* File Name : freertos_app.h
* Description : Code for freertos applications
*/
/* add user code end Header */
#ifndef FREERTOS_APP_H
#define FREERTOS_APP_H
/* Includes ------------------------------------------------------------------*/
#include "FreeRTOS.h"
#include "task.h"
#include "semphr.h"
#include "queue.h"
#include "timers.h"
#include "event_groups.h"
#include "wk_system.h"
#define MODBUS_ID_BRAKE 0 //刹车
#define MODBUS_ID_STEERING 1 //转向
#define MODBUS_ID_THROTTLE1 2 //油门1
#define MODBUS_ID_THROTTLE2 3 //油门2
#define MODBUS_ID_LIGHT 4 //信号灯
#define MODBUS_ID_GEAR 5 //档位
#define MODBUS_ID_SPEED1 6 //速度
#define MODBUS_ID_SPEED2 7 //速度
#define MODBUS_ID_TEMP1 8 //温度1
#define MODBUS_ID_TEMP2 9 //温度2
#define MODBUS_ID_VOLTAGE 10 //电压
#define MODBUS_ID_CURRENT 11 //电流
#define MODBUS_ID_BAT 12 //电量
#define MODBUS_ID_MILEAGE 13 //里程
#define MODBUS_ID_THROTTLE11 14 //自制CAN 油门1
#define MODBUS_ID_THROTTLE21 15 //自制CAN 油门2
#define MODBUS_ID_BRAKE_PARAMER 16 //油门参数
typedef enum
{
LOOP_READ_IDLE, //回读状态modbus 正常读取can正常接收参数
PARAM_SET, //参数设置状态:
PARAM_ACK, //从机参数写入确认状态:
PARAM_WRITE_ERR, //参数写入不成功
SLAVE_PARAM_SET_CALLBACK//从机刹车参数变更回传给主机
}brake_param_e;
/* private includes -------------------------------------------------------------*/
/* add user code begin private includes */
/* add user code end private includes */
/* exported types -------------------------------------------------------------*/
/* add user code begin exported types */
/* add user code end exported types */
/* exported constants --------------------------------------------------------*/
/* add user code begin exported constants */
/* add user code end exported constants */
/* exported macro ------------------------------------------------------------*/
/* add user code begin exported macro */
/* add user code end exported macro */
/* task handler */
extern TaskHandle_t my_task01_handle;
/* declaration for task function */
void run_task_func(void *pvParameters);
void tmr_task_func(void *pvParameters);
void rs485_task_func(void *pvParameters);
void io_task_func(void *pvParameters);
void modbustcp_slaver_task_func(void *pvParameters);
void modbusrtu_master_task_func(void *pvParameters);
void can1_master_task_func(void *pvParameters);
void can2_master_task_func(void *pvParameters);
void libmodbus_master_task_func(void *pvParameters);
/* queue handler */
extern QueueHandle_t my_queue01_handle;
/* software timer handler */
extern TimerHandle_t my_timer01_handle;
/* software timer callback function */
void timercallback01(void *argument);
/* binary semaphore handler */
extern SemaphoreHandle_t my_binary_sem01_handle;
/* mutex handler */
extern SemaphoreHandle_t my_mutex01_handle;
/* event handler */
extern EventGroupHandle_t my_event01_handle;
/* add user code begin 0 */
/* add user code end 0 */
void freertos_task_create(void);
void freertos_queue_create(void);
void freertos_timer_create(void);
void freertos_semaphore_create(void);
void freertos_event_create(void);
void wk_freertos_init(void);
/* add user code begin 1 */
/* add user code end 1 */
#endif /* FREERTOS_APP_H */