서론

안녕하세요, Gogomaker입니다. 오늘은, CPU를 개발하기 전에, 어떤 프로그램이 필요하고, 이를 통해 뭘 어떻게 배우는지 간략히 설명하고자 합니다. CPU개발을 위해 크게 두 가지 프로그램을 사용할 것입니다. 첫째는 논리회로 제작 및 시뮬레이션에 필요한 프로그램이고, 둘째는 각종 문서 작성(ex: 어셈블리어 작성 등)에 필요한 프로그램입니다. 

본론

1-1. Logisim evolution 설치

논리회로 제작 및 시뮬레이션에 필요한 프로그램입니다.

https://github.com/logisim-evolution/logisim-evolution

 

GitHub - logisim-evolution/logisim-evolution: Digital logic design tool and simulator

Digital logic design tool and simulator. Contribute to logisim-evolution/logisim-evolution development by creating an account on GitHub.

github.com

이 페이지는 Logisim evolution을 다운로드 받는 공식 홈페이지입니다. 들어가셔서 자기 컴퓨터에 맞는 버전(WIN, MAC) 선택하셔서 다운로드 받으시면 됩니다. 화면을 쭉 스크롤하시면 다운로드 받는 화면이 나옵니다. 

다운로드를 받는 화면.

또한, 이 프로그램은 자바를 기반으로 돌아가므로, 혹시라도 프로그램이 정상적으로 돌아가지 않으면 자바 런타임을 설치하시길 바랍니다. 혹시라도 잘 안 되는 부분이 있다면 GPT에게 물어보시길..

1-2. 사용법?

이 프로그램의 사용법에 대해 말하고자 합니다. 프로그램은 아래와 같이 생겼습니다. 

Logisim Evolution의 실행화면

 

 

 

좌측에서 논리회로 부품을 가져와 우측 빈 화면에서 조립하는 방식입니다. 좌상단은 각종 라이브러리가 있고, 좌하단에는 각 부품의 속성이 나옵니다. 

옆의 예시 이미지처럼, 각각의 라이브러리에서 다양한 부품을 꺼내어 사용할 수 있습니다. 이를 통해 멋진 논리회로를 만들게 되지요. Logisim의 보다 자세한 사용방법에 대해서는 유튜브에 검색해보면 나옵니다. 내지는 제가 추후에 이 글을 업데이트 할 수도 있고요.

 

 

 

 

 

 

 

 

 

 

2. SublimeText 설치

물론 코딩이라는 것을 VScode에서 할 수도 있고, 원초적으로 메모장에서 할 수도 있기는 하다만, 저는 SublimeText가 편한 관계로 이 프로그램을 사용하도록 하겠습니다. 

https://www.sublimetext.com/

 

Sublime Text - the sophisticated text editor for code, markup and prose

Available on Mac, Windows and Linux

www.sublimetext.com

이 프로그램을 설치하시고, 메모장 대용으로 사용하시면 될 듯 합니다. 참고로, 가볍고 되게 편합니다(물론 제 기준에서는요. )

결론

이번 글에서는 필요한 프로그램을 설치해보고, 간단한 사용방법을 익혀보았습니다. 모쪼록 글을 잘 따라오셔서 CPU를 만드실 수 있는 여러분들 되길 바랍니다. 모르는 것이 있다면, GPT에게 물어보시고, 그래도 안 된다면 댓글 남겨주세요. 답글 드리겠습니다. 

 

서론

그렇다. 이 블로그를 쓰는 까닭은 CPU가 뭔지는 알지만, 만들 기술이 없는 이들을 위해 쓰는 블로그이다. (물론 그게 나다) 뭐랄까, 해외에는 8bit cpu making 이라던가, 16bit cpu DIY 같은 영상이 꽤나 많음을 볼 수 있는데, 국내에서 만든 자료는 그다지 많은 것 같지는 않아, 수많은 자료의 일부가 되기 위해 이 글을 쓰기로 생각했다. 다만, 다소 생각없이 적었기에, 두서없을 수 있음을 양해바란다.
또 이 시리즈의 한 가지 특징이 있는데, 바로 전공지식 없이 만들 수 있게끔 설명할거란 것이다.  나는 전자공학 학생이긴 하다만, CPU를 만드는 꿈을 중학생 때부터 가지고 있었기에, 중학생이 보고 따라하면 만들 수 있을 정도로 글을 쓰려한다. 부담없이 따라올 수 있으리라 생각된다.

