com_trans.h
来自「LPC2129实现从SPI通讯和两个串口定时器中断」· C头文件 代码 · 共 131 行
H
131 行
#ifndef _COMM_H
#define _COMM_H
#ifdef COMM_GLOBALES
#define COMM_EXTERN
#else
#define COMM_EXTERN extern
#endif
//********************全局变量设置**************************************************/
#define UART_NUM 2
#define DATA_BUF_NUM 64
#define true 1
#define false 0
#define RXD_WAIT 0
#define GET_ERROR 0xc0
#define SET_NEW 0x01
#define GET_LEN 0x3f
#define UART_START0 0x55
#define UART_START1 0xAA
struct DATA_BUF
{
unsigned char data[DATA_BUF_NUM];
unsigned char rx_cmd[DATA_BUF_NUM];
unsigned char tx_cmd[DATA_BUF_NUM];
unsigned char IP_addr;
unsigned char s_l;
unsigned char command;
unsigned char length;
unsigned char sum;
unsigned char state;
};
COMM_EXTERN struct DATA_BUF RXD_BUF[UART_NUM],TXD_BUF[UART_NUM];
#include "LPC2294.h"
#include "config.h"
COMM_EXTERN int i;
COMM_EXTERN unsigned char pos_L[12],pos_R[12]; //读回的驱动器器参数
COMM_EXTERN unsigned char v_L[5],v_R[5];
/***********************************************************************************/
#define IP_MAIN 0X00 //主机地址
//**************有关UART通讯命令字宏定义*********************************************
#define VERSION_RQ 0X10 //设备信息查询
#define SYS_SET 0X11 //系统设置
#define PERFORM_1 0X12 //进入系统演示程序1
#define PERFORM_2 0X13 //进入系统演示程序2
#define PERFORM_3 0X14 //进入系统演示程序3
#define MOVE_RESET 0X20 //运动软复位指令
#define MOVE_HOLD 0X21 //运动刹车控制指令
#define MOVE_DIS_L_SET 0X22 //设置左电机位置
#define MOVE_DIS_R_SET 0X23 //设置右电机位置
#define MOVE_SPEEDL_SET 0X24 //设置左电机的速度
#define MOVE_SPEEDR_SET 0X25 //设置右电机的速度
#define MOVE_SPEED_SET 0X26 //设置双电机的速度
#define MOVE_ACCER_SET 0X27 //设置双电机的加速度
#define MOVE_STATE_RQ 0X28 //运动参数查询
#define MOVE_PID_SET 0X29 //设置PID参数
#define MOVE_ELEC_RQ 0X2A //电气参数查询
#define MOVE_PROTECT 0X2E //自我保护功能选择
#define MOVE_SPEED_ANGLE_SET 0X2B
#define MOVE_ANGLE_SPEED_SET 0X2C
#define TURN_ANGLE_SPEED_SET 0X2D
#define GET_STANDARD 0X2F //标定
#define SENSOR_CS_RQ 0X30 //请求读取超声波传感器的距离信息
#define SENSOR_HY_RQ 0X36 //请求读取全部红外传感器信息
#define IO_OUT 0X40 //IO输出
#define IO_IN_RQ 0X41 //IO输入请求
#define IO_PWM1 0X42 //PWM1输出
#define IO_PWM2 0X43 //PWM2输出
#define IO_PWM3 0X44 //PWM3输出
#define IO_PWM4 0X45 //PWM4输出
#define MOTOR_RESET 0X60 //电机设备复位
#define MOTOR_HOLD 0X61 //电机刹车控制
#define MOTOR_DIS_SET 0X62 //电机位置设置
#define MOTOR_SPEED_SET 0X64 //电机速度设置
#define MOTOR_ACCER_SET 0X67 //设置双电机的加速度
#define MOTOR_STATE_RQ 0X68 //运动参数查询
#define MOTOR_PID_SET 0X69 //设置PID参数
#define MOTOR_ELEC_RQ 0X6A //电气参数查询
/***********************************************************************************/
/****************************************************************************
* 名称:IRQ_UART1()
* 功能:串口UART0接收中断。
* 入口参数:无
* 出口参数:无
****************************************************************************/
void rx_cmd_deal(int uart_num,unsigned char receiv);
void perform_command (struct DATA_BUF *com_pk);
void operate_motion (struct DATA_BUF *motion_pk);
void set_move_reset(void);
void set_move_hold(void);
void set_move_speedLR(struct DATA_BUF *rxd_pk);
void SendSpeedLR(int SpeedL, int SpeedR);
void SendSpeedL(int TempSpeed);
void SendSpeedR(int TempSpeed);
void send_same_back_uart(uint8 uart_num,struct DATA_BUF *rxd_pk);
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?