/**************************************************************************
SYSU-ROBOT-2011
SYSU-LXIONGH
VERSION 1.0
LAST UPDATE: 2011年04月06日
--------------------------------------------
Code Warrior 5.0
Target : MC9S12XS128
Crystal: 16.000Mhz
***************************************************************************/
./Includes 包含所有方法的声明部分
os_cfg.h 可配置,所有功能的配置信息.修改此处完成不同的功能.
OS_BUS_CLK 主频设置
OS_SCIx_EN 串口使能
OS_SCIx_RATE 波特率设置
OS_ATD_RSLT AD转换精度
OS_ATD_SMP_DIS_EN 转换前是否放电
OS_ATD_SCI_EN 转换完成是否产生中断
OS_ATD_SxC_SEL 转换序列长度设置
OS_ATD_SMPx_SEL 采样周期长度设置
OS_ATD_PRS 采样时钟分频
OS_ATD_MULT 多通道选择
OS_ATD_SCAN 连续转换设置
OS_ATD_CHANNEL 起始转换通道
OS_ATD_DI_CFG 数字选择允许控制
OS_PWM_EN PWM使能
OS_PWM_POL PWM极性选择
OS_PWM_CLK PWM时钟选择
OS_PWM_PRCLKx PWM预分频后时钟频率
OS_PWM_SCLx PWM再分频后时钟频率
OS_PLUS_EN 软件脉冲累加使能
OS_PLUS_EDGE 触发沿选择
OS_PLUS_PT7 硬件累加使能
OS_PIT_EN PIT使能
OS_PIT_CLK 时钟选择
OS_PITx_PER 定时长度设置
OS_IOH_INT_EN 此版本不能设置
OS_IOH_INT_EDGE 此版本设置无意义
OS_IOJ_INT_EN PJ口中断允许控制
OS_IOH_INT_EDGE PJ口中断触发沿选择
os_xs128.h 包含有所有的头文件,主程序中只加入该头文件即可.
set_adc.h 不可修改,AD部分的函数声明
unsigned char* GetATD(unsigned char); ---8bit 返回相应通道的AD值
unsigned char* GetATDArray(void) 返回AD采样数组
unsigned int* GetATD(unsigned char); ---10,12bit 返回相应通道的AD值
unsigned int* GetATDArray(void) 返回AD采样数组
set_bus_clk.h 不可修改,时钟频率设置函数声明
void SetBusClk(void);
set_io.h 不可修改,PH口与PJ口设置,LED亮灭声明
void InitIO(void); 初始化相关IO口
unsigned char GetPortH(unsigned char mark); 得到H相应口的的值
void SetPortH(unsigned char mark); 置位H相应口的值
void ClrPortH(unsigned char mark); 复位H相应口的值
void NotPortH(unsigned char mark); 取反H相应口的值
unsigned char GetPortJ(unsigned char mark); 得到J相应口的的值
void SetPortJ(unsigned char mark); 置位J相应口的值
void ClrPortJ(unsigned char mark); 复位J相应口的值
void NotPortJ(unsigned char mark); 取反J相应口的值
set_lcd12864.h 不可修改,LCD12864相关函数声明
void SetAddress(unsigned char line,unsigned char column); 设置LCD写开始地址
void WriteChar(char dat); 向LCD写入一个字符
void WriteString(char *dat); 向LCD写入一串字符
set_pit.h 不可修改,XS128里面四个计时器相关声明
void InitPIT(void);
void SetPitTicks(unsigned char ch,unsigned char ticks) 设置相应PIT通道的定时间隔
set_plus.h 不可修改,输入捕捉充当软件脉冲累加功能
void InitPlus(void); 初始化PT相应口为输入捕捉功能,用作软件累加器
unsigned int GetPlusCnt(unsigned char ch); 得到相应通道的计数值
void ClrPlusCnt(unsigned char ch); 清除相应通道的计数值
unsigned int* GetPlusCntArray(void); 得到计数指针
void ClrPlusCntArray(void); 清除所有的计数值
set_pwm.h 不可修改,8路PMW功能模块函数声明
void InitPWM(void);
void SetPWMdty(unsigned char ch,unsigned char duty);
set_sci.h 不可修改,两个串口模块函数声明
void InitSCI0(void); 初始化串口0
unsigned char Uart0GetChar(void); 从串口0得到一个字符
void Uart0PutChar(unsigned char ch); 从串口0发送一个字符
void Uart0PutStr(char ch[]); 从串口0发送一串字符
void InitSCI1(void); 初始化串口1
unsigned char Uart1GetChar(void); 从串口1得到一个字符
void Uart1PutChar(unsigned char ch); 从串口1发送一个字符
void Uart1PutStr(char ch[]); 从串口1发送一串字符
func_hook.h 不可修改,函数钩子声明,用于中断相关连调用,保持代码的可维护性
void Uart0Hook(unsigned char buf); 串口0接收中断函数钩子
void Uart1Hook(unsigned char buf); 串口1接收中断函数钩子
void PIT0Hook(void); 定时器0中断函数钩子
void PIT1Hook(void); 定时器1中断函数钩子
void PIT2Hook(void); 定时器2中断函数钩子
void PIT3Hook(void); 定时器3中断函数钩子
void PortJ0Hook(void); J0外部中断函数钩子
void PortJ1Hook(void); J1外部中断函数钩子
void PortJ6Hook(void); J2外部中断函数钩子
void PortJ7Hook(void); J3外部中断函数钩子
void PacketRecvDone(unsigned char* m_ucData); 数据包接收完毕函数钩子
./Sources 包含所有方法的实现部分
func_hook.c 可修改,每个必要的中断都要对应一个钩子,以保持代码的可维护性
set_adc.c 不可修改,AD部分的函数实现
set_bus_clk.c 不可修改,时钟频率设置函数实现
set_io.c 不可修改,PH口与PJ口设置,LED亮灭实现
set_lcd12864.c 不可修改,LCD12864相关函数实现
set_pit.c 不可修改,XS128里面四个计时器相关实现
set_plus.c 不可修改,输入捕捉充当软件脉冲累加功能
set_pwm.c 不可修改,8路PMW功能模块函数实现
set_sci.c 不可修改,两个串口模块函数实现