회원가입 ID/PW 찾기
AA

안녕하세요..   오늘도 덥네요...;;

 

마우스 센서부를 만들고 있습니다...

 

제가 쓰고 있는 avr 은 atmega128 이구요.. M128B1 Board 으로 모듈로 된 것을 쓰고 있습니다..

 

수광에서 받는 빛의 양을 LCD에 나타내 주는 소스를 짜고 싶은데요.. 

 

이렇게 한번 짜봤습니다.

 

포트 D에는 LCD 를 포트 F 에는 수광센서 부분을 연결해 주었구요..

 


int main(void)
{
 
  int n;
  DDRD=0xff; // LCD 포트
  DDRF=0x00; // 수광센서 입력 포트
 
 
  delay_5ms();
  lcd_init(); // LCD 초기화 함수
  delay_5ms();
 
  ADMUX=0xe0;          //   <-- 이부분과..
  ADCSRA=0xe0;      //   <-- 이부분의 설정이 맞나요?
   

while(1)
{


  delay_5ms();
 
  ADCSRA|=0x10;
  while(!(ADCSRA & 0x10)); // adc 종료 때가지 기다림.
 
  temp1=ADCW;
 
  compare(temp1); 
   /* ADC된 값을 LCD 로 나타내기 위해
   LCD에 표시하는 값을 table[n]에 넣어주는 함수.*/
 
  cmd_write(0x80); // LCD 위치 지정
  for(n=0;n<9;n++)
  {
    data_out(table[n]); // 입력값을 ADC 한 값을 LCD에 표시
  }
 
  delay_5ms();
}
 
return 0;
   
}

 

이렇게 해서 수광센서에 흰종이를 가까이 대보면

 

LCD에 값이 0에서 한번 변했다가 다시 0으로 돌아가는 현상을 반복합니다.. 

 

계속 대고 있으면 계속 같은 값이 꾸준히 나오는게 정상 이겠죠?;

 

대지도 않았는데 값이 변하기도 하구요...;;

 

소스를 정확히 짠건지 궁금합니다..

 

 

좋은주말 되시구요..

댓글 2
  • No Profile
    일단 스크롤하면서 대략봤는데요;; adc인터럽트 함수에서 처리하는게 좋을듯한데요//

    쩝 요새는 레지스터 찾아보기도 귀찮아서 이거원// 레지스터 부분은 빼고 보겠습니다(프리러닝 모드로 설정하신건가?)

    table[n] 이 변수는 어디서 값이 할당되는지요? 할당문이 안보이는데요/
  • No Profile
    자세한건 위에 제 궁금증이 해결되야 설명드리겠네요^^;;



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

search
번호 분류 제목 글쓴이 조회 수 날짜
3 머신러닝, AI & 알고리즘 HOT오목 게임 알고리즘3 새로운하늘 3458 2010.03.29
2 머신러닝, AI & 알고리즘 HOT지하철 최단거리 알고리즘은?2 지워나 2861 2008.06.20
1 머신러닝, AI & 알고리즘 HOT순차 프로그램에 대한 간단한 알고리즘과 재귀 알고리즘의 속도 테스트 - by 아크마7 아크마 3060 2007.08.08
  • 시간을 선택하는 것은 시간을 절약하는 것이다.
    - 베이컨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.