반응형
Atmega128 기초 - 8비트 타이머/카운터  Phase Correct PWM 모드
AVR/Atmega128 강좌2016. 6. 21. 17:14Atmega128 기초 - 8비트 타이머/카운터 Phase Correct PWM 모드

용어 정의BOTTOM - 카운터가 0이 되었을 때를 의미. MAX – 카운터가 0xFF(=255)에 도달했을 때를 의미 TOP TOP값은 0xFF(MAX) 또는 OCR0 레지스터에 저장된 값으로 지정할 수 있다.카운터가 TOP값과 똑같거나 더 커진 경우를 의미한다. Phase Correct PWM 모드Phase Correct Pulse Width Modulation(Phase Correct PWM) 모드는 TCCR0 레지스터의 WGM01비트는 0으로, WGM00비트는 1로 설정된 경우이다. 카운터값(TCNT0)는 BOTTOM에서 MAX로 증가하다가 다시 MAX에서 BOTTOM으로 감소하는 것을 반복한다. PWM 해상도는 8비트로 고정된다. noninverting Compare Output 모드에서는 TC..

Atmega128 기초 - 8비트 타이머/카운터 Fast PWM 모드
AVR/Atmega128 강좌2016. 6. 21. 16:02Atmega128 기초 - 8비트 타이머/카운터 Fast PWM 모드

용어 정의BOTTOM - 카운터가 0이 되었을 때를 의미. MAX – 카운터가 0xFF(=255)에 도달했을 때를 의미 TOP TOP값은 0xFF(MAX) 또는 OCR0 레지스터에 저장된 값으로 지정할 수 있다.카운터가 TOP값과 똑같거나 더 커진 경우를 의미한다. Fast PWM 모드fast Pulse Width Modulation(fast PWM) 모드는 TCCR0 레지스터의 WGM01과 WGM00비트가 1로 설정된 경우이다. 카운터값(TCNT0)는 BOTTOM으로부터 MAX까지 값이 증가하고 MAX에 도달하면 다시 BOTTOM부터 증가를 시작한다. non-inverting Compare Output 모드에서는 TCNT0와 OCR0가 일치하는 경우 output compare (OC0)가 0으로 클리어..

python으로 raspberry pi 2 제어 - 4. pwm을 이용하여 led 밝기 조절
Raspberry Pi/Raspberry Pi 활용2015. 11. 11. 00:52python으로 raspberry pi 2 제어 - 4. pwm을 이용하여 led 밝기 조절

LED의 밝기가 점점 밝아지다가 다시 점점 어두워지는 것을 세번 반복하는 예제입니다. #-*- coding: utf-8 -*- import RPi.GPIO as GPIO import time GPIO.setmode( GPIO.BOARD ) #12번핀은 출력모드로 설정 GPIO.setup(12, GPIO.OUT) pwm = GPIO.PWM(12,50) #50hz pwm.start(0) for i in range(0,3): for dc in range(0,101,5): pwm.ChangeDutyCycle(dc) time.sleep(0.1) for dc in range(100,-1,-5): pwm.ChangeDutyCycle(dc) time.sleep(0.1) pwm.stop() GPIO.cleanup()

Arduino UNO에서 DC 모터 제어
Arduino Uno2015. 2. 16. 22:44Arduino UNO에서 DC 모터 제어

PWM은 전압레벨을 제어 하여 아날로그 출력과 유사한 결과를 만들어 낼 수 있도록 해줍니다.디지털 출력 라인을 매우 빠르게 껐다 켰다 함으로써 전압을 결정 할 수 있습니다.예를 들어 아두이노의 디지털 라인은 0또는 5V의 전압을 출력할 수 있습니다. 만약 PWM을 Duty Cycle 50%로 설정한다면 평균 출력 전압은 2.5V가 되고 25% duty cycle이라면 출력은 1V가 됩니다. PWM은 아두이노 디지털 핀에서 전압을 제어 할 수 있도록 해주지만 모터를 제어하기 하기에는 전류의 제약이 있습니다. 마이크로 컨트롤러가 제공할 수 있는 전압보다 모터가 더 큰 전압을 요구하기 때문에 마이크로컨트롤러의 출력핀으로는 모터를 동작시키는데 무리가 있습니다. 그리고 또한 DC모터의 회전 방향을 조정하기 위해서..

아두이노에서 PWM을 이용하여 LED 밝기 조정하기
Arduino Uno2014. 12. 17. 21:31아두이노에서 PWM을 이용하여 LED 밝기 조정하기

다섯번째 튜토리얼은 PWM을 이용하여 LED를 좀 다른 방식으로 켜봅니다. 참조한 원본 글은http://arduino.cc/en/Tutorial/Fade 입니다. 디지털 핀에서 출력은 0V와 5V만 있기 때문에 LED를 연결해서 깜빡이게 만들더라도 켜지고 꺼지기를 반복하기만 합니다.하지만 여기에서는 크리스마스 트리에 있는 전구처럼 천천히 밝아졌다가 다시 천천히 어두워지는 효과를 만들기 위해서 AnalogWrite함수를 이용합니다. AnalogWrite의 인자로 주어지는 값이 255에 가까워지면 파형이 5V를 지속적으로 유지함으로 인해 계속 LED가 켜져있는 효과를 보여주게 됩니다. 반대로 0에 가까워지게 되면 5V를 유지하는 시간이 그만큼 짧아지기 때문에 LED가 꺼져있는 것 처럼 보입니다. pulse-..

반응형
image