목차

앞으로 연재할 이 시리즈는 다음과 같이 구성될 예정이다.

  1. 개발환경 세팅
  2. 논리회로 공부
    1. 이진법과 논리게이트
    2. 조합회로
    3. 순차회로
    4. BUS
  3. CPU와 Computer
    1. CPU의 기본 - ISA
    2. CPU의 내부구조- ALU
    3. CPU의 내부구조 - Register
    4. CPU의 내부구조 - Controller
    5. CPU의 내부구조 - Instruction Register
    6. CPU의 내부구조  - Program Counter
    7. 컴퓨터의 내부구조 - Random Access Memory
    8. 컴퓨터의 내부구조 - Input&Output
  4. CPU 제작하기
    1. 8bit toy processor 제작 (custom model)
    2. 8bit computer 제작 (SAP-1)
    3. 16bit CPU 제작 (MIPS-based custom model)
    4. 16bit computer 제작(위의 CPU를 바탕으로)
    5. How to code assembly

뭐, 적다보면 조금씩 바뀔 수는 있다.
아무튼, 이 여정을 무사히 마치길 바란다.

안녕하세요, 고고메이커 입니다.

이번 글에서는 아두이노 IDE는 어떻게 사용하는지, 어떤 기능이 있는지 알아보도록 하겠습니다.

글이 긴 관계로, 2편으로 나눴습니다.

1. IDE에 대한 설명 및 IDE 설치법

2. IDE기능 및 사용법(해당 글)

아두이노 IDE 소개

아두이노 IDE 를 소개하기 앞서 주로 사용되는 단어에 대해 설명 드리겠습니다.

업로드하다: 아두이노에 코드를 올리다. 즉, 아두이노에 작성한 코드를 올리는 것입니다.컴파일하다: 사람이 쓴 코드를 아두이노가 알아들을 수 있게 하는 작업을 컴파일(confile)이라고 합니다. 컴파일을 하기 위해서는 컴파일러가 필요합니다.스케치: 아두이노 IDE에서 작성한 코드(파일)을 스케치라고 부릅니다.

 

아이콘설명

IDE에서 자주 사용하는 기능에 대해 설명을 드리겠습니다.

아두이노 IDE 프로그램
verify

이 아이콘은 마우스를 가져다 대면 verify라는 설명이 나옵니다(verify: 검증하다). 코드를 컴파일하는 기능을 합니다.

단축키 Ctrl + R 로 사용할 수 있습니다.

uproad

이 아이콘은 마우스를 가져다 대면 upload라는 설명이 나옵니다. 코드를 아두이노로 보내는(아두이노에 업로딩하는) 기능을 합니다. 또한, 이 아이콘을 클릭하면 코드 업로드 전에 자동으로 컴파일을 한 번 합니다.

단축키 Ctrl + U 로 사용할 수 있습니다.

new

이 아이콘은 마우스를 가져다 대면 new라는 설명이 나옵니다. 아두이노 IDE 창을 하나 더 띄워 주는 기능을 합니다.

단축키 Ctrl + N 로 사용할 수 있습니다.

open

이 아이콘은 가져다 대면 open이라는 설명이 나옵니다. 내장된 예제 또는 컴퓨터에 저장된 스케치를 여는 기능을 합니다.

아이콘을 클릭하였을 때 이런 창이 뜹니다.

Open... 은 컴퓨터의 파일을 여는 것입니다.

Libraries 는 라이브러리의 예제파일을 여는 것입니다.

밑의 숫자로 나열되어 있는 것들은 아두이노의 기본 예제파일을 여는 것입니다.

save

이 아이콘은 가져다 대면 save라는 설명이 나옵니다. 말 그대로 스케치를 저장하는 역할을 합니다.

단축키 Ctrl + S 로 사용할 수 있습니다.

Serial Monitor

이 아이콘은 가져다 대면 Serial Monitor 라는 설명이 나옵니다. 시리얼 모니터를 실행하는 역할을 합니다.

시리얼 모니터에 대한 자세한 설명은 다른 글로 설명하겠습니다.

 

전체적인 구조

전체적인 구조

1 에 해당하는 부분은 상태창이라고 볼 수 있습니다. 컴파일 및 업로딩 할 때에 정보가 이곳에 뜹니다.

2 에 해당하는 부분은 코드를 적는 곳입니다.

3 에 해당하는 부분은 위에서 설명드린 부분이니 넘어가도록 하겠습니다.

4 에 해당하는 부분은 아두이노IDE의 탭에 대한 부분입니다.

https://eu4ng.tistory.com/20

https://luftaquila.tistory.com/9

이 두 글에서 잘 다루어 놓았으니, 기능이 궁금하신 분들은 참고하시기 바랍니다.

 

써놓고 보니 무언가 부족한 듯한 글인것 같습니다.이 글에서 다루지 않은 부분은 하나하나 나누어서 글로 적을 것 같습니다.지금까지 아두이노IDE의 기능과 사용법에 대해 알아보았습니다.다음 글에서도 알찬 지식으로 찾아뵙도록 하겠습니다.

그럼 다음 글에서 만나요~

'Arduino > 기초' 카테고리의 다른 글

아두이노 기초 - 아두이노 IDE란(설치)  (0) 2022.02.26
아두이노 기초 - 아두이노란  (0) 2021.01.12

안녕하세요, 고고메이커 입니다.

이번 글에서는 아두이노 IDE는 무엇이고, 어떻게 사용하는지에 대해 알아보도록 하겠습니다.

글이 긴 관계로, 2편으로 나눴습니다

1. IDE에 대한 설명 및 IDE 설치법(해당 글)

2. IDE기능 및 사용법

먼저 아두이노 IDE가 무엇이고, 왜 사용해야 하는지를 먼저 짚어보면 좋을 것 같습니다.

IDE란

IDE란 통합개발환경(Integrated Development Environment)을 뜻하는 약어입니다. 즉 내가 개발을 할 때에 필요한 모든 것들을 다 모아둔 환경이라는 것이죠. 아두이노를 개발할 때 필요한 각종 기능들을 한데 모아둔 소프트웨어를 아두이노 IDE라고 이야기합니다.

아두이노 IDE를 왜 사용하는가?

이유는 단순합니다. 아두이노를 사용하기 위해 아두이노IDE를 사용하는 것입니다. 물론 아두이노를 사양하는 방법은 아두이노IDE를 제외하고도 여러 방법이 있습니다. 그러나, IDE가 가장 편하기에 저 또한 IDE의 사용을 추천합니다.

 

그럼 이제 본격적으로 '아두이노 IDE'(이하 IDE로 표기)를 사용해 보러 갈까요?

IDE 설치하기

*본 블로그는 Windows 10 기준으로 설명을 드립니다. 타 OS에서는 다를 수 있으니 참고해 주시기 바랍니다.

*IDE다운로드를 Chrome에서 합니다. 이 점 참고하여 주시기 바랍니다.

IDE를 설치하기 위해서는 아두이노 공식 홈페이지에 접속해야 합니다.

https://www.arduino.cc/en/software 해당 링크로 접속하거나,

혹시라도 위 링크로 접속이 안 된다면, google에서 '아두이노 ide'라고 검색해서 빨간 박스 그려놓은 (Software | Arduino 적혀있는) 링크 클릭하여 사이트에 접속하면 됩니다.

