회원가입 ID/PW 찾기
AA
현재 이소스를 사용하여 ADC해서 PWM까지 하고 있는데요.. 여기서 문제가 생겼습니다..
두가지의 문제에 직면했습니다. ㅠㅠ
1. 첫째는 ADC정확도를 높히기 위해서 평균을 내기위해서 만든 소스가 말을 듣지 않습니다. 어떤부분이 문제 인지 잘모르겠습니다.. 현재 계속 공부중인데.. 정말 어렵네요..
 
2. 두번째는 PWM의 전압출력이 어느정도의 값을기준으로 높아지면 신호를 떨어뜨리고 다시 낮아지면 신호를 올려주는 타이밍을 if작업을 통해서 만들어야 하는데요.. 이건 정말 어디부터 시작을 해야하는지 모르겠습니다..
 
@@현재 제가 만든소스와 ADC평균을 추가 해서 만들어본 소스를 올려놓겠습니다..
부디 고수님들의 소중한 한마디를 기다리겠습니다. 꾸벅...
 
댓글 3
  • No Profile

    납이 안되서리.. 소스를 보질 못하겠네요.. ㅠㅠ
    이렇게 해보심이...

    // ------------------------------------------------------------------------------------------- //
    unsigned int ADConversion(unsigned char channel) 
    {
           ADMUX = channel | 0xC0; 
           ADCSRA |= 0x40; 
          while( !(ADCSRA & 0x10)) Nop(1);

          return ADC;

    // ------------------------------------------------------------------------------------------- //
    void ADAverageResult(unsigned char mode)  
    {
     unsigned char iii;

     for(iii = 0; iii < TOTALCNT; iii++)                          // TOTALCNT = 16이면 16번을 더해서 평균 함.
            TotalDataBuffer[mode] += ADConversion(mode);
     
     TotalDataBuffer[mode] /= TOTALCNT;  
     AverageDataBuffer[mode] = TotalDataBuffer[mode]; 
     TotalDataBuffer[mode] = 0x00; 
    }

  • No Profile
    ADC가 제대로 동작은 하는지요? ADC는 기준전압을 기준으로 현재 AD포트로 들어오는 전압을 디지털화된 값으로
    출력해주는것입니다. 5V Vref를 10bit분해능이 있는 ADC를 사용한다면...AD레지스터의 1값은 몇 V일까요?
    제가 문제를 내버리네요...ㅠㅠ..평균값을 사용함은 ADC의 값이 정확하지 않기에 8번정도의 ADC를 통해 나오는 값을 /8로 평균값을 내는것에 불과합니다.
  • No Profile

    납이 부족해서 소스를 읽어볼 수가 없네요 ㅜㅜ

     

    일단은 ADC가 잘 되는지부터 파악하는게 우선인 듯 싶습니다. 평균처리를 하지 않고 순수 ADC값만을 받아서 Usart를 통해 출력해 보세요.. 일단 이 작업을 하였을때 문제가 없다면, 그다음 이동평균을 하시면 되겠습니다.

     

    그다음 PWM은 우선은 PWM을 만드시고 듀티비를 조절하시면 될 것 같습니다.

     

    보통 fast pwm 일 경우 OCR 값에 변화를 줘서 듀티비를 바꾸겠죠...?

     

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

search
번호 분류 제목 글쓴이 조회 수 날짜
812 마이크로프로세서 HOTatmega16을 이용한 작업을 하려고 합니다. 개발환경이 궁금합니다.2 고니77 1549 2010.12.10
811 마이크로프로세서 HOT고수님께 질문드리겠습니다..2 촌철살인 1353 2010.12.10
810 마이크로프로세서 HOT8051 주파수 측정기 소스때문에..5 지안이기여워 2546 2010.12.10
809 펌웨어 & 코딩언어 HOTrs232 통신프로그램.. 예딩 2360 2010.12.06
808 마이크로프로세서 HOTㅣ297+7026 으로 스텝모터제어 질문입니다 건들면터져 2921 2010.12.04
807 마이크로프로세서 HOT기본적인건데 틀을 잘못잡겠네요 ㅠㅠ3 김나나 1674 2010.12.04
806 마이크로프로세서 HOT스위치를 이용해서 LCD 문자 입력하기2 김나나 1855 2010.12.04
805 마이크로프로세서 HOT디버거 장단점 비교글2 만사통 2339 2010.12.02
804 마이크로프로세서 HOTarm사의_cortextm-m3의_특성_및_최신_동향2 만사통 1870 2010.12.02
803 마이크로프로세서 HOTATmega128RFA1 Wireless AVR이 기존의 atemga128과 특별히 다른점이 있나요 aerojang827 1622 2010.11.30
802 마이크로프로세서 HOTArtwork하려는데 어떤툴 및 책을 봐야 하는지?2 호호아자씨 947 2010.11.29
801 마이크로프로세서 HOT제발 설명 좀 해주세요..8 POV매니아 1400 2010.11.27
800 펌웨어 & 코딩언어 HOTc언어 능력자님을 찾아요 ㅠ 도와주세요12 진쓰 2306 2010.11.26
799 마이크로프로세서 HOT타이머카운트1번을 3번으로 변경하려는데 테스트해봐도 잘안돼네요..1 온니무 1466 2010.11.24
798 마이크로프로세서 HOTAVR128 소스문의드립니다. 훈돌이 1381 2010.11.24
797 마이크로프로세서 HOT마이컴이 하나 필요합니다...2 멍치 1316 2010.11.23
796 마이크로프로세서 HOT컴파일러 종류에대한 소스코드1 Engr James 1305 2010.11.22
795 마이크로프로세서 HOTatmega128에서 buzzer 소리를 조절할 수 있나요?4 어서오십쇼 4967 2010.11.21
마이크로프로세서 HOTADC평균값을 내고 PWM을 제어ㅠㅠㅠ3 말티즈코난 3008 2010.11.20
793 마이크로프로세서 HOTjtag 와 보드가 연결되지 않네요.ㅠㅠ4 sky2man 1361 2010.11.20
Prev 1 ... 13 14 15 16 17 18 19 20 21 22 ... 58 Next
  • 행복의 원칙은 첫째 어떤 일을 할 것, 둘째 어떤 사람을 사랑할 것, 세째 어떤 일에 희망을 가질 것이다.
    - 칸트
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.