2013년 5월 28일 화요일

Serialize Setup Program from P&E

금번에 개발 중인 GPRS 디바이스의 FCC and CE 인증을 준비중이다.
이제 테스트 플랜을 다 만들어 기관에 의뢰하여 검증하였고, 어제 Purchase order를 place하였다. 우리가 이용하는 인증대행기관은 EMC Technologies 라는 기관으로 여기서 조금 떨어진, 그래도 빅토리아 주에 위치하는 기관이다. (한번 방문한적이 있다)

아직, 그쪽에서 스케줄 오거나이징 한것은 아직 결과를 받아보지 못했으나,
준비하는 중, serial number assignment 관련하여, 매니저가 선임 엔니지어와 함께 논의하여 결론지으라 지시했다.

선임 엔지니어는 뭔가를 들여다보고 있더니, P&E에서 구입한 Cyclone Pro의 User Manual을 건네준다. 그안에 보니, 12장에  Automatic Serial Number Mechanism이란게 있다.

이 회사에서 산 Cyclone Pro를 이용해서, 우리 회사에서 제조하는 콘트롤러에 이미지 파일을 다운로딩하고 있는데, 그러니까 주로 SAP Stand-alone Programming 용도로 쓰고 있었다.

이 장비에 그런데, 시리얼 번호 부여 기능이 있다고 한다. 사용자가 원하는 위치와, 시리얼 번호의 규칙을 정한 다음에, 파일을 생성한 후, 이걸 기반으로해서, 사용자가 원하는 위치의 온보드 플래시 메모리에 시리얼번호를 넣어주는 것이다. 그리고서 파일이 갱신되어 시리얼번호가 하나 증가된다.

시리얼 번호 부여는, 이번에만 필요한게 아니라, 실제로 제조하여 판매할때 더욱 필요한 것이라, 그걸 감안하여 이런걸 쓰자고 이걸 나에게 보여주는 것이다.

매뉴얼을 받아다 보니, 꽤 쓸만했다. 프로그램을 뒤져서 찾아 해보니 프로그램은 쪼금 어설프긴 해도, 사용도 쉽고..


프로그램은 실행시 모양이 요렇게 생겼다.
규칙을 정하는 부분과, Starting address를 설정하는 부분으로 구성되 있다.
Starting address 부분은, MCU의 데이터쉿에 나오는 플래시 메모리 구성을 참고하여 설정했다.

이걸 저장하면 *.ser이란 파일이 생성된다.
그다음, 파일 이미지를 쓰는 프로그래밍 소프트웨어를 실행한다. (물론 싸이클론 프로를 타겟 디바이스와 연결 후)

P&E 프로그램 깐 거 중에서 인터렉티브 프로그램 중, 해당되는 MCU 타입에 따라 맞는 프로그램을 실행한다.  

(오늘은 여기까지..)  퇴근 시간이다. 

QT에서 MySQL 쓸 수 있게 설정.

Qt에는 기본적으로 MySQL을 쓸수 있게 되어있지 않다. Qt 책에 보면, 라이선스 제약 때문이라고 그러던데, Qt의 오픈소스 에디션에 모든 드라이버가 제공되지 않음.

각설하고, MySQL을 쓸수 있게 하려면 "뭔가"를 해줘야 하는데,,
회사에서 금번에 컴퓨터를 바꾸면서, 새로 그 작업을 다시 해줘야 했다.
기억이 안나서, 다시 그작업을 하려니 또 시간이 걸린다.

이번에는 과정을 좀 자세히 정리해야 할 것 같다.

(1) 먼저 Qt에는 소스파일 패키지가 설치되어 있어야 함.
      -> 확인방법 : 소스가 설치된 위치로 이동:
      -> 나의 경우는  C:\Qt\4.8.4\src\plugins\sqldrivers\mysql
             이 안에, mysql.pro와 main.cpp가 들어 있었다.

(2) MySQL을 깔아야 함. (이건 C:\MySQL에 설치하였음)
       ->  mysql-connector-c-6.0.2-win32.msi를 깔았음.

(3) mysql 소스가 설치된 위치로 이동 ==> (1)번의 위치로 이동

(4) Modify the file mysql.pro



    (수정할 포인트)  INCLUDEPATH와 LIBS 부분을 추가.


(5) qmake mysql.pro와 make를 실행

