no image
Shift Register - 74HC595
Shift Register FND(Flexible Numeric Display)를 다룬다고 가정해 보자. 한 자리 숫자만을 출력해도 8개의 핀이 필요하다. 이런 경우 시프트 레지스터를 활용하여 하나의 핀으로 8개의 output을 제어할 수 있다. (약간의 delay는 생긴다.) 74HC595 Q0 ~ Q7 : parallel output pins of register DS : Serial data input pin SHCP : shift register clock pin STCP : storage register(Latch) clock pin OE : output enable, Latch의 출력을 끌 수 있다. MR : master re-clear, 시프트 레지스터를 reset 할 수 있다. Shift ..
2024.02.19
no image
아두이노 DAC, PWM
Digital-to-Analog Converter (DAC) 아두이노는 DAC기능이 없어 연속적인 아날로그 값을 만들 순 없지만 PWM을 이용해 비슷한 기능을 할 수 있다. (UNO R4는 있는 듯) Pulse Width Modulation (PWM) LED 밝기 조절을 예시로 살펴보자. 어떻게 전압의 펄스 폭 조절이 밝기에 변화를 줄 수 있을까? => 펄스의 주기는 매우 빠르기 때문에 사람 눈으로 본다면 펄스 폭이 50%인 것은 밝기가 50%인 것과 같게 보인다. 아두이노의 AnalogWriteMega.ino example을 실행시켜보자. const int lowestPin = 4; const int highestPin = 6; void setup() { // set pins 2 through 13 a..
2024.02.18
no image
I2C Communication
Inter-Integrated circuit communication I, 2개를 따서 I2C 통신이라 부른다. 일대다 통신이 가능하다. 하나의 Master node와 여러 개의 Slave node 가 있다. Two-pin protocol SDA (Serial data): data transmission SCL (Seerial clock): clock transmission = 동기를 맞추는 역할을 한다. 위의 2개의 핀으로 통신한다. Timing diagram Free state - SCL과 SDA 둘 다 HIGH인 상태로 시작한다. Start condition - SDA가 LOW가 되면 Slave node 들은 데이터를 수신할 준비가 된다. I2C는 일대다 통신으로 Master가 통신할 slave n..
2024.02.17