아두이노ide 검색결과

 

사이트에 접속하고 나면 아래 사진과 같이 사이트가 나올 건데, 여기에서 빨간 박스 그려놓은 것(Windows win 7 and newer)을 클릭하면 됩니다.

아두이노 IDE 다운로드 페이지

이후 나오는 페이지에서는 'JUST DOWNLOAD'를 클릭하면 됩니다.

만약 아두이노 재단에 후원하고 싶은 분이 있다면 원하는 액수를 선택하고 'CONTRIBUTE &  DOWNLOAD' 클릭하면 됩니다.

아두이노 IDE 다운로드 페이지

이후 다운로드한 설치파일을 실행해 IDE 설치를 진행합니다.

설치파일 실행 시 뜨는 화면

'예' 누르고요.

I Agree 클릭합니다.

전부 선택한 후에 Next 클릭합니다. (광고성 프로그램 설치 옵션 없으니 안심하셔도 됩니다)

설치 경로 선택 화면입니다. 설치 경로를 바꿔야 하는 분은 이 단계에서 바꾸면 됩니다.

안 바꿔도 되는 분들은 그냥 install 클릭해 주면 됩니다.

저는 show detail을 눌러서 이렇게 표시가 되었습니다.

이런 식으로 쭉 설치를 진행하다 보면 이런 창이 뜰 수 있습니다.

3개 정도 뜰 건데, 전부 설치해 주면 됩니다.

completed가 뜨면, close 눌러서 설치프로그램을 종료하면 됩니다.

바탕화면에 아래 사진처럼 아두이노 아이콘이 있을 겁니다.

해당 아이콘을 클릭해서 아두이노 IDE를 켜보도록 하겠습니다.

와! 이제 우리는 아두이노 IDE를 켤 수 있습니다~

 

지금까지 아두이노 IDE가 무엇인지, 어떻게 설치하는지를 알아보았습니다.

다음 글에서 이어서 아두이노 IDE의 사용법에 대해서 알아보겠습니다.

그럼 다음 글에서 만나요~~

'Arduino > 기초' 카테고리의 다른 글

아두이노 기초 - 아두이노 IDE란(사용법)  (0) 2022.02.26
아두이노 기초 - 아두이노란  (0) 2021.01.12

안녕하세요, 고고메이커입니다.

 

이번 글에서는 가변저항을 사용하는 법에 대해 알아보려 합니다.

 

우선, 가변저항이란 무엇일까요?

말 그대로 변할 수 있는(가변) 저항이라는 것입니다.

가변저항은 극성이 따로 없지만, 저항 값을 출력하는 핀은 정해져 있습니다.

대부분의 가변저항들은 양 끝(또는 모여있는 두 핀)이 전원을 연결하는 곳이며, 나머지 한 곳이 저항값을 출력하는 핀입니다.

출력하는 값은 analoginput핀(아두이노 우노 기준 A0~A5)에서 받을 수 있으며, 값의 범위는 0~1023까지 입니다.

 

백문이 불여일견! 모르겠어도 한 번 실습을 해 봅시다.

 

실습1-기본익히기

우선, 가변저항의 값을 받아 시리얼창에 출력해 보겠습니다.

 

준비물 :

아두이노 UNO보드 · · · · · · · 1개

가변저항 · · · · · · · · · · · · 1개

MM 점퍼선 · · · · · · · · · · · 3개

 

회로는 이렇습니다.

이번 프로그램의 소스 코드입니다.

void setup() {
	Serial.begin(115200);
}

void loop() {
	Serial.println(analogRead(A0));
	delay(100);
}

이 코드를 실행시키고 아두이노 시리얼 창을 켜봅시다.

그리고 나서 가변저항을 돌리면 값이 변할 것입니다. 또한, +에 연결한 쪽으로 갈수록 값이 커질 것이고, -쪽으로 갈수록 값이 작아질 것입니다.

만약 건드리지 않는데 값이 변한다면, 문제가 있는 것입니다.

 

작동영상

실습2-응용하기

이번에는 가변저항을 가지고 LED의 밝기를 조절해 봅시다.

이 일을 하기 전에, 먼저 알아야 할 소프트웨어적인 부분이 있습니다.

바로 map함수인데요,

이 함수는 값의 범위를 줄일 수 있는 함수입니다.

구조는 이렇습니다.

map(주는 값, 기존 범위 최소값, 기존 범위 최고값, 원하는 범위 최소값, 원하는 범위 최고값)

다시 얘기하자면, 기존 범위에 있던 값을 새로운 범위에서 해당하는 값을 찾아주느 것입니다.

이 함수를 왜 쓸까요?

바로 analog input의 범위는 0~1023인데 비해, analog output의 범위는 0~255까지이기 때문입니다.

그렇다면 위와 같은 경우에 map함수를 어떻게 사용할가요?

map(analoginput, 0, 1023, 0, 255);

이렇게 사용하게 되겠죠.

 

자, 이야기는 이쯤에서 마치고 이제 실습을 한 번 해 봅시다!

 

준비물 :

아두이노 UNO보드 · · · · · · · 1개

220Ω(또는 330Ω) 저항 · · · · · 1개

LED · · · · · · · · · · · · · · · 1개

가변저항 · · · · · · · · · · · · 1개

MM 점퍼선 · · · · · · · · · · · 5개

 

회로는 이렇습니다.

이번 프로그램의 소스 코드입니다.

#define LED1 3

void setup() {
	Serial.begin(115200);
}

void loop() {
	Serial.println(analogRead(A0));
	analogWrite(LED1, map(analogRead(A0), 0, 1023, 0, 255));
}

이 코드를 실행시키면, LED의 밝기가 가변저항을 돌림에 따라 바뀔 것입니다.

 

작동영상

 

지금까지 다양한 방법으로 가변저항을 제어 해 보았습니다.

어땠나요? 아두이노와 조금 더 가까워 진 것 같나요?

저 고고메이커는 여러분들이 아두이노와 절친한 사이가 되기 바랍니다.

다음 글에서 또 만나요!

'Arduino' 카테고리의 다른 글

3. 아두이노 LED 제어  (1) 2021.02.11
2. 아두이노 기초 사용법  (0) 2021.02.11

안녕하세요, 고고메이커입니다.

LED란

오늘은 아두이노를 다루기 위한 기본적인 LED제어에 대해 공부 해 보겠습니다.

 

우선, LED란 무엇일까요?

LED또는 발광다이오드(앞으로 LED라고 얘기함)라고 불리는 이 부품은 빛이 나는 다이오드입니다.

'그럼 다이오드가 뭐냐?' 라고 물을 건데요, 다이오드는 전류가 한 쪽으로 흐르게 하는 부품입니다.

그렇다면 LED가 뭔지 감이 올 겁니다. LED는 특정 방향으로 전류가 흐를 때, 빛이 나는 부품입니다.

그렇기 때문에 LED는 항상 방향을 잘 지켜 꼽아야 합니다.

LED는 긴 다리가 +, 짧은 다리가 - 입니다.

 

또한, LED는 저항 값이 매우 작기 때문에 저항 없이 꼽으면 전기가 많이 통해서 보드나 LED가 탑니다.

꼭 주의하세요!!! (저도 이거 때문에 LED 많이 태우고, 보드 한 개 날릴 뻔 했어요 ㅠ.ㅠ)

 

실습1-기본익히기1

우선, LED 한 개를 깜박여 봅시다.

 

준비물 :

아두이노 UNO보드 · · · · · · · 1개

220Ω(또는 330Ω) 저항 · · · · · 1개

아무 LED · · · · · · · · · · · · 1개

MM 점퍼선 · · · · · · · · · · · 2개

회로

회로는 이렇습니다.

이번 프로그램의 소스 코드입니다.

LEDblink.ino
0.00MB

