아두이노 썸네일형 리스트형 아두이노 - PE43712 Attenuator SPI 통신 PE43712 Attenuator SPI 통신 Peregrine Semiconductor 라는 회사의 PE43712 Attenuator 를 컨트롤 해보자. PE43712는 RF 신호를 원하는 dB 만큼 줄여주는 감쇠기이다. 감쇠 범위는 0 ~ 31.75 dB 이다. PE43712의 통신 방식은 두가지 이다. 병렬(Parallel)과 직렬(Serial). 이 두가지 중 직렬(Serial) 방식 통신을 하려고 한다. 직렬 방식 통신은 SPI 통신이다. 아래는 PE43712와 ATmega328P-AU 회로도이다. PE43712에 필요한 SPI통신 신호선은 -칩 선택신호 -SCK 클럭신호 -MOSI 데이타 신호 이렇게 세가지이다. MCU로 입력되는 MISO는 필요없기 때문에 사용하지 않는다. PE43712의 S.. 아두이노 - Pin Change Interrupt (ATtiny85 사용), Arduino Pin Change Interrupt (ATtiny85 사용), Arduino Pin Change Interrupt 란? 핀으로 입력되는 신호의 레벨이 바뀔 때 발생하는 인터럽트이다. 예를들면 신호가 High에서 Low로 바뀔 때 인터럽트가 발생하고, 반대로 Low에서 High로 바뀔 때도 인터럽트가 발생한다. 가장 기본이되는 코드는 아래와 같다. void setup() { GIMSK = 0b00100000; // turns on pin change interrupts PCMSK = 0b00010011; // turn on interrupts on pins PB0, PB1, PB4 sei(); // enables interrupts } void loop() { } ISR(PCINT0_vect) { // .. 이전 1 다음