Arduino
-
Step Motor를 연결하고 작동해보기Arduino/Step Motor 2020. 11. 12. 17:45
하드웨어 연결 연결은 쉽다. Step Motor의 각 연결핀 IN4핀을 아두이노의 11번핀에 연결하고 Step Motor의 각 연결핀 IN2핀을 아두이노의 9번핀에 연결하고 Step Motor의 각 연결핀 IN3핀을 아두이노의 10번핀에 연결하고 Step Motor의 각 연결핀 IN1핀을 아두이노의 8번핀에 연결한다. Step Motor의 -5핀은 아두이노의 GND핀에 연결하고 Step Motor의 +12V핀은 아두이노의 5V핀에 연결한다. 우선, 라이브러리를 써보고 구현을 직접해보자. 소스 코드 더보기 #include // 회전각도 설정. 2048 한 바퀴 (360도), 1024 : 반바퀴(180도) const int stepsPerRevolution = 2048; // 모터 드라이브에 연결된 핀 IN..
-
Dot Matrix와Arduino/Dot Matrix 8x8 2020. 11. 9. 18:21
아래와 같이 LED의 빛 하나 켜고 끄기를 하기위해서 연결한 것이다. Dot Matrix의 C1을 아두이노D5번핀에, Dot Matrix의 R1을 아두이노D13번핀에 연결한다. C1은 입력핀이다. C는 열(Column을 의미). R은 행(row를 의미한다.) 저항은 220옴을 연결한다. 위와 같이 연결했으면, Dot하나의 LED를 켜고 꺼보자. 소스 코드 더보기 void setup() { // put your setup code here, to run once: pinMode(5,OUTPUT); pinMode(13,OUTPUT); digitalWrite(5,HIGH); digitalWrite(13,LOW); } void loop() { // put your main code here, to run rep..
-
JoyStick과 서보 모터를 연결해서 서보 모터 제어하기Arduino/Joy Stick 2020. 11. 9. 18:02
하드웨어의 구성에서 아두이노와 빵판을 먼저 연결하는데 아두이노의 5V핀과 빵판의 VCC와 연결하고, 아두이노의 GND와 빵판의 GND에 연결한다. 그리고 나서 기존의 조이스틱의 5V핀과 GND핀을 빵판의 VCC와 GND에 연결한다. 서보 모터와의 제어는 아래를 참고한다. 서보 모터의 6번핀을 아두이노의 D6번핀에 연결한다. 모두 연결하면 아래의 그림이 된다. 조이스틱의 x값을 오른쪽으로 이동시키면 각도가 증가하고 반대로 조이스틱의 x값을 왼쪽으로 이동시키면 각도가 감소하도록 만들어보자. 초기 설정에 서보 모터의 각도는 90도(중간 각도)로 설정한다. 소스 코드 더보기 #include Servo servo; int degree = 90; void setup() { // put your setup code ..
-
JoyStick과 아두이노의 기본적인 연결과 값 읽기Arduino/Joy Stick 2020. 11. 9. 17:48
아두이노와 조이스틱의 연결 연결에는 어려운 것이 없다. 조이스틱의 VRX핀은 아두이노의 A0핀에 연결 조이스틱의 VRY핀은 아두이노의 A1핀에 연결 조이스틱의 SW(버튼)핀은 아두이노의 D8번핀에 연결 나머지는 VCC와 GND이다. 프로그래밍을 할 내용은 조이스틱의 x값(수평 값)의 변화가 일어나면 그 때의 정보를 출력해보자. 조이스틱의 x값과 y값은 0~1023의 값을 갖는다. 이 프로그래밍에서 생각해야할 것은 조이스틱은 민감하기 때문에 시리얼 모니터로 analogRead(A0)의 값을 확인하면 조이스틱을 움직이지도 않았는데 그 값이 매우 민감하게 변한다. 그렇기 때문에 값의 범위를 지정해서 특정한 값 범위를 중심으로 움직임을 판단하자. 그리고 현재의 조이스틱의 x값과 그 이전의 값을 저장하고 있어야 ..
-
7Segment에 숫자를 표시Arduino/Shift Register 2020. 11. 6. 18:45
D Flip Flop은 LOW에서 HIGH가 될 때, 신호를 내보낸다. 레지스터의 14번 핀을 통해 10진수의 데이터가 입력되면 a~h핀(8개. h핀은 7Segment의 dp핀에 연결)을 통해 2진수 형태의 데이터가 출력된다. 하드웨어의 연결 먼저, 아두이노의 5V선과 빵판의 VCC선과 연결을 한다. 그리고 아두이노의 GND선과 빵판의 GND와 연결을 한다. VCC와 GND가 필요하면 점프선으로 연결한다. 레지스터의 16번핀은 빵판의 VCC에 연결. 레지스터의 10번핀은 빵판의 VCC에 연결. 레지스터의 9번 핀에는 아무것도 연결하지 않는다. 레지스터와 아두이노의 핀 연결 레지스터의 14번핀과 아두이노의 3번핀을 연결 레지스터의 13번핀은 아두이노의 GND핀에 연결 레지스터의 12번핀은 아두이노의 4번핀..
-
SPI의 기본적인 연결하기Arduino/SPI 통신 2020. 11. 5. 18:12
채널은 Address로, Level은 값으로 사용한다. 하드웨어의 연결은 두 아두이노 간의 D10 ~ D13까지 핀들을 각 각 연결한다. Master 소스 코드 더보기 // MOSI D11 // MISO D12 Master In Slave Out // SCK D13 // SS D10 칩 셀렉트 // SPI Master : Sender // 마스터는 데이터를 읽는 입장이다. #include #define CHIP_SELECT 10 // HIGH면 칩 셀렉트가 선택 안된 상태. LOW이면 선택된 상태 void setup() { // put your setup code here, to run once: SPI.begin(); pinMode(CHIP_SELECT,OUTPUT); digitalWrite(CHIP_..
-
I2C 통신의 기본적인 연결하기Arduino/I2C 통신 2020. 11. 5. 18:04
하드웨어의 연결 DATA PIN은 아두이노의 A4핀이고, CLK PIN은 아두이노의 A5핀이다. 두 아두이노 간에 서로 각 핀들을 서로 연결한다. 마스터 아두이노의 5V 핀을 슬레이브 아둥노의 Vin 핀에, 그리고 마스터 GND핀을 슬레이브 GND핀에 연결한다. I2C의 통신을 위해서는 Wire.h 헤더 파일을 추가해야 한다. Slave가 보낸 데이터 값을 Master가 읽는 예제 Master 소스 코드 더보기 // I2C 통신. // Master : Sender #include #define SLAVE 4 // Slave의 주소. 마스터에서는 자유롭게 선택 가능하지만 // 슬레이브에서는 고정되어야 한다. void setup() { // put your setup code here, to run once..
-
아두이노와 아두이노의 시리얼 통신하기Arduino/Serial 통신 2020. 11. 5. 17:51
1. 두 아두이노의 통신으로 LED 켜고 끄기 아두이노는 통신 시에 핀이 정해져 있다. Rx와 Tx핀에 연결해야 한다. 신호를 보낼 시에 Serial.write함수 혹은 Serial.print함수를 이용한다. 동기화를 하자. 동기화는 데이터를 주는 쪽도 1초 간격으로 받는 쪽도 1초 간격으로 받도록 한다. 송신에서 신호를 보내고 받는 쪽에서 1초마다 읽어 LED를 켜고 끈다. 1초마다 신호를 보내자. 하드웨어의 구성 마스터 쪽 5V선을 연결하고 슬레이브의 Vin핀에 연결하고 (검은색선) 마스터의 GND와 슬레이브의 GND를 연결 서로 연결한다. (흰선) 마스터의 GND핀과 빵판의 GND에 연결하고 (붉은선) 마스터의 Tx핀과 슬레이브의 Rx에 연결한다. 흰선 슬레이브의 13번핀과 LED를 연결(노란선) ..