📄 var.h
字号:
/***************************************************/
/* 超声波测距传感器 */
/* —— 变量定义 */
/* 20080222 */
/* By DingQi */
/***************************************************/
// 注:以下文档的 TAB 为 2 个字符!
// 工作模式控制
unsigned char g_ucWorkMode; // 工作模式,高半字为主模式控制,低半字为子模式控制
unsigned char g_ucModePara; // 工作模式相应的参数,对应自动模式为测量周期,单位 10ms
// 对应单次模式为测量次数;
unsigned char gc_ucMeaPeriodCnt; // 自动模式下,测量周期计时,单位 10ms
unsigned char gc_ucMeaTimesCnt; // 单次测量模式的数据采集次数计数
// 通讯
unsigned char idata ga_ucRcvBuf[MaxRcvByte_C]; // 接收缓冲区
unsigned char data gi_ucSavePtr; // 存数指针,每收到一个字节保存到缓冲区后加“1”。
unsigned char data gi_ucGetPtr; // 从缓冲区中取数的指针,每取出一个字节后加“1”。
unsigned char idata gi_ucStartPtr; // 帧起始位置,指向数据区开始。
unsigned char idata gi_ucEndPtr; // 帧结束位置。
unsigned char idata gc_ucDataLen; // 帧长,即数据区字节数。
bit g_bNewData; // 串口收到一个字节标志,为减少变量交互。
bit g_bStartRcv; // 开始接收数据帧标志。
unsigned char idata ga_ucTxdBuf[MaxTxdByte_C]; // 发送缓冲区,用于返回数据。
unsigned char data gi_ucTxdPtr; // 发送指针
unsigned char data gc_ucTxdCnt; // 发送字节计数
unsigned char g_ucSenderAddr; // 保存命令发送者的地址,为了自动返回数据
bit g_bTxdFinish; // 数据发送结束标志
// 工作状态
unsigned char data g_ucWorkStat; // 工作状态
bit g_b1msFlag; // 1ms中断标志
unsigned char gc_uc10msCnt; // 10ms 计数器
unsigned int data gc_uiWdtCnt; // WDT清除计数器
// 测量
unsigned int idata ga_uiMeaData[DATA_SAVE_NUM]; // 测量结果保存数组,单位mm,数值范围:0 - 65535mm
unsigned char data gi_ucDataSavePtr; // 数据保存指针
unsigned char data gc_ucUltraSonic_T_Cnt; // 发送超声波脉冲计数
unsigned char code ga_uiUS_T_PulsWidth[2]={136,136}; // 超声波脉冲的高低电平时间,根据具体的波形调整!
bit g_bUltraSonicDrvValid; // 超声波输出驱动有效标志
typedef union
{
unsigned int all;
unsigned char b[2];
}timer_val;
timer_val data g_uiStopTime; // 检测超声波结束时刻的 PCA 计时器值,因为从“0”开始,所以不要起始值
unsigned char data gc_ucPCA_OverCnt; // PCA 计时器溢出计数,与上面值组合得到超声波的到达时间值
unsigned char g_ucPCA_OverVal; // PCA 计时器溢出值
timer_val data g_ui852GainCtrlTime; // TL852 增益控制时间点,PCA的比较值
unsigned int code ga_uiDeltaTime[11] = {26320 - CUT_OFF_DELAY,30358,30358,30358,30358,30358,30358,30358,60715,60715,60715};
unsigned char data gc_ucGainCtrl_No; // 增益控制序号
bit g_bGainCtrl; // 增益控制标志
unsigned char gc_ucGapAtSingleMea; // 单次测量模式中多次数据采集间的间隔时间, 1ms 计数
// 工作状态指示
unsigned char g_ucWorkDispStat; // 工作显示状态
unsigned int gc_uiWorkDispTimeCnt; // 工作指示灯亮、暗计时, 单位: ms
unsigned char gc_ucWorkDispNumCnt; // 显示次数计数,显示结束后回到正常状态
unsigned int code ga_uiWorkDispTime[3] = {NORMAL_DISP,UART_DISP,MEA_OK_DISP};
unsigned char code ga_ucWorkDispNum[3] = {NORMAL_NUM,UART_NUM,MEA_OK_NUM};
// debug
unsigned char gc_ucINT1_Cnt;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -