[아두이노#539] (ESP01/3편) 아두이노 메가와 ESP01을 이용해서 MQTT 프로토콜을 클래스화 해보기!(초고난이도/녹칸다/포로리야공대가자)
(ESP01/3편) 아두이노 메가와 ESP01을 이용해서 MQTT 프로토콜을 클래스화 해보기!(초고난이도)
녹칸다의 ESP01시리즈이다!
이번편에서는 2편에서 함수화 해놓은 ESP01을 클래스(class)로 구현해보도록 한다!
이것은 마치 아두이노 라이브러리(library)를 만드는 것과 같다!
(실제로도 이번 결과물을 라이브러리로 등록해두면 라이브러리라고 할 수 있는 것이다)
함수로 구현해둔 기능을 클래스로 만든다는 것은 녹칸다의 예제를 활용할때 편리성을 위함이다!
그러나 편리함을 위해서는 댓가가 따르기 마련이다!
ESP01에 MQTT를 사용하기 위한 모든 기능을 어떻게 하면 라이브러리로 만들 수 있을지 알아보자!
문법적으로 핵심이되는 키워드는 아래와 같다!
1.함수 포인터(콜백함수)
2.클래스 포인터
3.char배열 포인터의 끝지점이란?('\0')
4.등등
아두이노에서 사용되는 최상위 문법이 난무할 예정이다!
만들때만 고통스럽고 대신 다 만들어두면 편리하게 쓸 수 있지 않을까 하는게 녹칸다 생각이다!
만들어서 그냥 공유하면 되지 왜 방송을 통해 만드냐라고 한다면 왜 귀찮게 미리 만들어두느냐 하는게 녹칸다의 대답이다!
(실제로한거)
1.녹칸다가 538편에서 만들었던 ESP01을 이용한 MQTT예제는 항상 문제가 없다는 것을 전제로해서 만들어졌다! 문제가 생기면 어떻게 될지에 대해서 논하고 그것을 해결하시오!
2.클래스(CLASS)의 기본 모양이 어떻게 생겼나?(클래스는 기능이 다양한 구조체이다)
3.함수의 입력으로 클래스를 받아들이는 방법!(대단히 이상한 문법)
4.클래스의 생성자로 다른 클래스의 주소를 받아들이는 방법!
5.함수포인터가 뭐냐?
6.538편예제를 클래스화 하는 작업을 해보자!(녹칸다의 ESP01을 이용한 MQTT의 가장 기본이 되는 예제가 완성되었다)