#define LED1 4 //LED의 핀번호 지정

void setup() {
	pinMode(LED1, OUTPUT); //LED핀을 출력으로 설정
}

void loop() {
	digitalWrite(LED1, HIGH); //LED를 켠다
	delay(1000); //1000ms 기다리기
	digitalWrite(LED1, LOW); //LED를 끈다
	delay(1000); //1000ms 기다리기
}

이 코드를 실행시키면, (적어도 회로만 잘 연결했으면, ) 1초 간격으로 LED가 깜박거릴 것입니다.

 

작동영상

 

실습2-응용해보기1

자, 이제 LED 깜박이는 것을 해 보았으니 이제 한 번 응용해 볼까요?

이번엔 빨강, 노랑, 초록 LED를 이용해 신호등을 만들어 봅시다.

 

준비물 :

아두이노 UNO보드 · · · · · · · 1개

220Ω(또는 330Ω) 저항 · · · · · 3개

빨강, 노랑, 초록 LED 각 · · · · · 1개

MM 점퍼선 · · · · · · · · · · · 4개

 

회로는 이렇습니다.

이번 프로그램의 소스 코드입니다.

다운로드 받을 수 있는 파일도 준비해 놓았습니다.

LEDjctsign.ino
0.00MB

#define LED_R 4 //빨강 LED핀 지정
#define LED_Y 3 //노랑 LED핀 지정
#define LED_G 2 //초록 LED핀 지정

void setup() {
	pinMode(LED_R, OUTPUT); //LED핀을 출력으로 지정
	pinMode(LED_Y, OUTPUT);
	pinMode(LED_G, OUTPUT);
}

void loop() {
	digitalWrite(LED_G, HIGH); //초록불이 켜짐
	delay(5000); //5000ms 기다림
	digitalWrite(LED_G, LOW);
	for(int i = 0; i < 5; i++) { //노랑 LED가 5번 깜박이게 만듦
		digitalWrite(LED_Y, HIGH);
		delay(500);
		digitalWrite(LED_Y, LOW);
		delay(500);
	}
	digitalWrite(LED_R, HIGH); //빨강 불이 켜짐
	delay(5000); //5000ms 기다림
	digitalWrite(LED_R, LOW);
}

 

이 코드를 실행시키면, 처음에 5초동안 초록 LED가 켜져 있다가 노랑 LED가 5번 깜박입니다. 그리고 빨강 LED가 5초동인 켜져 있게 됩니다.

 

작동영상

 

 

실습3-기본익히기2

디지털 출력으로 LED 다루기는 실컷 했으니, 한 번 아날로그 출력으로 놀아 봅시다.

 

우선, LED 한 개를 깜박여 봅시다.

 

준비물 :

아두이노 UNO보드 · · · · · · · 1개

220Ω(또는 330Ω) 저항 · · · · · 1개

아무 LED · · · · · · · · · · · · 1개

MM 점퍼선 · · · · · · · · · · · 2개

 

회로는 이렇습니다.

이번 프로그램의 소스 코드입니다.

다운로드 받을 수 있는 파일도 준비해 놓았습니다.

LED-analogWave.ino
0.00MB

#define LED1 3

void setup() {
	//아날로그 출력은 OUTPUT 설정 안 하셔도 됩니다.
}

void loop() {
	for(int i = 0; i < 255; i++) { //i가 255가 될 때 까지 반복
		analogWrite(LED1, i); //LED1의 출력값을 i로 설정
		delay(10);
	}
	for(int i = 255; i > -1; i--) { //i가 -1이 될 때 까지 반복
		analogWrite(LED1, i); //LED1의 출력값을 i로 설정
		delay(10);
	}
}

위에 코드에서, i > -1 이렇게 한 이유는 확실하게 LED를 끄기 위해서 입니다.

이 코드를 실행시키면, LED가 천천히 밝아졌다 꺼질 겁니다.

 

작동영상... 은 없습니다 ㅜ 

 

실습4-응용해보기2

