?? 34
字號:
/****************************************Copyright (c)****************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info---------------------------------------------------------------------------------
** File Name: Mouse.Drive.h
** Last modified Date:
** Last Version:
** Description: 底層驅動程序頭文件
**
**--------------------------------------------------------------------------------------------------------
** Created By:
** Created date:
** Version:
** Descriptions:
**
**--------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Description:
**
*********************************************************************************************************/
#ifndef __Mouse_Drive_h
#define __Mouse_Drive_h
/*********************************************************************************************************
包含頭文件
*********************************************************************************************************/
#include "hw_memmap.h"
#include "hw_ints.h"
#include "hw_types.h"
#include "interrupt.h"
#include "gpio.h"
#include "sysctl.h"
#include "Systick.h"
#include "Timer.h"
#include "Pwm.h"
#include "adc.h"
#include "Zlg7289.h"
#include "Type.h"
#include "Micromouse.h"
#include "Mouse_Config.h"
/*********************************************************************************************************
PB端口定義
*********************************************************************************************************/
#define __IRSEND_BEVEL GPIO_PIN_0 /* 驅動斜角紅外的調制信號 */
#define __LEFTSIDE GPIO_PIN_1 /* 左方傳感器輸出的信號 */
#define __FRONTSIDE_L GPIO_PIN_2 /* 左前方傳感器輸出的信號 */
#define __FRONTSIDE GPIO_PIN_3 /* 前方傳感器輸出的信號 */
#define __FRONTSIDE_R GPIO_PIN_4 /* 右前方傳感器輸出的信號 */
#define __RIGHTSIDE GPIO_PIN_5 /* 右方傳感器輸出的信號 */
/*********************************************************************************************************
PC端口定義
*********************************************************************************************************/
#define __KEY GPIO_PIN_4 /* 按鍵連接的端口 */
/*********************************************************************************************************
PD端口定義
*********************************************************************************************************/
#define __PHRA1 GPIO_PIN_0 /* 右側步進電機的A1相 */
#define __PHRA2 GPIO_PIN_1 /* 右側步進電機的A2相 */
#define __PHRB1 GPIO_PIN_2 /* 右側步進電機的B1相 */
#define __PHRB2 GPIO_PIN_3 /* 右側步進電機的B2相 */
#define __PHLA1 GPIO_PIN_4 /* 左側步進電機的A1相 */
#define __PHLA2 GPIO_PIN_5 /* 左側步進電機的A2相 */
#define __PHLB1 GPIO_PIN_6 /* 左側步進電機的B1相 */
#define __PHLB2 GPIO_PIN_7 /* 左側步進電機的B2相 */
/*********************************************************************************************************
PE端口定義
*********************************************************************************************************/
#define __IRSEND_SIDE GPIO_PIN_0 /* 驅動左前右正向紅外發射 */
/*********************************************************************************************************
常量宏定義--傳感器
*********************************************************************************************************/
#define __LEFT 0 /* 左方傳感器 */
#define __FRONTL 1 /* 左前方傳感器 */
#define __FRONT 2 /* 前方傳感器 */
#define __FRONTR 3 /* 右前方傳感器 */
#define __RIGHT 4 /* 右方傳感器 */
/*********************************************************************************************************
常量宏定義--電腦鼠狀態
*********************************************************************************************************/
#define __STOP 0 /* 電腦鼠停止 */
#define __GOAHEAD 1 /* 電腦鼠前進 */
#define __TURNLEFT 3 /* 電腦鼠向左轉 */
#define __TURNRIGHT 4 /* 電腦鼠向右轉 */
#define __TURNBACK 5 /* 電腦鼠向后轉 */
/*********************************************************************************************************
常量宏定義--電機狀態
*********************************************************************************************************/
#define __MOTORSTOP 0 /* 電機停止 */
#define __WAITONESTEP 1 /* 電機暫停一步 */
#define __MOTORRUN 2 /* 電機運行 */
/*********************************************************************************************************
常量宏定義--電機運行方向
*********************************************************************************************************/
#define __MOTORGOAHEAD 0 /* 電機前進 */
#define __MOTORGOBACK 1 /* 電機后退 */
/*********************************************************************************************************
結構體定義
*********************************************************************************************************/
struct __motor {
int8 cState; /* 電機運行狀態 */
int8 cDir; /* 電機運行方向 */
uint32 uiPulse; /* 電機需要運行的脈沖 */
uint32 uiPulseCtr; /* 電機已運行的脈沖 */
int32 iSpeed; /* 但前速度 */
};
typedef struct __motor __MOTOR;
/*********************************************************************************************************
常量宏定義
*********************************************************************************************************/
uint8 keyCheck(void);
void mouseInit(void);
void mouseGoahead(int8 cNBlock); /* 前進N格 */
void mazeSearch(void); /* 前進N格 */
void mouseTurnleft(void); /* 向左轉90度 */
void mouseTurnright(void); /* 向右轉90度 */
void mouseTurnback(void); /* 向后轉 */
void sensorDebug(void); /* 傳感器調試 */
void voltageDetect(void);
static void __delay(uint32 uiD);
static void __rightMotorContr(void);
static void __leftMotorContr(void);
static void __mouseCoorUpdate(void);
static void __mazeInfDebug(void);
static void __irSendFreq(uint32 __uiFreq, int8 __cNumber);
static void __irCheck(void);
static void __wallCheck(void); /* 墻壁檢測 */
static void __sensorInit(void);
static void __stepMotorIint(void);
static void __keyInit(void);
static void __sysTickInit(void);
static void __ADCInit(void);
#endif
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -