Lazarus Raspberry Pi LED Test

Lazarus Raspberry Pi LED Test 라자루스에서 GPIO를 사용해보았다. 우선 지정된 핀 코드만 잘 맞으면 아주 쉽습니다. 저의 경우는 라즈베리파이에서 GPIO를 처음 써본거라 많이 삽질 했습니다. 우선 라즈베리파이에서 Lazarus 를 설치하고 LED를 켜는 부분까지 설명해 보도록 하겠습니다. 라자루스 설치 우선 라자루스를 설치하는 법은 간단합니다. 라즈베리 파이에서도 팩키지 설치가 쉽기 때문에 apt-get 을 사용해서 쉽게 설치 할수 있습니다. 하지만 시간이 조금 걸리는 편입니다. 설치 방법은 [Lazarus wiki] 를 참조하면 아주 쉽습니다. sudo apt-get update sudo apt-get upgrade sudo apt-get install fpc sudo apt-get install lazarus Source Code 핀 지정 ...

February 26, 2019 · 2 min · 267 words · Hillfolk

MQTT Protocol

개념 Message System 개념 애플리케이션은 중개자를 통해 목적지로 메시지를 공급한다. 애플리케이션은 메시지를 소비하기 위해 같은 목적지를 구독한다. Message 개체 간의 교환 하는 데이터 Destination 메시지를 교환 하는데 사용되는 주소 Producer 메시지 공급 개체 Consumer 메시지의 목적지로 부터 소비하는 개체 Bloker 공급자로 부터 메지시를 받아서 소비자 들에게 메시지를 전할하는 개체 메시지는 참여자들 간의 결합도가 낮다는 것이다. 구성이 유연하다. 구독과 발행 메시지 구독 모델 Point-to-Point : 공급개체가 보낸 메시지가 1명의 소비자개체에게 전달 Publish/Subscribe : 공급개체가 보낸 메시지를 관심있는 모든 소비자에게 전달 ...

February 25, 2019 · 2 min · 265 words · Hillfolk

언제나 어려운 이름 Thread(Multithread Programming)

Delphi Thread Object 델파이 쓰레드 객체는 TThread 객체를 상속 한다. 필요한 실행 코드는 Excute 를 오버라이드하여 구현하며 생성후 Resume 하여 작업을 시작한다. type TExThread = class(TThread) protected procedure Execute; override; end; { TExThread } procedure TExThread.Execute; begin inherited; while not Terminated do begin Synchronize( procedure() begin frmHillThread.mConsole.lines.Add('Time:' + TimeToStr(Now)); end); Sleep(1000); end; end; Thread 기본 사용법 Thread priority tpIdle -> tpLowest -> tpLower -> tpNormal -> tpHigher -> tpHighest -> tpTimpCritical ...

February 4, 2019 · 6 min · 1105 words · Hillfolk

Object Pascal String Format

Number d = 정수(Decimal) e = 과학수치(실수)(Exponent,Scientific) f = 부동소수점(Fixed) g = 일반실수(General) m = 통화(Money) n = 숫자(Number,floating) p = 포인터(Pointer) s = 문자열(String) u = 부호없는 정수(Unsigned decimal) x = 16진수(Hexadecimal) Datetime formatdatetime command Example code : Showing all of the date field formatting data types var myDate : TDateTime; begin // Set up our TDateTime variable with a full date and time : // 5th of June 2000 at 01:02:03.004 (.004 milli-seconds) myDate := EncodeDateTime(2000, 6, 5, 1, 2, 3, 4); // Date only - numeric values with no leading zeroes (except year) ShowMessage(' d/m/y = '+ formatdatetime('d/m/y', myDate)); // Date only - numeric values with leading zeroes ShowMessage(' dd/mm/yy = '+ formatdatetime('dd/mm/yy', myDate)); // Use short names for the day, month, and add freeform text ('of') ShowMessage(' ddd d of mmm yyyy = '+ formatdatetime('ddd d of mmm yyyy', myDate)); // Use long names for the day and month ShowMessage('dddd d of mmmm yyyy = '+ formatdatetime('dddd d of mmmm yyyy', myDate)); // Use the ShortDateFormat settings only ShowMessage(' ddddd = '+ formatdatetime('ddddd', myDate)); // Use the LongDateFormat settings only ShowMessage(' dddddd = '+ formatdatetime('dddddd', myDate)); // Use the ShortDateFormat + LongTimeFormat settings ShowMessage(' c = '+ formatdatetime('c', myDate)); end; Show full unit code d/m/y = 5/6/00 dd/mm/yy = 05/06/00 ddd d of mmm yyyy = Mon 5 of Jun 2000 dddd d of mmmm yyyy = Monday 5 of June 2000 ddddd = 05/06/2000 dddddd = 05 June 2000 c = 05/06/2000 01:02:03 Example code : Showing all of the time field formatting data types ...

January 20, 2019 · 5 min · 1057 words · Hillfolk

데이터 스토리텔링 요약

데이터로 스토리를 전달하기 위해 학습해야 하는것 (6 가지) 해당 상황 정보를 이해한다. 적합한 시각적 디스플레이를 선택한다. 잡동사니를 제거한다. 여러분이 원하는 위치에 주목을 이끌어 낸다. 설계자처럼 생각한다. 상황정보의 중요성 탐색용 & 설명용 대상, 주제, 방법 상황 컨설팅 어떤 배경 정보가 관련이 있거나 필요한 것인가? 청중 또는 의사 결정권자는 누구인가? 이들에 대해서 무엇을 알고 있는가? 청중이 우리의 메시지에 대해 지지하거나 반대하게 할 수 있는 편견(bias)은 무었인가? 발표사례를 좀더 강화하기 위해 사요이 가능한 데이터는 무었인가? 이 데이터에 청중은 익숙한가 아니면 문회한가? 어디에 위험이 내재하는가? 어떤 요소가 발표사럐를 약화시킬 것인가? 또한 이를 긍정적으로 만들기 위해 필요한 것은 무엇인가? 성공적인 결과는 어떤 모습인가? 발표할 시간이 제한되어 있거나 청중이 알았으면 하는 내용을 한 문장으로 말해야 한다면 무엇을 말할 것인가? 3분 스토리 &빅아이디어 3분 스토리 청중이 무엇을 알아야 하는지를 말한다고 한다면 여러분은 무었을 말할 것인가? 여러부닝 말하고자 하는 스토리를 명확하게 문서화 할수 있도록 해주는 좋은 방법 내가 말하고자 하는 내용을 3분간 이야기 할수 있는 내용으로 축약한다. 청중을 빠르게 설득하거나 짧은 신간에 말할수 있는 내용을 준비한다. 이렇게 긴 내용을 짧은 시간으로 정리할 경우 발표 시간에 따라서 내용을 늘리거나 줄이는것이 쉬우며 내용 전달도 자연스럽게 할수 있다. ...

January 20, 2019 · 2 min · 272 words · Hillfolk