분류 전체보기
-
LM35 온도 센서Arduino/온도,습도 센서 2020. 10. 27. 18:14
LM35온도센서는 A0핀에 연결한다. A0핀은 아날로그 핀으로 아날로그 핀의 값을 읽어서 전압으로 값을 변환해야 하는데, 전압은 0~5V로 표현 된다. lcd는 캐릭터 LCD이며, 캐릭터 LCD의 연결은 캐릭터 LCD를 참고하자. 소스 코드 // LM35 온도 센터 #include const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2; LiquidCrystal lcd(rs, en, d4, d5, d6, d7); void setup() { lcd.begin(16, 2); Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: float voltage = (floa..
-
온도,습도 센서Arduino/온도,습도 센서 2020. 10. 27. 18:05
화씨,섭씨,습도 값을 이용하여(dth11:입력센서) 버튼을 누를 때마다 (버튼:입력센서) 캐릭터 LCD에 3개의 값이 순차적으로 출력되도록 구성하자. 먼저, 버튼은 풀업 저항으로 구성을 한다. 아래의 그림을 보자. 버튼에는 2개의 선만 연결한다. 남색은 GND로 연결하면 되고 초록색선은 13번핀에 연결한다. 아래에서 온도,습도 센서의 연결을 보자. 맨 오른쪽 노란선은 GND에 연결되고 맨 왼쪽의 노란선은 빵판의 +선에 연결한다. 그리고 가운데 초록색 선은 8번핀에 연결한다. 그리고 캐릭터 LCD 기존에 했던 것과 연결이 같다. 소스 코드 더보기 // 버튼의 반응이 느리므로 이에 대한 처리는 인터럽트를 통해서 처리할 수 있다. // dht11, 화씨 섭씨 습도 값을 이용하여(dth11:입력센서) // 버튼..
-
LCD에 한 글자씩 출력하기Arduino/캐릭터 LCD 2020. 10. 26. 18:37
하드웨어의 구성은 아래에서 참고하자. designatedroom87.tistory.com/240 포텐시오미터와 캐릭터 LCD의 화면 밝기 조절 하기 그림은 ArduinoGetStarted.com에서 발췌 부품에 대해서 알아보자. 가변 저항과 캐릭터 LCD와 아두이노는 다음과 같이 연결한다. 연결이 상당히 복잡하다. 그림을 실제 연결한 그림을 보자. 아두이노의 5 designatedroom87.tistory.com 프로그래밍의 예제는 문자 a부터 z를 LCD에 출력을 하는데(출력의 방향은 기본으로 오른쪽 방향) 만약 문자가 m이면 방향을 변경하고 다시 문자가 s이면 다시 방향을 변경한다. 그리고 마지막으로 문자 z를 출력하면 다시 위의 과정을 반복한다. LiquidCrystal를 헤더파일로 추가하고, 이 ..
-
포텐시오미터와 캐릭터 LCD의 화면 밝기 조절 하기Arduino/캐릭터 LCD 2020. 10. 26. 18:23
캐릭터 LCD와 아두이노의 하드웨어 연결 연결이 상당히 복잡하다. 그림을 실제 연결한 그림을 보자. 아두이노의 5V선과 빵판의 (+)위치에 연결하고, 아두이노의 GND와 빵판의 (-)위치에 연결하자. * LCD RS pin to digital pin 12 * LCD Enable pin to digital pin 11 * LCD D4 pin to digital pin 5 * LCD D5 pin to digital pin 4 * LCD D6 pin to digital pin 3 * LCD D7 pin to digital pin 2 * LCD R/W pin to ground * LCD VSS pin to ground * LCD VCC pin to 5V * 10K resistor: * ends to +5V an..
-
3차원 배열의 활용 - 테트리스 블록C/다차원 배열 2020. 10. 25. 21:48
참고 문헌 윤성우의 파워C 프로그래밍 커서의 위치를 원하는 위치로 이동시켜 테트리스 블록 몇 개를 그려보는 것이 이 에제의 주제이다. 이 예제에서 API함수를 이용하는데, 이는 그냥 넘어가도록 하자. 3차원 배열이 그냥 이렇게도 쓸 수 있다는 사실을 보여주고 싶었다. 우선 테트리스 블록은 2개로 가정하자. 테트리스 하나의 블록 정보를 표현은 2차원 배열로 표현한다. 크기는 4X4로 표현했다. 아래에서 전역변수로 쓰인 blockModel 변수를 보자. blockModel 배열은 총 2개의 블록정보를 담고 있다. 그리고, 총 3개의 별도의 함수를 정의하는데, 이는 다음과 같다. 아래에서 COORD는 처음보는 데이터 타입인데 이는 구조체로 단순히 커서의 x좌표와 y좌표를 가지고 있는 데이터라고 보자. GetC..
-
3차원 배열의 활용 - 영한사전 만들기C/다차원 배열 2020. 10. 25. 20:58
아래와 같이 입력에 대한 출력이 되도록 프로그램을 만들어보자. 위의 입력과 출력결과를 먼저 분석해보면, 각 영어 단어에 대한 한글 단어가 매치가 되고 있다. ( 단어는 문자열이다. ) 그리고 입력에서 공백문자를 포함해서 읽어들어야 하므로 scanf() 함수를 사용할 수 없다는 것을 알 수 있다. 그리고 입력받은 데이터의 공백에 널문자 추가해야 한다. 그 이유는 단어로 쪼개기 위해서. ( 널 문자 단위로 읽어 들인다. ) 즉, 영어 단어를 하나 찾고 그 영어 단어에 대응하는 한글 단어를 출력배열에 저장을 하면 될 것이다. 먼저 필요한 자료구조에 대해서 이야기 해보자. 한글과 영어라는 언어의 수는 2종류이다. 그리고 한글과 영어단어는 모두 문자열이다. 그리고 매치가 되는 한글 단어와 영어 단어의 묶음이 여러..
-
Layout - GridLayoutJAVA/GUI - Swing 2020. 10. 24. 23:01
Layout은 콤포넌트 배치 방법을 지정한다. GridLayoutFrame.java 소스 파일 GridLayoutDemo.java 소스 코드 더보기 import javax.swing.JFrame; public class GridLayoutDemo { public static void main( String args[] ) { GridLayoutFrame gridLayoutFrame = new GridLayoutFrame(); gridLayoutFrame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); gridLayoutFrame.setSize( 300, 200 ); // set frame size gridLayoutFrame.setVisible( true ); /..