본문 바로가기
아두이노

아두이노 기초 유튜브 강의

by Mice 2021. 5. 3.

youtu.be/QeynB56RTl8

출처 : 대진대학교

 

 

직렬통신 IC를 통해서 USB와 ATmega328 사이의 정보롤 교환한다.

 

USB연결이 가능한 '아두이노 프로 미니'
비트를 1word로 묶는다
USB가 직렬통신이다.
아두이노는 GPIO port이다., 아두이노는 아날로그 출력을 못 함. 아날로그 입력/디지털 입출력 가능, 출력을 흉내내는 방법으로 PMW가 있다.
디지털핀을 A0말고 14번으로도 표현 할 수 있다.
아두이노 내부의 출력을 디지털핀 13번핀에 연결 된 LED로 확인 할 수 있다
0과 1만 가지고 출력하는 방법은 아래의 사진에 나와 있다
디지털은 샘플링 된 값으로 내보낸다. 반면, 아날로그는 듀티(면적)를 통해서 PMW출력으로 나타낸다.
아날로그 입력은 2^10(1024)으로 단계가 나뉘어지고 아날로그 출력은 2^8(256) 단계이다.

 

시리얼 프린트는 컴퓨터로 내보내는것, 시리얼 리드는 컴퓨터에서 일거오는 것. 시리일 프린트ln은 줄바꾸어서 pc로 내보낸다.

 

PC통신과 아두이노 우노의 TX,RX선에 연결 된 회로의 통신은 동시에 사용 못한다.

 

13번 핀으로 데이터가 오가면 불이 깜빡인다

 

 

2V 전압을 저항과 함께 붙여준다.

 

저항으로 전압을 줄여주는 방법 
아두이노와 포트출력으로 연결시키는두 가지 방법. 아래 사진에 구현 되어 있다.

 

,아날로그 핀으로 HIGH(255)와 LOW(0)를 설정 할 수 있다.

 

 

 

 

 


 

코드의 확장자는 .ino 이다

 

직렬 통신을 흉내내는 소프트웨어 -> 에뮬레이션
따로 정품 우노가 있기 때문에 설치 할 필요가 없다.
setup에서 하드웨어적인 입/출력을 설정한다
정수형 : char 1바이트(8비트), int 2바이트(16비트), short 2바이트(16비트), long 4바이트(32비트), long long 8바이트(64비트) 
상수 선언

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(25);
// 1초는 1000ms이며 켜질 때 25ms와 꺼질 때 25ms를 합쳐서 총 50ms 동안 깜빡인다. 따라서 1000/50=20으로 1초에 20번 깜빡인다.
// 각각 50ms로 설정하면 1000/100=10이므로 1초에 10번 깜빡인다. 곧 10Hz이다.
// 각각 10ms로 설정하면 1000/20=50이므로 1초에 50번 깜빡이는 50Hz이다. -> 이 순간부터 깜빡이는걸 못 느낀다.
// 각각 5ms로 설정하면 1000/10=100이므로 1초에 100번 깜박이는 100Hz이다. 
digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(25);                       // wait for a second
}

 

 

 

 

다음 움짤은 delay(15)를 설정 했을 경우이다. 1000/30=33Hz이다. 미세하게 관측 가능하다.

728x90

댓글