Etc/AVR 썸네일형 리스트형 PWM(Pulse width modulation) 어떠한 신호를 표현한느 모듈레이션 방법의 하나로 입력전압의 진폭정보를 일정한 전압의 펄스 폭으로 변조한다고 해서 PWM이다. 예로 0~255 까지의 사이에서 값을 가지는 어떤 이산신호를 Pulse를 이용해 표현한다고 가정할때 각각의 값에 해당하는 비율로 전압의 크기를 조절하면 된다고 생각하게 된다. 하지만 그 때에 사용하게 될 시스템이 3.3V 를 출력 한다면 신호의 각 레벨은 약 0.0128V 정도의 전압차이로 표현될 것이다. 노이즈의 영향을 고려할 때 이러한 미세한 차의 전압조절이 가능한 회로의 구현은 어려운 일이다. 또 3.3V의 출력이 100% 나타낸다면 10%의 출력을 내기 위해 0.33V의 전원이 사용되므로 나머지 2.97V는 모두 열에너지로 소비되게 된다. (낭비다.) 이를 해결하기 위해 P.. 더보기 WGM (Waveform Generation Mode) 파형 출력 모드 레지스터를 세팅하기에 따라서 Compare match, PWM 모드로 사용할 수 있습니다. 둘다 PWM으로 이용 가능하나 데이터시트를 잘 읽어보시면 방법이 조금 다릅니다. 글로 적기에는 내용이 많으니 데이터 시트를 보시고 이해하시면 쓰임새는 자연적으로 아실 수 있으리라 생각됩니다. 데이터시트에 있는 다이어그램을 이해하시고 난 후 만들고자 하는 펄스를 그리고 거기에 맞도록 TCNT의 증가 양상을 그려보시면 어느게 더 편리한지 알 수 있겠네요. PWM 쪽은 안써봐서 오늘 처음 봤는데 딱 봐도 왜 fast PWM인지 알 수 있겠네요. 더보기 OCR0 (Output Compare Register 0) CTC 모드나 F-PWM, PCPWM 모드에서 Output Compare Match 인터럽트를 발생시키는 지점을 설정하는 레지스터이다... 8비트 레지스터이므로, 0~255까지의 값을 지정할수있다.. 더보기 TCCR(Timer/Counter Control Register) Timer/Counter의 작동모드, prescaler 옵션을 설정하는 레지스터이다. 데이타 시트를 참고해서 설정한다..6, 3 번 비트는 모드선택에 쓰이고 2, 1, 0 비트는 prescaler 옵션설정에 쓰인다. 더보기 PCPWM(Phase Correct Pulse Width Modulation) PWM 과 유사하나...단 한가지 차이가... 255까지 센후에 0으로 돌아와서 다시 255까지 세는것이 아니라.. 255에서 254,253... 이렇게 255~0으로 숫자가 줄어들면서 센다.... 더보기 CTC(Clear Timer on Comare match) 최대로 세는 수를 변화시킨다.. 즉, 255까지 다 세지 않고 100까지만 세고 인터럽트를 발생시키게 한다든가 하는것이다.. 더보기 Timer / Counter 8bit Timer/Counter0 Timer/counter0 는 범용 타이머로서 sigle channel 이며 8bit로 구성되어있다. - single channel counter - clear timer on compare match (auto reload) - 글리치 없는 Phase correct PWM - 주파수 발생 기능 - 10bit prescaler 기능 - Timer0 Overflow Interrupt 와 Timer0 Compare match interrupt - IO 클럭과는 별도로 32.768KHz를 인가 가능한 핀(TOSC1, TOSC2) Prescaler 는 자유 증가형(free-running) 으로 다른 Timer/counter 와는 별개로 독립적으로 동작한다. 그러므로 한번 설정.. 더보기 Timer example #include #include #include // MCU I/O MODE #define MCU_IO_MODE_PORT_LED0b00001111// Port Led IO Mode // MCU I/O bit position #define MCU_IO_PORT_LED_0_OFF0b00000001// Port LED 0 OFF : PB0 #define MCU_IO_PORT_LED_1_OFF0b00000010// Port LED 1 OFF : PB0 #define MCU_IO_PORT_LED_2_OFF0b00000100// Port LED 2 OFF : PB0 #define MCU_IO_PORT_LED_3_OFF0b00001000// Port LED 3 OFF : PB0 // TCCR0(timer/counte.. 더보기 바이패스 컨덴서 Link : http://cafe.naver.com/carroty.cafe 왜 크리스탈 옆에는 거의 항상 22pF 컨덴서를 다는가? Vcc와 GND 사이의 104 컨덴서는 무슨 역활을 하는가? 두번째에 대한 해답은 어느 정도 찾았습니다. 복잡한 수식 빼고 결론만 간단히 말하겠습니다. 컨덴서가 전하를 충전하는 것은 모두 알고 있을것입니다. 문제는 Vcc가 거의 항상 5V로 주고 있음에도 불구하고 전하를 충전해서 도대체 모하자는 건지가 궁금했습니다. 전원이 5V 됐다가, 7V 됐다가, 3V 됐다가 이렇게 떨어진다면 차라리 용량이 큰 컨덴서를 달지 쪼끄마한 104짜리를 달아서 별로 충전도 안되는 컨덴서를 모하러 달까 하는 것이 궁금했습니다. 결론적으로 얘기해서 이런 컨덴서를 "바이 패스 컨덴서"라고 합니다. .. 더보기 CMOS(Complementary Metal Oxide Semiconductor) 증가형 MOSFET 소자들을 사용한 디지털 로직 IC 더보기 이전 1 2 3 4 ··· 6 다음