📄 maps.h
字号:
#define USC unsigned char
#define USI unsigned int
#define USL unsigned long
#define BYTE unsigned char
#define WORD unsigned int
#define BOOL bit
#define PWM1600HZ
/*MOTOR CTRL*/
#define SVOSTOP T1
#define MOTOR1 WR
#define PWM T0
#define TXON INT0
#ifdef PWM1600HZ
// PWM frenquence is 2500Hz
#define PWMCYCLE 0x200
#define SAFERATIO 0x2
#define LIMITRATIO 0x1
#define T2LOW 0x9F
#define T2HIGH 0xFE
#else
// PWM frenquence is 50Hz
#define PWMCYCLE 0x4D00 //19712
#define SAFERATIO 0x4D
#define LIMITRATIO 0x19
#define T2LOW 0x4A //FFFF-4D00 = B2FF,B64A-B2FF
#define T2HIGH 0xB6
#endif
#define SPWR INT1
/*ADC channels*/
#define GYROX 0x00
#define GYROY 0x01
#define GX 0x02
#define MX 0x03
#define GY 0x04
#define GZ 0x05
#define AL 0x06
#define CH07 0x07
/*decode constants*/
void serial();
void Init812();
void SensorsADC(USC ch);
void CodeRX();
void DataProcess();
void Control();
void TimeRun();
void MotorBeep(USI times, BYTE freq, BYTE freqh);
void InitServos();
//-------------------------------------------------------
// I2C related
//-------------------------------------------------------
//------------------------------------------------------------------------------
// Value Definitions
//------------------------------------------------------------------------------
#define TRUE 0x01 // Value representing TRUE
#define FALSE 0x00 // Value representing FALSE
#define ON 0x01 // Value representing ON
#define OFF 0x00 // Value representing OFF
#define HIGH 0x01 // Value representing HIGH
#define LOW 0x00 // Value representing LOW
#define YES 0x01 // Value representing YES
#define NO 0x00 // Value representing NO
#define DELAY_WRITE 20 // Value for delay write time
#define DELAY_BLINK 500 // Value for delay time - blink
//------------------------------------------------------------------------------
// Macros
//------------------------------------------------------------------------------
// Get high byte macro
#define high_byte(x) ((x & 0xFF00) >> 8)
//------------------------------------------------------------------------------
// I/O Port Defines
//------------------------------------------------------------------------------
#define LED P3_4 // LED Output
//------------------------------------------------------------------------------
// I2C Peripheral Function Prototypes
//------------------------------------------------------------------------------
// Writes a byte to the EEPROM
void i2c_write_byte (unsigned int address, unsigned char data_out);
// Reads a bytee from the EEPROM
unsigned char i2c_read_byte (unsigned int address);
//------------------------------------------------------------------------------
// I2C Functions - Master
//------------------------------------------------------------------------------
void i2c_init (void); // Initialize I2C
void i2c_start (void); // Sends I2C Start Trasfer
void i2c_stop (void); // Sends I2C Stop Trasfer
bit i2c_write (unsigned char input_data); // Writes data over the I2C bus
unsigned char i2c_read (bit send_ack); // Reads data from the I2C bus
//------------------------------------------------------------------------------
// Support Function Prototypes
//------------------------------------------------------------------------------
void delay_time (unsigned int time_end); // To pause execution for pre-determined time
//------------------------------------------------------------------------------
// Global Variables
//------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -