?? hutil.h
字號(hào):
/*
* 文件名:HUtil.h HUtil.c
* 實(shí)現(xiàn)功能:
* 所有關(guān)于硬件部分的初始化以及控制函數(shù)
* 包括以下幾個(gè)部分:
* SCI串口通信
* A/D轉(zhuǎn)換接口
* 舵機(jī)控制(helm motor)
* 直流電機(jī)控制(back motor)
*/
#ifndef __HUTIL_H__
#define __HUTIL_H__
/* ------------------------- SCI 串口通信部分 -------------------------
* 配置串口通信(9600HZ),實(shí)現(xiàn)字符串的發(fā)送功能,用于單機(jī)調(diào)試
* 串口中斷指定方式為 interrupt void sci_int(),然后在rpm中指定地址
*/
/*
* 串口通信初始化
*/
extern void uart_init(void);
/*
* 發(fā)送一個(gè)字節(jié)
*/
extern void print_byte(unsigned char data);
/*
* 發(fā)送二進(jìn)制數(shù)據(jù)
*/
extern void print_hex(unsigned char* data,int size);
/*
* 發(fā)送字符串?dāng)?shù)據(jù)
*/
extern void print_string(char* str);
/*
* 接受一個(gè)字節(jié)
*/
#define RECEIVE_BYTE(b) \
do { \
while(!SCI0SR1_RDRF); \
(b) = SCI0DRL; \
} while(0)
/* -------------------------- 舵機(jī)控制部分 ----------------------------
* pwm輸出口0,1合成一個(gè)16位的pwm發(fā)生器作為小車舵機(jī)的驅(qū)動(dòng)信號(hào)(pwm 1 輸出)
*/
/*
* 舵機(jī)初始化
*/
extern void helm_motor_init(void);
/*
* 用于測(cè)試舵機(jī)
*/
extern void helm_motor_test(void);
/*
* 舵機(jī)使能
*/
#define HMOTOR_ENABLE() PWME_PWME1 = 1;
#define HMOTOR_DISABLE() PWME_PWME1 = 0;
/*
* 設(shè)置和獲得舵機(jī)的PWM計(jì)數(shù)
*/
#define HMOTOR_PWM_PE() (PWMDTY01)
#define SET_HM_PWM_PE(p) PWMDTY01 = (p)
/* -------------------------- A/D接口函數(shù) ----------------------------
* AD0-AD7讀入各個(gè)紅外線傳感器的輸出電壓,使用8bit的精度,共進(jìn)行兩次A/D轉(zhuǎn)換
* PA0,PA1 控制CD4052的通路情況
*/
/*
* 初始化PA0,PA1以及單片機(jī)的AD模塊
*/
extern void sensor_init(void);
/*
* 讀入16個(gè)端口的數(shù)據(jù)
* dataout - 16字節(jié)的unsigned char數(shù)組,用于存放各個(gè)端口的電壓輸出
*/
extern void sensor_input(unsigned char* dataout);
/* -------------------------- 直流電機(jī)控制 -----------------------------
* 使用PWM3產(chǎn)生33886的控制信號(hào),以及設(shè)定好IN2,D1,D2等控制引腳
*
* PA口參數(shù):
* PA2 - IN2 - Output - Low
* PA4 - -D2 - Output - High
* PA5 - D1 - Output - Low
*/
/*
* 初始化后輪直流電機(jī),包括pwm及PA口數(shù)據(jù)
*/
extern void back_motor_init(void);
/*
* 直流電機(jī)使能
*/
#define BMOTOR_ENABLE() PWME_PWME3 = 1;
#define BMOTOR_DISABLE() PWME_PWME3 = 0;
/*
* 設(shè)置和獲得直流電機(jī)的PWM計(jì)數(shù)
*/
#define BMOTOR_PWM_PE() (PWMDTY23)
#define SET_BM_PWM_PE(p) PWMDTY23 = (p)
#endif
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -