본문 바로가기

분류 전체보기453

아두이노 내부 풀업 저항 사용하기 (INPUT_PULLUP) https://wikidocs.net/30793 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net 2020. 11. 15.
cds 조도센서 (GL5537) datasheet 사용방법 https://m.blog.naver.com/PostView.nhn?blogId=ann_arbor&logNo=221359275667&proxyReferer=https:%2F%2Fwww.google.com%2F 조도 센서 (CdS) 사용 방법 - I 미세먼지 측정기 또는 온습도계를 사용시 밤으로는 LCD Display가 너무 밝아서 조도센서를 이용하여 L... blog.naver.com 2020. 11. 15.
토양 수분 EC 센서 SEN0193 https://wiki.dfrobot.com/Capacitive_Soil_Moisture_Sensor_SKU_SEN0193#target_1 Capacitive_Soil_Moisture_Sensor_SKU_SEN0193-DFRobot Introduction Our soil moisture sensor measures soil mositure levels by capacitive sensing rather than resistive sensing like other sensors on the market. It is made of corrosion resistant material which gives it an excellent service life. Insert it in to t wiki.dfrobo.. 2020. 11. 15.
작업 (미세먼지 연결) 미세먼지 저항 연결 이렇게 연결했으나 값이 들어오지 않아서 다시 납땜함 . 캐패시터가 너무 파란색 저항이랑 가까워서 수축튜브 달고 납땜하는데 힘들었음 . 그래서 노란 선으로 선을 연장함 다시 납땜 후엔 값 잘 들어옴 2020. 11. 12.
201109- 1111 작업 1109 LED 선을 수축튜브로 정리를 깔끔하게 했으면 더 좋았을 듯 1111 LED 들어오는것 확인 온습도 확인 너무 촘촘하게 붙어 있어서 다시 배열 후 방열판 붙이기로 함 이렇게 2020. 11. 11.
2020.09.20 주문서 2020. 11. 11.
ncs 하드웨어분석 LC1621-SMLYH6 2020. 11. 11.
스마트팜 기본 상태 : 정적 온습도, 이산화탄소, 토양수분, 만족 시 LED 초록색 (안정적인색) LCD 사람이 가까이 가면은 켜지고 없으면 대기 상태 발열패드 대기, 물 펌프 대기, 팬 대기, 창문 대기, 온도 높을 때 : 창문을 열면서, 팬도 돌린다. 근데 밖에 미세먼지가 많으면 팬만 돌린다. LED 빨간색 온도 낮을 때: 창문을 닫는다. 팬 정지, 발열패드 온, LED 파란색 습도 높을 때 : 창문을 열면서, 팬도 돌린다. 근데 밖에 미세먼지가 많으면 팬만 돌린다. LED 노란색 습도 낮을 때 : 창문을 닫고 팬도 정지, 발열패드를 살짝 온, 물 펌프 살짝 온. 땅 수분 : 물 주고 끄고 2020. 11. 10.
#If #else #endif 전처리기 #include #define DEBUG_LEVEL 2 // 2를 DEBUG_LEVEL로 정의 int main() { #if DEBUG_LEVEL >= 2 // DEBUG_LEVEL이 2보다 크거나 같으면 #if, #endif 사이의 코드를 컴파일 printf("Debug Level 2\n"); #endif #if 1 // 조건이 항상 참이므로 #if, #endif 사이의 코드를 컴파일 printf("1\n"); #endif #if 0 // 조건이 항상 거짓이므로 #if, #endif 사이의 코드를 컴파일하지 않음 printf("0\n"); #endif return 0; } 실행결과 Debug Level 2 1 https://dojang.io/mod/page/view.php?id=664 C 언어 코딩 도.. 2020. 11. 9.
16x2 8핀제어 데이터시트 그대로 적은 코드 /* * Main2.c * * Created: 2020-11-09 오전 10:29:49 * Author: User */ #define F_CPU 16000000UL #include #include #include #define LCD_DATAPORTD #define LCD_COMMANDPORTD #define LCD_CTRLPORTB #define LCD_RS 0 #define LCD_RW 1 #define LCD_EN 2 void lcdData(unsigned char data) { LCD_CTRL |= (1 2020. 11. 9.
16x2 lcd 4핀제어. 코드설명 필기 /* * main3_4pins.c * * Created: 2020-11-09 오후 1:57:06 * Author: User */ #define F_CPU 16000000UL #include #include #define LCD_DATA_DIRDDRD #define LCD_CTRL_DIRDDRB #define LCD_DATA_PORTPORTD #define LCD_CTRL_PORTPORTB #define RS PORTB0 #define EN PORTB1 void lcdComm(unsigned char cmd){ //상위 4비트 처리 LCD_DATA_PORT = (LCD_DATA_PORT & 0x0F) | (cmd & 0xF0); LCD_CTRL_PORT &= ~(1 2020. 11. 9.
16x2 LCD D0, D1 -> C 포트에 꼽은 코드 D0, D1이 RX, TX에 꽂혀있어서 업로드가 잘 안되는 듯함. rx tx 뽑아서 업로드 하고 꽂고 다시 업로드 하면 될때도 있고. 이렇게 여러번 해도 안될때도 있고. 꼽힌채로 업로드 해서 될 때 도 있음 -> rx tx를 C 포트에 꼽으면 되는가? 해서 아래 코드를 시도해봄 /* * LCD16x2.c * * Created: 2020-11-06 오후 2:00:16 * Author : User */ #include #define F_CPU 16000000UL #include #define RSPORTB0 #define RWPORTB1 #define EPORTB2 int main(void) { int r, c; char *string[] = {"1st line", "pin23"}; lcdInit(); fo.. 2020. 11. 7.
16x2 LCD (LC1621-SMLYH6) /* * LCD16x2.c * * Created: 2020-11-06 오후 2:00:16 * Author : User */ #include #define F_CPU 16000000UL #include #define RSPORTB0 #define RWPORTB1 #define EPORTB2 int main(void) { int r, c; char *string[] = {"1st line", "2nd line"}; lcdInit(); for (r=0; r 2020. 11. 6.
interrupt 2개 사용 LED 2개 제어 /* * 201105_interrupt.c * * Created: 2020-11-05 오전 9:37:16 * Author : User */ #include #include #define F_CPU 16000000UL // #define _BV(x)(1 1 any logical change // INT1 -> any logical change //EICRA |= _BV(ISC10); // INT0 //EICRA |= _BV(ISC00); // INT1 //EICRA = (_BV(ISC00)) | (_BV(ISC00)); //EICRA |= 5; //EICRA |= 0x05; EICRA |= 0b00000101; //Enable external interrupt 0 and interrupt 1 using t.. 2020. 11. 6.
interrupt 하나 사용 ,LED 하나 /* * 201105_interrupt.c * * Created: 2020-11-05 오전 9:37:16 * Author : User */ #include #include #define F_CPU 16000000UL // #define _BV(x)(1 1interrupt 2개 사용 LED 2개 제어/* * 201105_interrupt.c * * Created: 2020-11-05 오전 9:37:16 * Author : User */ #include #include #define F_CPU 16000000UL // #define _BV(x) (1 1 2020. 11. 5.
atmega 328p port ddrx 2020. 11. 4.
button 풀다운으로 연결하면 켜졌다가 버튼 누르면 꺼짐풀업으로 연결하면 꺼져있다가 버튼 누르면 켜짐#define F_CPU 16000000UL #include #define LED1PORTD6 #define LED2PORTD7 #define BUTTONPORTB0 uint8_t key_lock =0; int main(void) { DDRD = (1 2020. 11. 4.
arduino uno atmega pin map 2020. 11. 3.
201103_LedBlink.c / DDRx 펌웨어 = 데이터시트를 보면서 레지스터를 직접 제어 DDRx 레지스터는 입출력 설정 레지스터 0은 입력 1은 출력을 의미 " | " : 다른 설정들은 건드리지 않고 특정 값만 바꾸겠다는 의미 | 없으면 변수초기화하는것,, 싹 다 바꿈 PORTB |= 0 2020. 11. 3.
atmega328p datasheet 2020. 11. 3.