文章

顯示從 5月, 2012 起發佈的文章

Console non-Blocking Input | 控制台非阻隔輸入

有些時候(特別是控制台遊戲)並不希望程式因為等待用家的輸入而停止執行,這時可以使用_kbhit() 檢查鍵盤輸入和 getchar()取得輸入字元。 Sometime, input is needed without any stop when the program running loop(e.g. cmd-line game). At this time, we may try to use _kbhit() with getchar(). #include <conio.h>  while (true) {         if (_kbhit())             ch_keyPressed = getchar();         /* Your code*/ }

續:突如奇來的高科技電子零件

圖片
改做的步驟太約是這樣: 1. 利用IDA分析DPFMate.exe, 找出儲存bmp的地址 2. 寫一個新的exe去取代DPFMate.exe LanguageUnicode.ini是用來儲存button上的文字 應該成為分析用的flag LanguageUnicode.ini [Language] Lan_1=English Lan_2=Chinese Lan_3=French [English] IDC_STATIC_PREVIEW=Preview: IDC_STATIC_PICSINDPF=Pictures In Preview Album: IDC_BTN_ADDTODPF=Add IDC_BUTTON_DRAWRECT=Rect IDC_BUTTON_CLEARRECT=Clear IDC_BUTTON_CHANGE_L=RotateL IDC_BUTTON_CHANGE=RotateR IDC_BUTTON_SEND=Download IDC_BUTTON_SELECTALL=All IDC_BUTTON_DELECT=Delete IDC_BUTTON_SAVE=Save IDC_BUTTON_SAVEALL=SaveAll ID_EXIT=Exit IDC_BTN_SETTING=Setting IDC_STATIC_HIDSTATUS=Total Pictures IDC_BUTTON_ZOOMINTIPS=Zoom In IDC_BUTTON_ZOOMOUTTIPS=Zoom Out IDC_BUTTON_DRAWRECTTIPS=Draw Rect IDC_BUTTON_CLEARRECTTIPS=Clear Rect IDC_BTN_ADDTODPFTIPS=Add Photo IDC_BUTTON_SAVEALLTIPS=Save all IDC_BUTTON_SELECTALLTIPS=Select All IDC_BUTTON_CHANGE_LTIPS=Rotate Left IDC_BUTTON_CHANGETIPS=Rotate Right IDC_BUTTON_SENDTIPS=download to synchronize IDC_BUTTON_DELECTTIPS=Delete IDC_BUTTON_SAV

突如奇來的高科技電子零件

圖片
從公司的垃圾箱找到一個高科技電子零件 有LCD Screen, mini USB port, 4個 buttons 回家就著手將這個新玩具解體 4個buttons 的功能(): 1.選擇+ 2. 確定 3.選擇- 4.ReBoot 當device 與 mini USB, 連接後 一個相片photo upload software(DPFMate.exe)會自動打開  打開device 的drive發現幾個file 包括autorun(真是一個超危險的傢伙)在內有4個file, 1個folder. 但是沒有一個存放相片的folder 暫時來看 把它改成其他用途要花的功夫應該不太大 先把 DPFMate.exe 和 MacDPFmate.zip 研究一下再下結論

[OpenCV] RAW rgb data to IplImage | 以rgb原始資料建立IplImage指標

Sometime we may only got rgb data from source, so we have to build valid IplImage pointer. This sample shows that how to change rgb data to IplImage. 有時我們只會收到rgb資料,所以要自己建立有效的IplImage,以下是將rgb資料轉成IplImage。 VARIABLE DEFINITION 變量定義 rgbtexture    raw rgb data get from the camera | 由視訊傳來的rgb原始資料 cpimg          IplImage to store the RAW rgb data | 用來存rgb原始資料的IplImage變量 arr                simple opencv data format | 基本的opencv的資料格式 According  to IplImage definition | 根據IplImage的定義 typedef struct _IplImage {     int  nSize;             /* sizeof(IplImage) */     int  ID;                /* version (=0)*/     int  nChannels;    /* Most of OpenCV functions support 1,2,3 or 4 channels */     int  alphaChannel;      /* Ignored by OpenCV */     int  depth;             /* Pixel depth in bits: IPL_DEPTH_8U, IPL_DEPTH_8S,                       IPL_DEPTH_16S,IPL_DEPTH_32S, IPL_DEPTH_32F and IPL_DEPTH_64F are supported.  */     char colorModel[4];     /* Ignored by OpenCV */    

Monitoring System Spec.& IO Mapping

This is the sophie SEM2012 Monitoring System Spec.& IO Mapping sheet I/O Number of I/O Measure point Solar panel 6 VI Converter 3 VI Battery 1 VI Motor driver 1 VI Motor 1 V, speed( by reed switch ) Total 12 23+1 Arduino Number of Analog I/O Mega2560 16 X2 Total Mega2560 x2 32 Because of Arduino x2, need 2 analog I/O for I2C communication Total Analog I/O used Number of analog I/O 27+1 32 Radio Frequency Features ( data rate ) 4800bps -> 600Bps ->75chars ps 1 point of measurement( e.g. 15.34 ) = 4 digits + dot + space = 6 chars Total Measurement (chars) Data to stream (chars) 2