회원가입 ID/PW 찾기
AA
안녕하세요.
AVR128 교육용 보드에 달려있는 부저로 멜로디 음를 내려고 합니다.
PFC PWM 타이머를 이용해서 음을 만들려고 시험삼아 먼저 피아노로 라 음에 해당하는
소리가 지속적으로 나오게 하려고 하는데 안돼네요.

제가 가지고 있는 보드는 클럭이 14.7456MHz이고 부저는 PORTG.4에 연결되어있습니다.
제가 짠 소스는 이렇습니다.

#include <mega128.h>

long Play_Key = 0;
bit flag = 0;

void init(void)
{
DDRB = 0xFF;
PORTB = 0xFF; // PORTB 출력 LOW ,핀의 출력 설정

TCCR3A = 0x41;                         //16비트, PFC PWM 모드, 비교일치에서 OCnA 출력을 토글
TCCR3B = 0x12;                         //분주비 8
TCCR3C = 0x00;
TIMSK = 0x10;
ETIMSK = 0x10;

OCR3AH = (Play_Key & 0xff00) >> 8;
OCR3AL = (Play_Key & 0x00ff);
}

interrupt [TIM3_COMPA] void int_timer3_comp(void)
{
flag = ~(flag);
}

void main(void)
{
sei();                          // SREG |= 0x80;
init();
Play_Key = 2095;          // PFC PWM 공식에 라음 주파수를 대입해 계산한 OCR값입니다.

while(1)
{
if(flag == 1)
{
PORTG = 0x10;
PORTB = 0x00;
}
else
{
PORTG = 0x00;
PORTB = 0xff;
}
}
}

타이머가 제대로 작동하는지 볼려고 PORTB에 해당하는 LED를 넣었는데 불이 들어오는걸 봐서는..
타이머 문제는 아닌것 같고.. 어떤 부분이 잘못됐는지.. 처음 접근부터가 잘못됐는지 모르겠습니다..
C언어를 처음 접한게 3개월 전 입니다.;;;; 전공이 기계공이라 전자회로쪽으로도 문외한이구요..
소스 문제일 가능성이 거의 100%인데..ㅋ;; 아무리 책이나 인터넷 뒤져봐도 모르겠습니다...ㅜㅜ..
부저음 내는 소스 저렇게 하면 안돼나요? 도와주세요~~
댓글 2
  • No Profile
    그냥 간단히 살펴보니 타이머3에 의해 출력핀을 계속 토글하는 것으로 되어있네요
    토글하는 주파수가 "라"음에 해당한다면 계속해서 나올것입니다.
  • No Profile
    pwm을 이용하여 주파수를 가변 시켜야 음이 바뀌겠지요... 타이머를 이용하여 일정한 시간마다 출력 주파수를 가변해 보시면 확인이 가능할듯 합니다.

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

search
번호 분류 제목 글쓴이 조회 수 날짜
1827 자유주제 HOT가입 한시간만에 정회원 달기 프로젝트~~!!12 KoBi 3273 2010.08.29
1826 자유주제 HOT유용한 자료들이 많은것 같은데.. ㅠ.ㅠ9 KoBi 3668 2010.08.29
1825 자유주제 HOT납아~~~9 하늘저아래 3182 2010.08.28
1824 자유주제 HOT잡스와 빌 게이츠의 대화18 푸켓 1625 2010.08.27
1823 자유주제 HOT납 학인 어떻게 해요..5 dmz1723 3506 2010.08.27
1822 자유주제 HOT실시간 광고?;;4 사티로스 3523 2010.08.26
1821 자유주제 HOT흠 정회원되기 힘드네요 ㅠ6 강경식 14587 2010.08.26
1820 자유주제 HOT고군분투에 적힌글 답변 win7이 설치안될때 이야기2 부끄럽꾸로 2953 2010.08.26
1819 자유주제 HOT가입 한시간만에 100납 채우기 성공17 부끄럽꾸로 4713 2010.08.26
1818 자유주제 HOT복학 3일차 어깨가 매일 아파요ㅠㅠ4 온니무 3392 2010.08.25
1817 자유주제 HOT납확인 방법?6 abba291 3708 2010.08.25
1816 자유주제 HOTPCB 패턴폭 10A 정도 흘려야 하는데 크기가 어느정도 되어야 하는지 ?2 당당 7377 2010.08.25
1815 자유주제 HOT자산의 납 확인 어디서 하나요?4 봉만이 4376 2010.08.24
1814 자유주제 HOT시스템 업그레이드..13 아크마 4651 2010.08.22
1813 자유주제 HOT확인했습니다2 절대초보 9137 2010.08.18
1812 자유주제 HOT후...납100...힘드네요ㅡㅠ21 KIAPEK 11525 2010.08.17
1811 자유주제 HOTzigbee를 이용한 자율 주행 로봇2 졸뿌 4898 2010.08.16
1810 자유주제 HOT잠시 쉬어갑시다27 졸뿌 1702 2010.08.16
1809 자유주제 HOT오실로 스코프에 프로브를 접촉하면 동작을 하고4 만년필 3989 2010.08.16
1808 자유주제 HOT정보를 검색하고 들어왔는데... ㅎㅎ6 만년필 3652 2010.08.16
Prev 1 ... 39 40 41 42 43 44 45 46 47 48 ... 135 Next
  • 하나님 이외에는 그 누구도, 그 무엇도 두려워 할 필요는 없다.
    - 간디
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.