📄 ploop.c
字号:
#include <absacc.h>
unsigned long xdata now_loop;
unsigned int xdata carnumber,lastcarnumber;
unsigned char xdata now_step;
extern unsigned char xdata now_uncount;
extern unsigned char xdata forsense[32];
unsigned char xdata step;
unsigned long xdata loopidd;
unsigned long xdata loopid;
phase_loop()
{
unsigned char i; /*
unsigned char xdata step;
unsigned long data loopidd;
unsigned long data loopid; */
loopid=0; now_loop=0;
loopid=XBYTE[0X8080+(now_step-1)*4];
now_loop=loopid<<24;
loopid=XBYTE[0X8081+(now_step-1)*4];
loopid=loopid<<16;
now_loop=now_loop|loopid;
loopid=XBYTE[0X8082+(now_step-1)*4];
loopid=loopid<<8;
now_loop=now_loop|loopid;
loopid=XBYTE[0X8083+(now_step-1)*4];
now_loop=now_loop|loopid; /*当前相位包含的线圈*/
carnumber=0;
for(i=0;i<32;i++){
loopid=0x00000001;
loopidd=(loopid<<i); /*单位步长*/
if((now_loop&loopidd)==loopidd){
step=XBYTE[0X8113+now_step];
if(now_uncount>step){
forsense[i]=0;
carnumber=0; /*相位绿灯剩余时间少于单位步长时驶入的车辆数*/
lastcarnumber=0;
}
else {
carnumber=carnumber+forsense[i]; /*绿灯剩余时间低于单位步长时,相位所有的车流量*/
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -