회원가입 ID/PW 찾기
AA

저는 졸업논문으로 리모컨을 만들려구합니다. 수신부와 발신부 전부 다요ㅋㅋㅋ 근데 문제는 몇개월째 매달려잇네요;;
암튼.. 제가 펄스를 ir led를 통해서 전송 시킬려구 pwm을 건들려구 합니다

근데 맘대로 안되네요
일단 눈으로 확인 할 수 있도록 주기를 2초로 주고 싶어서 코딩을 해봤습니다.
계속 LED가 켜져잇네요;;좀 꺼주고 싶은데..
주기 계산법이 잘 못 되있는거같은데..전 잘 모르겟어요;;

그리구 적외선 통신할때 PWM을 굳이 써야하나요??좀 더 간단한 방법은 없을까요??
아!! 그리구 timer0를 가지고 만들고 싶어요;;;   pwm 파형을요;;
또!! ir 리모컨 좀더 쉽게 만들수 있는 방법은 없을까요??


#include <mega128.h>
#include <delay.h>

unsigned int led=0;

interrupt [TIM0_OVF] void timer0_ovf_isr(void)     // 인터럽트 벡터
{
   
    TCNT0=131;     //주기를 2초로 하고 싶어서;; f=16Mhz / { 8*256 *15625 (=125*125) }=0.5hz
    led++;
    if(led>=125)      // 1초 동안 led on
        PORTB.4=1;
 
    else if(led==250)  // 1초후에 led off
    {   
         PORTB.4=0;
         led=0;
    }
 }

void timer0_init()  // timer0 초기화
{
    TCCR0=0x6a;    // 분주비 8 , fast pwm , top에서 set
    OCR0=128;       // duty 비  50:50
    TCNT0=131;
    TIMSK=3;
}

void init();

void main(void)
{
    init();
    timer0_init();
    while (1)
      {
      }
}

void init()
{
PORTB=0x00;
DDRB=0xff;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: 16000.000 kHz
// Mode: Fast PWM top=FFh
// OC0 output: Disconnected
ASSR=0x00;
TCCR0=0x49;
TCNT0=0x00;
OCR0=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x01;
ETIMSK=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// Global enable interrupts
#asm("sei")
}

128
댓글 4
  • No Profile
    흠 통신 할때 pwm 필수로 사용해야 된다는말은 처음 들어봅니다.

    그리고 주기 계산 틀렷구요

    atmega128 데이터 시트에 나옵니다만

    그리고 레지스터 설정 부분인데요

    처음 초기 설정값과는 다르게 init 함수에 레지스터를 설정하셨네요 ..

    pwm 같은데 타이머가 동작 할까요?

    좀 더 고민하시고 공부하셔서 질문하시는게.....

  • WOW님께
    No Profile
    글쓴이 128 10.10.29 18:45 댓글 좋아요 0 싫어요 0
    init() 함수에 레지스터는 제가 설정한게 아니고 타이머0를 사용한다고 지정했을때
    자동적으로 설정된거라서 그냥 놔둔건데 이것도 바꾸어야하나요??
    avr 지식이 많이 없다보니 자꾸 짧은 질문만 하게 됩니다;;

    그리구 댓글 감사합니다^^
  • No Profile

    통신은 PPM 신호 아니였나요? 잘 확인해 보심이 좋을듯... 그리고 만약 PPM 신호라면 PWM 이 아니라 TIMER 로 하셔야 합니다.^^


     

  • 밍크코트님께
    No Profile
    글쓴이 128 10.10.29 18:45 댓글 좋아요 0 싫어요 0

    댓글 감사합니다
    ppm도 해볼께요 ㅎㅎ얼른 avr을 능수능란하게 쓰는 날이 왓음 좋겟군요ㅠㅠ

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
95 중고장터 HOTDEMO9RS08KASP FREESCALE EVALUATE BOARD 아크마 6264 2011.05.22
94 중고장터 HOT산켄 SLA7044M 및 PG001M 구합니다 밝은전기구슬 5028 2011.03.21
93 중고장터 HOT이노룩스 10.2인치 lcd 팝니다...1 스포츠광 6643 2011.03.18
92 중고장터 HOTATMEGA128 2개 팝니다 btnim 6879 2011.03.17
91 중고장터 HOTAT89S8253 24JC 수량24개 있습니다. 필요하신분께 드립니다1 초록 5099 2011.03.10
90 중고장터 HOTSTM32F103ZET 판매 아크마 5246 2011.02.27
89 중고장터 HOT8086 / 8088 어셈블러 관련 책 구해요 상혁짱 5756 2011.01.22
88 중고장터 HOT빵판 구해봅니다.6 상혁짱 4326 2011.01.22
87 중고장터 HOTencoder knob 구하고 있습니다.1 blackpearl 5724 2011.01.20
86 중고장터 HOTAVR, DSP 테스트 보드 제팔 6629 2011.01.18
85 중고장터 HOTKUT-128 KIT와 교재 비닐도 뜯지 않은 새 것입니다.1 짬짜미 6837 2010.12.31
84 중고장터 HOTAVR 테스트키트와 책을 같이 구매하고 싶습니다 orcad 4197 2010.12.02
83 중고장터 HOTavr 카운터 시계 파실분없나여?4 땡가드 4533 2010.11.27
82 중고장터 HOTavr128 교육용키트 싸게파시는분있으신가여?5 seohwan16 3906 2010.11.21
81 중고장터 HOT[서적] [마이크로칩 마이크로컨트롤러 응용] 모터콘트롤, 마이크로 컨트롤러 이해와 응용(마이크로칩 16비트) 삽니다.. 꾼뭉 4868 2010.11.18
80 중고장터 HOTPROVSM 6 정품 시디 구해 봅니다.1 열이 4660 2010.11.10
79 중고장터 HOT3d tv 구동칩 구합니다 Optimist_영 3835 2010.11.10
78 중고장터 HOT불루투스 송수신 모줄 저렴하게 구해봅니다 .1 산수유 3400 2010.11.02
77 중고장터 HOTICD-U40 팝니다. bluewing 4456 2010.10.06
76 중고장터 HOT마이크로 로봇 ATMEGA128 트레이닝킷 판매합니다.6 bluewing 5065 2010.10.06
  • 지식보다는 상상력이 더욱 중요하다.
    - 알베르트 아인슈타인
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.