(6) 그러면, 네 개의 파일이 생겨남.  
      -> libqsqlmysql4.a / libqsqlmysqld4.a / qsqlmysql4.dll / qsqlmysqld4.dll
      -> 이 파일들이 C:\Qt\4.8.4\plugins\sqldrivers   에 저장됨.

(7) 그리고서 DOS prompt에서 다음을 실행하여 libmysql.dll 을 생성하여야 함
      -> go to C:\MySQL\lib\opt에서
      -> reimp -d libmysql.lib      (reimp.exe는 인터넷에서 다운로드함)
      -> dlltool -k -d libmysql.def -l libmysql.a

(8) 이렇게 생성된 libmysql.dll을 C:\Qt\4.8.4\bin 에 넣어야 함.
     (물론, C:\Qt\4.8.4\bin은 PATH에 잡혀있어야 함)


<마지막으로 주의사항>
프로젝트 파일인 .pro에 QT+=sql을 삽입한 후 실행해야 함.
=> QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");


다음의 글은 참고.




 

2013년 5월 23일 목요일

RealTerm 사용기 - 하이퍼터미널 대체

이번주에는 회사에서 노트북(여기서는 랩탑이라 부르는)을 지급했다.
현재는 데스크탑을 쓰고 있었는데, 리스 만료기간이 되어, 그에 맞추어
데스크탑을 다 회수하고, 랩탑으로 교체하기로 했다고 한다.

새 기계를 받으면 언제나 좋지만, 더러운 책상도 한번 정리하고,
자료도 한번 싹 정리하고..
그렇지만 개발 툴 등을 정리하는것이 성가시다.

그저께인 수요일날 지급이 되고, IT 가이가 친히 MS 관련 소프트웨어는
백업을 받아주었으나, 나머지는 각자 알아서 하란다.
개발하는 사람이 거의 없어서리,,, 우리를 배려 전혀 안한다.. -_-

가장 골치 아플것으로 예상했던, CodeWarrior 툴은, 의외로 쉽게 rehost했다
라이센스를 사고서, 여기 홈페이지가서, 이 툴을 쓸 PC의 유니크한 아이디
나같은 경우 ethernet address를 집어넣고서 license를 generate한 후 이걸 피씨에 특정
위치에 두고 썼었다.

rehost는 이번 경우처럼 PC를 replacement할 때, 라이센스를 기존 기기에서 다른 기기로
옮기는 과정을 말한다. Freescale에 가니, HOW to rehost 라는 친절한 동영상이 있어서리
이걸보고 그대로 따라했다. 쉽게 되었다.
여기까지가 수요일에 한 일이고.
어제는 우리 아이들 학교에 안가는 날이라 (curriculum day - 이런날이 꼭 하루씩있다.
선생님은 나오는데 아이들은 안가는 날. Pupil free day라고도 한다)

연가내고, 집에서 애들 뒤치닥거리하고,
오늘 나와서 이 귀찮은 일들을 또 시작했다.

웬만큼, 정리하고서, 실제 개발환경에 문제가 없는지, 테스트 하다보니,
새로운 랩탑에는 Hyperterminal이 없다.  윈도우즈 7에 이거 없다는 얘기를 옆에 동료가
예전에 한게 생각났다. . 어 정말 없다.. 그분께 여쭤보니, 음.. 그거 없어서 자기는 집에서
realTerm을 쓴단다.  이거가 더 좋다고 free 니까 다운받아 쓰라고 알려준다.

고맙게도.. 받아서 해보니.  인스톨은 쉬우나, 실행시 에러가 나면서 안된다.

==>Error Messsag를 받았다.  Error accessing the OLE registry.
==> 내용인 즉, OLE registry에 접근하지 못한다.. 라는 내용.

해결방법은...  realTerm이 깔린 자리로 가서(나같은 경우, C:\program file\BEL\ 인가?)
거기에서 realTerm.exe의 property를 연후, 권한을 바꾸어주면된다.

"Run this program as an administrator"

그렇게 바꾸고 나면 실행이 되는데, 첨에는 뭘 어케 셋팅하는지 헷갈리나.
자세히 살펴보면, 하이퍼터미널에서 셋했던 것 보드레잇 같은거 설정하는 탭을
발견할 수 있다.

이젠 잘 돌아간다~

잔디 3주차

 잔디 심기. 3주차에 접어들었음. 사진. 아래가 1일차 사진. 다음이 3주차.