어때요~ 여러분, 작동이 잘 되셨나요?

마지막으로 우리가 저번에 배웠던 아날로그 출력(PWM)을 이용한 작은 LED파도타기를 만들어 볼까 해요.

 

준비물 :

아두이노 UNO보드 · · · · · · · 1개

220Ω(또는 330Ω) 저항 · · · · · 3개

아무 LED · · · · · · · · · · · · 3개

MM 점퍼선 · · · · · · · · · · · 4개

 

아날로그 출력을 사용할 것이기 때문에 PWM핀에 LED를 꽂아야 하는 점, 잊지 마세요!

회로는 이렇습니다.

 

 

이번 프로그램의 소스 코드입니다.

#define LED1 3
#define LED2 5
#define LED3 6
#define WAIT 5 //LED가 밝아지는 속도

void setup() { //처음에 켜지는 효과는 1번만 필요하니까
	for(int i = 0; i < 255; i++) {
		analogWrite(LED1, i);
		delay(WAIT);
	}
}
void loop() {
	for(int i = 0; i < 255; i++) {
		analogWrite(LED1, 255-i); //LED가 점차 꺼지는 효과
		analogWrite(LED2, i);
        delay(WAIT);
	}
	analogWrite(LED1, 0);
	for(int i = 0; i < 255; i++) {
		analogWrite(LED2, 255-i); //LED가 점차 꺼지는 효과
		analogWrite(LED3, i);
        delay(WAIT);
	}
	analogWrite(LED2, 0);
	for(int i = 0; i < 255; i++) {
		analogWrite(LED1, i);
		analogWrite(LED3, 255-i);
		delay(WAIT);
	}
	analogWrite(LED3, 0);
}

 

이 코드를 실행시키면, 밑에 있는 LED 부터 순차적으로 켜졌다가 꺼집니다

 

지금까지

다앙한 방법으로 LED를 제어 해 보았습니다.

어땠나요?

이상 고고메이커였습니다.

다음 글에서 또 만나요!

'Arduino' 카테고리의 다른 글

4. 아두이노 가변저항 사용  (0) 2021.02.12
2. 아두이노 기초 사용법  (0) 2021.02.11

안녕하세요, 고고메이커입니다.

출처: https://brandslogos.com/a/arduino-logo-1/

 

이번 시간에는 아두이노의 기초적인 사용법에 대해 이야기 해 볼까 합니다.

아두이노를 컴퓨터에 연결시켜서 아두이노에 있는 LED를 깜박이게 하는 것 까지 해 봅시다.

 

 

글을 읽으시는 여러분들은 지금 당장 아두이노를 컴퓨터에 연결하고 작동을 하게 하고 싶으시겠지만, 아쉽게도 바로 작동이 되지는 않습니다.

 

우선, 컴퓨터에 *아두이노IDE를 깔아야 합니다

*IDE: Integrated Development Environment의 약자로 통합 개발 환경을 지칭하는 단어이다. (위키백과)

어려워 하지 마시고 천천히 같이 해 봅시다.

 

1. 아두이노 홈페이지에 접속한다.

2. 아래의 사진처럼 software -> downloads를 클릭한다.

아두이노 홈페이지.

3. 아래의 사진과 같은 페이지가 나왔다면, 빨간색 동그라미 쳐져 있는 부분을 클릭하여 아두이노IDE 설치하는 파일을 다운로드 받는다.

아두이노IDE를 다운로드 받을 수 있는 페이지

4. 더 나은 아두이노를 사용할 수 있게 아두이노에 후원을 해 주고 싶다면, 원하는 금액만큼 후원하고 다운로드 하시면 되고, 그냥 다운받고 싶으신 분은 just download 하시면 됩니다.

5. 설치파일이 다 다운로드 되었으면, 설치파일을 실행하여 아두이노 IDE를 설치합니다.

(사진은 제 상황상 찍지는 못하였습니다)

