«isr» 태그된 질문

3
입력이 변경 될 때 함수를 자동으로 호출 할 수 있습니까?
현재 스케치는 메인 루프를 돌 때마다 입력 핀을 확인하고 있습니다. 변경을 감지하면 사용자 정의 함수를 호출하여 이에 응답합니다. 다음은 코드입니다 (필수 항목으로 정리). int pinValue = LOW; void pinChanged() { //... } void setup() { pinMode(2, INPUT); } void loop() { // Read current input int newValue = digitalRead(2); // …
21 pins  interrupt  isr 

2
Arduino에서 함수 포인터 할당은 원 자성입니까?
다음 스 니펫은 TimerOne 라이브러리 소스 코드 에서 가져온 것입니다 . // TimerOne.h: void (*isrCallback)(); // TimerOne.cpp: ISR(TIMER1_OVF_vect) // interrupt service routine that wraps a user defined function supplied by attachInterrupt { Timer1.isrCallback(); } // TimerOne.cpp: void TimerOne::attachInterrupt(void (*isr)(), long microseconds) { if(microseconds > 0) setPeriod(microseconds); isrCallback = isr; // …

1
변수가> 1 ISR에서 액세스되지만 ISR 외부에서 공유되지 않는 경우 휘발성이 필요합니까?
있어 명확하게 문서화 된 글로벌 데이터가 ISR 및 메인 프로그램과 공유 될 때, 데이터 요구가 선언 할 것을 volatile보증 메모리 가시성하기 위해 (그리고 그것은 단지 1 바이트 데이터에 충분하다; 아무것도 더 큰 요구도 보장 자성 특별한 조치를) . 여기 좋은 규칙이 있습니다. ISR 외부에서만 사용되는 변수는 변동성이 없어야합니다. ISR 내부에서만 …
9 interrupt  timers  isr 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.