0
그래서 사용중인 마이크로는 PIC 18F입니다.C-Pic 카운터 문제
Alarm_Status.bits.b3이 설정되어있어 본질적으로 스위치 일 뿐이므로 알람이 생성됩니다. 이
BS(TRISB,7); // Bund sw port=input.
DelayMs(2); // will rise is bund SW open
if(RB7){
if(Control.bits.BUND_ENABLE){ // if bund alarm enabled
if(Alarm_Status.bits.b3){ // if already set
DU_Reason.bits.EmergencyDialIn=1; // alarm!
}
}
Alarm_Status.bits.b3=0; // Bund Sw Open
}
else Alarm_Status.bits.b3=1; // Bund Sw Closed
BC(TRISB,7);
그러나 나는 스위치가 모든 초라고하는 대신 스위치가 바로 했다구 기능이 설정되어있는 경우의 일정 기간 동안 설정된 경우에만 알람이 원하는해야 같은 코드의 첫 번째 조각은 작동합니다. 누구든지 내가 잘못 가고있는 방향으로 나를 가리킬 수 있을까?
int count = 0;
int fixedCount = 20;
BS(TRISB,7); // Bund sw port=input.
DelayMs(2); // will rise is bund SW open
if(RB7){
if(Control.bits.BUND_ENABLE){ // if bund alarm enabled
if(Alarm_Status.bits.b3){ // if already set
count +=10; //count increased by 10
}
if(count == fixedCount) {
DU_Reason.bits.EmergencyDialIn=1;// alarm!
count = 0;
}
}
Alarm_Status.bits.b3=0; // Bund Sw Open
}
else
count = 0;
Alarm_Status.bits.b3=1; // Bund Sw Closed
BC(TRISB,7);
'count' 변수는 글로벌해야한다. –
"Bund"는 영어가 아닙니다. 그렇습니까? 중요한 단어처럼 보입니다. – unwind
번들 센서가 실제로 들리지는 않았는지 알고 있습니다. 분명히 아닙니다. 어쨌든 덕분에 알렉 스는 그것을 세계적으로 선언하면 좋은 환호를 받았습니다. – NewLook