중간에 흰색 창이 뜨면서 뭘 설치하시겠습니까라고 묻는데, OK 하시고 모든 것 설치하셔야 합니다

(이게 컴퓨터가 아두이노를 인식할 수 있게 하는 드라이버입니다. 혹시라도 제대로 설치되지 않는다면 컴퓨터에서 아두이노를 제대로 인식하지 못할 수 있습니다.

 

6. 아두이노IDE를 실행시킵니다.

아두이노IDE 스플레시 화면

그리고 나서 켜지면 아래와 같은 창이 나옵니다.

아두이노 IDE다크테마 적용 모습...

그렇다면 위와 같은 모양이 나올 것입니다(전 다크테마를 적용시켜 놓아서 화사하게 빛나는 여러분들의 IDE와는 다르게 생겼습니다.)

 

이제 절반이 끝났습니다!!!

 

지금부터 본격적으로 아두이노를 작동시켜보자구요~

혹시라도 아두이노를 사실 때, 호환보드 종류 중 CH340&CH341 계열을 구매하셨다면 드라이버를 따로 설치하셔야 합니다. 

 

다음 글에서 계속~~

1. 파일 - 예제 - 01.Basics - Blink를 클릭해 줍니다

2. 이제 아두이노의 포트를 잡아준다.

(아두이노는 시리얼 통신을 이용하여 컴퓨터와 데이터를 주고받는데, 그 통신을 위한 포트를 설정하는 것이다.)

2-1. 윈도우 검색창에 장치 관리자라고 검색한다.

 

'Arduino' 카테고리의 다른 글

4. 아두이노 가변저항 사용  (0) 2021.02.12
3. 아두이노 LED 제어  (1) 2021.02.11

안녕하세요, 고고메이커 입니다.

 

*시작에 앞서, 한글시계의 원작자님은 이호민 님입니다.

*제가 공유하는 모든 파일과 자료들을 개인 블로그에 올리시거나 무단 복제&도용하지 않으시길 바랍니다.

 

글의 내용이 많아 총 5편으로 나누었습니다

1. 프로젝트 소개

2. 외부, 내부 설계

3. 하드웨어 구현

4. 소프트웨어 구현

5. 향후 개선점(Ver.2, Ver.3)

 

-서론

한글시계 v1제작기 글은 이 글을 마지막으로 끝이 났습니다~!! (아주 즐겁군요)

그러나, 한글시계 v1을 제작하면서 많이 아쉬운 부분들이 있었기에, 아쉬운 점을 개선하고 새로운 기능을 추가한 v2, v3를 계획중에 있습니다!

-본론

우선 v2는 v1의 가장 큰 단점인 아두이노가 밖에 나와있다는 점을 개선시켜 아두이노를 한글시계 내부에 배치할 것입니다. 아무래도 전자부품이 밖에 노출된다면 문제점이 많겠죠? 그러한 것을 깔끔하게 해결할 것입니다.

또한, 알람 기능을 추가, 한글시계로 알람을 설정하면, 해당 시간에 부저로 소리가 나는 등의 알람기능을 구현할 것입니다.

마지막으로 외부 밝기에 반응하여 한글시계의 밝기가 변하는 자동 밝기 조절 기능을 추가할 것입니다.

v3는 시계의 본질적인 기능에 집중하기보다, 다른 시계&제품들과 차별성을 두는 기능들을 추가하려 합니다. 현재 계획 중인 것은 한글시계 안에 온습도 센서를 탑재하여 집안의 온습도를 표시하여 주고, 와이파이 모듈을 활용, 미세먼지 데이터를 받아와서 보여주며, 가능하다면 한글시계 배열도 바꾸려 합니다.

-결론

길고도 긴 한글시계를 향한 여정이 모두 끝마쳤습니다!

잘은 못 썼지만, 제가 적은 이 글이 조금이나마 읽는 분들에게 도움이 되면 하는 바람입니다.

 

이상 고고메이커였습니다.

다음 글에서 만나요~!

+ Recent posts