전체 글 64

Timer/Counter + Motor

진행하면서 궁금했던 점 Q.) 타이머/카운터를 통해 만들어진 파형을 모터로 전달하는 코드가 어느 부분일까? PB7이 OC2와 연결되어 있어서 PB7을 출력으로 설정(DDRB = 0xC0;)하면 파형이 알아서 모터로 전달되는가? A.) 타이머/카운터가 pwm모드로 되어있고 prescaler와 ocr값을 설정해주면 포트b의 oc핀으로 출력이 나간다. Q.) PB6와 PB7을 통해 회전방향을 설정하지 않아도 될까? 아니면 디폴트값이 있는가? A.) pwm을 쓰지 않는 경우에는 PB6,7을 통해 회전방향을 조정하지만, pwm을 사용하는 경우에는 PB7만 가지고 조정하기 때문에 한 쪽 방향만 출력된다. PB6을 연계하는 방법도 있긴 하다. 따라서 회전을 멈추고 싶다면 단순히 포트에 값을 내보내는 것 보다는 타이머..

카테고리 없음 2021.12.02

타이머/카운터 + 버저

# Timer/Counter0 1. 비트 수 : 8비트 2. 카운터 입력 : TOSC1 3. 관련 Resister : TCCR0, TCNT0, OCR0, ASSR, SFIOR, TIMSK, TIFR 4. 동작모드 : Normal, PC PWM, CTC, Fast PWM 5. 입력신호 : T0 6. 출력신호 : OC0 7. 인터럽트 : overflow interrupt, output compare match interrupt # Waveform Generator 1. WGMn1:0 : 4가지 모드 선택 2. COMn1:0 : 파형출력모양 선택 # 타이머/카운터의 4가지 모드 1. 일반모드 - overflow interrupt사용 - up 카운터 2. PC PWM - output compare match i..

학습/ATmega128 2021.11.29

순환(recursion) 구조

순환(recursion) : 알고리즘이나 함수가 수행 도중에 자기 자신을 다시 호출하여 문제를 해결하는 기법 - 함수 호출의 오버헤드 (수행시간, 메모리) - 순환적인 문제 해결에는 자연스러우나, 비효율적인 경우도 있음 순환구조를 사용했을 때 비효율적인 경우 (피보나치 수열) - 같은 항이 중복되어 계산됨 - clock( )를 이용해 실행 시간을 확인해본 결과 반복 구조보다 비효율적임