1 #include "reg52.h"
2 //------------------------------------------------------------------------------------
3 // 定义差距输入常量
4 #define GAP_ZERO 0x00
5 #define GAP_VSMALL 0x01
6 #define GAP_SMALL 0x02
7 #define GAP_MEDIUM 0x03
8 #define GAP_BIG 0x04
9 // 定义控制输出常量
10 #define TURN_ZERO 0x80
11 #define TURN_VSMALL 0x81
12 #define TURN_SMALL 0x82
13 #define TURN_MEDIUM 0x83
14 #define TURN_BIG 0x84
15 //-------------定义常量----------------------------------------------------------------
16 #define MU_MAX 0XFF //模糊度的最大值为0XFF代表面1
17 #define RULE_TOT 10 //规则数个数
18 #define MF_TOT 5 //成员函数的个数
19 #define IO_NUM 0x07
20 #define LABEL_NUM 0x70
21 #define DEFAULT_VALUE 0x00
22 //----------------定义数据库-----------------------------------------------------------
23 unsigned char code output_memf[MF_TOT]={0, 15, 35, 60, 102};// OUTPUT TURNING NUMBER:
24 // ZERO, VSMALL, SMALL, MEDIUM, BIG
25 // 输入功能函数以点斜式方式存储. 第一维成员函数标号第二维是点斜式数据
26 unsigned char code input_memf[MF_TOT][4]={ //距离功能函数
27 { 0x00, 0x00, 0x00, 0x0d }, // VSLOW
28 { 0x00, 0x0d, 0x14, 0x0d }, // SLOW
29 { 0x1e, 0x0d, 0x32, 0x0d }, // MEDIUM
30