로그인회원등록 내글장바구니주문조회현재접속자
 상품 검색








 게시판 검색





 
 
회원등록 비번분실


온라인 입금계좌
ㆍ기업은행
ㆍ219-043192-01-028
ㆍ이건영

      거래은행 바로가기
 
 Arduino Open Source
아듀이노 함수의 상세설명
작성자 avrtools™        
작성일 2008/08/26
Link#1 (Down:317)
ㆍ추천: 0  ㆍ조회: 3030   
  아듀이노 가변저항
참조 : http://cwwang.com/2007/09/13/lab-arduino-01/
제목 : 가변저항의 값으로 LED를 점등

회로설명
5~50KΩ 사이의 가변저항을 회로도와 같이, A0에 연결하고, LED 4개를 D9~D12에 각각 연결한다,
가변저항은 3개의 핀으로 만들어져 있으며, 중간 핀이 출력 핀이다. 회로도는 다음과 같다.
  

LED는 Anode (긴 다리)를 디지털 출력핀에, Kathod (짧은 다리)를 GND에 연결한다.
A0 에 연결된 0~5V의 가변저항의 출력전압을, 아날로그 입력으로는 0~1023의 값이 읽혀진다.
이 값을 5등분하여 1/5 이하는 모두 소등, 2/5는 LED1을 점등,,,,4/5 이상은 LED4를 점등한다.
 
MEGA168 USB로 만든 아날로그 입력을 시험하는 동영상이다. 
(드라이버로 POT를 돌리면, 아날로그 값에 비례하여 LED가 순서대로 점등한다)
   
 

소스
boolean state9,state10,state11,state12;
void setup()
{
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(12, OUTPUT);
}

void loop()
{
  int a0 = analogRead(0); //0-1023 from analog input:
  if (a0 >0 && a0 < 1023 *1/5 )
  {
    state9 =0;
    state10 =0;
    state11 =0;
    state12 =0;
  }
  if (a0 > 1023 *1/5 && a0 < 1023 *2/5)
  {
    state9 =1;
    state10 =0;
    state11 =0;
    state12 =0;
  }
  if (a0 > 1023 *2/5 && a0 < 1023 *3/5)
  {
    state9 =0;
    state10 =1;
    state11 =0;
    state12 =0;
  }
  if (a0 > 1023 *3/5 && a0 < 1023 *4/5)
  {
    state9 =0;
    state10 =0;
    state11 =1;
    state12 =0;
  }
  if (a0 > 1023 *4/5)
  {
    state9 =0;
    state10 =0;
    state11 =0;
    state12 =1;
  }

  digitalWrite(9,state9);
  digitalWrite(10,state10);
  digitalWrite(11,state11);
  digitalWrite(12,state12);
}

참고
ADC에서 읽은 아날로그 신호를 5회 이동평균하는 소스
이동평균 샘플의 수는 1, 3, 5, 7, 9를 사용하고 있다.
// 5-point moving average
// return data of averaged
unsigned long average_adc(void)
{
   long x0, x1, x2, x3, x4, x5;

   x5 = x4;
   x4 = x3;
   x3 = x2;
   x2 = x1;
   x1 =analogRead(0);             // 0-1023 from analog input A0 
   x0 =((x1 +x2 +x3 +x4 +x5) /5);  // filtering for 5 point moving average  

  return (x0);
}

이 프로그램은 무료 소프트웨어로, 신체와 재산 상의 어떤 위험과 손해를 보상하지 않습니다.
이 프로그램은 GNU 무료 소프트웨어 배포규정을 따릅니다.
Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
  
 AVRTOOLS™
   
  0
9999
윗글 아듀이노 4비트 LCD (구형)
아래글 직렬 데이터 이동(shift) 출력
    N         제목    글쓴이 작성일 조회 추천
판매상품의 사용설명서는 다른 자료실에,,, avrtools™ 2011/08/30 (화) 1414 0
23 LCD 문자표시 (신형) avrtools™ 2012/04/12 (목) 2028 0
22 아듀이노 멜로디 연주 avrtools™ 2008/08/22 (금) 3376 0
21 아듀이노 4비트 LCD (구형) avrtools™ 2008/09/02 (화) 4218 0
20 아듀이노 가변저항 avrtools™ 2008/08/26 (화) 3030 0
19 직렬 데이터 이동(shift) 출력 avrtools™ 2012/04/10 (화) 1653 0
18 디지털 신호의 펄스폭을 측정하는 함수 avrtools™ 2012/04/10 (화) 1899 0
17 EEPROM 읽기, 쓰기 함수 avrtools™ 2012/04/10 (화) 2203 0
16 변수의 크기 avrtools™ 2012/04/10 (화) 1547 0
15 플레시 메모리에 상수를 저장하고 읽는 함수 avrtools™ 2012/04/10 (화) 1804 0
14 소프트웨어 Serial 함수 avrtools™ 2012/04/10 (화) 1736 0
13 아듀이노 터치스위치 [3] avrtools™ 2008/08/11 (월) 4042 0
12 아듀이노 shiftOut avrtools™ 2008/09/10 (수) 3276 0
11 아듀이노 스위치와 LED점등 avrtools™ 2008/08/13 (수) 4508 0
10 아듀이노의 주파수 출력 함수 avrtools™ 2009/10/20 (화) 2656 0
9 One Button Switch Library avrtools™ 2012/03/09 (금) 1777 0
8 아듀이노 논리연산 avrtools™ 2008/08/26 (화) 2915 0
7 아듀이노 PS2 키보드 읽기 avrtools™ 2008/09/10 (수) 3965 0
6 아듀이노 가로채기 함수 avrtools™ 2008/08/23 (토) 3091 0
5 아듀이노 전용명령 avrtools™ 2008/09/16 (화) 3858 0
4 아듀이노 PWM 출력과 타이머1 전용명령 avrtools™ 2008/08/19 (화) 3475 0
3 8비트 포트의 단일비트 조작방법 avrtools™ 2010/10/30 (토) 2295 0
2 직렬포트에서 문자를 받아 숫자 int로 저장 avrtools™ 2012/04/08 (일) 1628 0
1 직렬통신포트의 초기화 avrtools™ 2012/04/06 (금) 1416 0
1

바구니 : 0
 보관함 : 0
오늘뷰 : 0
HOME   |   회사소개   |   제휴안내   |   회사위치   |   서비스이용 약관   |   개인정보 보호정책   |   사이트맵
17015 경기도 용인시 기흥구 동백중앙로16번길 16-25, 508호. 전화 : 031-282-3310
사업자 등록번호 : 697-47-00075 / 대표 : 이건영 / 업태 : 제조업 / 종목 : LED조명, LED전원, 제어장치.
개인정보 관리책임자 : 홈페이지 관리자 . Copyright ⓒ2016 아크레즈 (ACLEDS INC.)
HOME TOP PREVNEXT 0 0 0