본문 바로가기

아두이노123

아두이노 이더넷 웹서버 만들기 -#5 여기서 한번 더 복습을 하자. My First Heading 나는 단순히 "My First Heading"이라는 글자를 보여주고 싶은데, 쓸데 없는 문장을 많이 붙여서 전송하고 있다. , , 등등 이상한 글자들이 많이 붙여서 보내고 있다. 왜 그럴까 ? 그렇다 이것은 형식이다. 이렇게 보내야 웹브라우즈가 알아 먹는 형식이다. 이런 형식들을 통틀어 프로토콜이라는 용어를 사용한다. 만약 나는 만사가 귀찮고, "My First Heading" , 이것만 보내고 싶다면 어떻게 해야 할까 ? 방법은 한가지 방법뿐이다. 본인이 직접 웹브라우즈를 만들면 된다. 물론 만들수 없다. 쉬운일이 아니기 때문이다. 본인이 형식을 직접 만들어 혹은 무형식이라도 만들어서 하고 싶다면 본인만의 웹브라우즈를 만들어야 한다. 반대로 .. 2020. 4. 7.
아두이노 이더넷 웹서버 만들기 -#4 복습 차원에서 중간 복습을 하자 소스가 복잡하고 어려워 보이지만 사실 별것은 없다, 가장 핵심은 텍스트 문장을 만들고, 시리얼 프린터로 출력하는게 끝이다. 시리얼 프린터 여러번 사용하는것은 본인을 별로 좋아 하지 않는다. 그냥 한번만 사용한다. client.println(buf); 결국 웹서버의 역활은 클라이언트, 접속자가 원하는 파일을 찾아서 읽어서 전송하는 역활을 하는것이다. 이번에는 그냥 코딩으로 만들어진 문장을 출력했다. SD카드에서 읽어서 한다면 좀더 다양한 웹서버가 구현이 될것이다. 아래 문장을 만든다면 다양한 방법이 있겠지만 본인은 이렇게 만든다. My First Heading char*p; char buf[100]; p = buf; p+=sprintf(p,""); p+=sprintf(p,".. 2020. 4. 5.
아두이노 이더넷 웹서버 만들기 -#3 그러면 W5100S Ethernet Shield 부터 살펴 보자. 라이브러리분석은 스스로 나중에 하기로 하고 일단은 기초 예제를 먼저 테스트 하자. 라이브러리설치 관련해서도 다른분이 올리신 예제가 많으니 별도의 설명은 하지 않겠다. 딱히 설명할 부분은 없을것 같지만, 몇가지만 언급한다면. 아이피 지정 부분이다. 본인의 공유기 아이피 대역에 맞게 사설 아이피를 변경해주는것이다. 본인은 192.168.5.xx 대역을 사용하고 있다. #include #include // Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = {.. 2020. 4. 5.
아두이노 이더넷 웹서버 만들기 -#2 아무래도 나처럼 귀찬아 하는 사람이나 기초가 없는 초보에게 쉴드 형태가 최고다. 일단 연결이 단순하기 때문에 납땝이나 기타가 필요 없다. 본인이 가지고 있는 쉴드는 2가지 종류인데, 하나는 아두이노 우노,메가 보드에 연결할 수 있는 W5100S Ethernet Shield 이고, http://www.wiznetian.com/w5100s-ethernet-shield%EB%A5%BC-arduino-ide%EC%97%90%EC%84%9C-%EC%82%AC%EC%9A%A9%ED%95%B4-%EB%B3%B4%EC%9E%90/ https://github.com/WIZnet/Ethernet 또다른 하나는 아두이노 나노에 연결하는 ENC28J60 이더넷 쉴드 이다. https://github.com/njh/EtherC.. 2020. 4. 5.
아두이노 이더넷 웹서버 만들기 -#1 일단 기초가 없는 사람들을 위해서 개념 부터 설명하고 넘어가자. 우리는 웹서버를 만들것이다. 이 웹서버를 만들기전에 우리는 웹서버, 서버에 대한 정의 부터해야 한다. 만들고자 하는 서버가 네이버 서버 처럼 사용자 접속이 많은것이냐 ? 아니면 단순하게 비닐하우스의 온도,습도 같은 간단한 정보만 주는것이냐 ? 이질문의 답으로 사용자가 많지 않은 웹서버 같은 경우 아두이노도 충분하다. 다시말해서 본인이 만들고자하는 서버의 종류, 서비스의 용도에 따라 아두이노가 가능하고 안되고 판단 할 수 있다. 아두이노로 서버가 가능하나요 ? 아두이노로 웹서버가 되나요 ? 어찌보면 개념도 기초도 없는 어리석은 질문이다. 물론 본인이 개념이 없다고 자책은 필요 없다. 지금부터 기초부터 공부하면 된다. 웹서버의 기본인 HTML부.. 2020. 4. 5.
아두이노와 7세그먼트(잡담) 본인도, 초보도 한번쯤 하는 7세그먼트다 나름 공부할게 좀 있다. 그런데 유튜브가 블로그나 대부분에서 중요한것을 이야기하지 않고 넘어가는게 있다. 무엇일까... 7세그먼트가 공용 애노드인지 공용 캐소드 인지에 대한 언급이 없다. 그러나 7세그먼트에서 제일 중요한 부분이다. 나머지는 그냥 공통된 연결이고 LED 수준의 배열이다. 이게 너무 간단해서 그런지 그렇게 언급하고 넘어가지만 사실 중요한 부분이다. 가격을 고려해서 중국산 제품을 구매하면 특히 그렇다. 판매자도 잘알려주지 않는다. 그래서 검색하면 구글에 잘못된 정보와 데이터시트에도 잘 없다. 중국산은 특히 그렇다. 일단 초보자라면 중국산을 선호 하지 말기 바란다. 약간 비싸도 국산이다. 국산은 없겠지만... 일단 구글검색해서 다 찾기는 했지만 데이터시.. 2020. 3. 29.
아두이노의 모든것 아두이노의 모든것이라는 책에 관련된 이야기다. 작년인가 책에 대한 리뷰를 몇자 정도 적어준적이 있다. 사실 많은양은 아니고 A4 2,3장 정도이다. 본인도 잊고 있었는데, 우연치 않게 책하나가 배송이 왔다. 책의 내용을 보니 아두이노 책 중에서는 괜찮고 깔끔하다. 단점이 없는것은 아니지만 한번쯤 볼만한 책이라 추천을 한다. 책의 최대 단점이자 장점은 책의 내용에 너무 많은것을 표현 할라고 하는것이다. 뒤로 갈 수록 주제가 크고 내용이 많아야 하지만 주제에 비해서 내용이 없다. 차라리 3D 프린터 부분은 없는게 더 좋을수도 있을것 같다. 단점은 이정도로 하고 장점은 이책의 저자를 잘 모르지만, 느낌은 하드웨어 전문가 인것 같다. 아두이노 소프트웨어 보다는 하드웨어적으로는 상당히 알기 쉡게 설명하고 있다. .. 2020. 3. 27.
아두이노와 달력 - #최종 지금 까지 달력, 날짜에 대한 정의를 내리고 객체까지 만들어 봤다. 물론 더 할것이 있다. 귀찮아서 안한것도 분명히 있다. 아래 3개 정도는 직접 만들어 보기 바란다. 그냥 비어 있는것으로... Calendar operator- (const Calendar &) { int y,m,d, hr, mi, se; return Calendar(y,m,d, hr, mi, se); }; Calendar operator- (int sec) { int y,m,d, hr, mi, se; return Calendar(y,m,d, hr, mi, se); }; Calendar operator+ (int sec) { int y,m,d, hr, mi, se; return Calendar(y,m,d, hr, mi, se); }; h.. 2020. 3. 7.
아두이노와 달력 - #13 앞에서 여러번 언급해서 내용을 알고 있을것 같다. 오늘 마지막으로 하는것은 현재시간에서 1년 2달 3일 4시간 5분 6초 후를 계산 할 것이다. 현재 시간이 변하고 있기 때문에 값도 바뀌게 되겠지만, 고정된 시간으로 계산해도 무방 하다. 예를 들어 100일 이후를 계산한다 던지 7800초 이후라는 수식도 가능 하다.. 조금, 설명을 더하면, 현재 시간이 cdt, 계산된 시간을 todt라고 변수를 정의 했다. 소스코드는 간단하니 어려울것은 없을것이다. void loop() { get3231Date(); Calendar cdt(2000+year, month, date, hours, minutes, seconds); Calendar todt = cdt + Calendar(1, 2, 3, 4, 5, 6); cd.. 2020. 3. 7.