¹êÅç¥|¡BPDAµ{¦¡³]­p

 

¹êÅç­n¨D¡G

 

Ø         ¹w³ø­n¨D¡G

 

l          ¥´¦r¡B­­¤@­¶¡C

l          ½Ð¼ô±x¥HWinCE§@·~¨t²Î¬°¥DªºPDA¾Þ§@¡A¨Ã±NPDAªºµ{¦¡¶}µo¤u¨ã¸Ë¦b­Ó¤H¹q¸£¤W¡C

l          ¾Þ§@¹LPDAªº¦U¶µ¥\¯à«á¡A½Ð¥Î¬ù¤@­¶ªº®Ñ­±¤º®e¡A»¡©ú§A¦p¦ó±NHello Worldµ{¦¡¡A¥Ñ¼ÒÀÀ¾¹©ñ¤JPDA¤¤¡C

 

Ø         µ{¦¡­n¨D¡G

 

¥»¹êÅç¥Ñ©ó¥i¦Û¿ï¥DÃD¡A¬Gµ{¦¡¥D­n¨Ì·Ó¤U¦C¨â³¡¤À¨Ó°µµû¤À¡C

l          µ{¦¡³W¹º³¡¤À¡G

²         ¯q´¼¹CÀ¸ªººØÃþÁc¦h¡A¤@¶}©l¤@©w­n·V¿ïÃD¥Ø¡C

²         ¥ÎeVB©ÎeVC¨Ó¶}µo§¡¥i¡A¶}µo¤u¨ã¥i¦b¦h´CÅé¹êÅ窺ºô­¶¤W§ä¨ì¡A©Î¨ì·L³n©x¤èºô¯¸·j´M¡C

²         ¹CÀ¸¬[ºc¡B¬yµ{¡B¬ü¤u¡Bºtºâªk¡B¿Ë©M¤O¡A³£»Ý­n¥J²Ó³W¹º¡C

²         ¥ô¦ó¬ÛÃöªºAPI§¡¥i¦Û¥Ñ¨Ï¥Î¡C

²         µ{¦¡À³¹B¥Î¨ì¥H¤U¤TºØ³s½u¼Ò²Õ¡G

l          ³æ¾÷ª©¡C

l          RS232¹ï¾Ô¡C

l          802.11µL½uºô¸ô¹ï¾Ô¡C

²         ¨ä¥L¥\¯àªº·f°t¡A¦p¡G¸ê®Æ®w¡BÁn­µ¡B¿é¤J»P¿é¥X¤¶­±¡BÂŤú¥\¯à¡Èµ¥¡A¤]½Ð¦P¾Ç¦n¦nºc«ä¡C

l          µ{¦¡§¹¾ã«×³¡¤À¡G

²         ¥»¹êÅ窺²×·¥¥Ø¼Ð¬O§Æ±æ¯à§Q¥ÎµL½uºô¸ô¶i¦æ¹ï¾Ô¡A¹CÀ¸ªº§¹¾ã«×±N¬O³Ì¤j¦Ò¶q¡C

²         µ{¦¡¿W³Ð©Ê»P§¹¾ã©Ê±N·|¬Oµû¤Àªº³Ì­«ÂI¡C

²         ¬ÛÃöªþ¥[¥\¯àªº¶}µo¡A±N·|¦C¤Jbonusªº¦Ò¶q¡C

 

¹êÅç¥Øªº¡G

 

¥»¹êÅç¥D­n¬O¾Ç²ß§Q¥ÎPocket PC·f°tµL½uºô¸ô802.11¼Ò²Õ¡A¼¶¼g¤@­Ó¾A¦X¦bPDA¤W¶]ªº¯q´¼¹CÀ¸¡CÂǥѫe­±¹êÅç¹ïSocket Programmingªº²z¸Ñ¡A³]­p¦Û¤vªº¹CÀ¸¥­¥x¡C

 

¹êÅç³]³Æ¡G

 

Ø         ºô¸ô»P¦h´CÅé¹êÅç«Ç±N´£¨Ñ¤U¦CµwÅé¨Ñ¦P¾Ç§@¹êÅç¨Ï¥Î¡G

1.     ­Ó¤H¹q¸£¡]ªþºô¸ô¥d¡^

2.     PDA¨â¥x¡]ªþ¦³µL½uºô¸ô¼Ò²Õ¡^

Ø         ³nÅ鳡¤À¡G

¥Ñ©óeMbedded Visual Tools¬O·¥¤Ö¼Æ·L³nªº§K¥I¶O³nÅé¡A·í¤¤ªºeVB¡BeVC++¡B©MCE .NET³£¾A¦X¥HWinCE¬°§@·~¨t²ÎªºPDAµ{¦¡¶}µo¡A½Ð¦P¾Ç­Ì¤d¸U¤£­n§[¶Þ¨Ï¥Î¡C

¹êÅç«Ç¥t¦³´£¨ÑMicrosoft Developer Network¡]MSDN¡^ LibraryÅý¦P¾Ç¨Ï¥Î¡C

 

¹êÅç­ì²z¡G

 

¥»¹êÅç±N½Ð¦P¾Ç­Ì¦Û¦æ³W¹º¤@­Ó¾A¦X¦bPDA¤W¶]ªº¯q´¼¹CÀ¸¡A¥D­nªº¶}µo¤u¨ã¥i¥H¥ÎeVB©ÎeVC++¨Ó¹ê§@¡AµM¦Ó¡A¥¿¦p¦PVB»PVC++ªº®t§O¡A®³eVB¨Ó¶}µoµ{¦¡¡A»·¤ñeVC++¨Óªº§Ö¥B©ö¤W¤â¡A¤£¹L­Y¬O­n°Ê¨ì©³¼hªºªF¦è¡AeVB´N§¹¥þ¤ñ¤£¤WeVC++¤F¡C§U±Ðªº«Øij¬O¡A­Y¬O§A­Ì¾ÕªøMFCªº¸Ü¡A·íµM¿ï¾ÜeVC++¨Ó¶}ªk¡A¥i¥H¾Ç¨ì¤ñ¸û¦hªºªF¦è¡F­Y¬OºD¥ÎBCB©ÎVBªº¸Ü¡A¨º´N¨Ï¥ÎeVB¨Ó¶}µo´N¦æ¤F¡C

 

§U±Ð¾ã²z¤F¥h¦~­×ºô¦h¹êÅç¦P¾Çªº§@«~¡ãPDA¤­¤l´Ñ¡A¨Óµ¹¦U¦ì¤@¨Ç·Qªk»P°Ñ¦Ò¡G

 

µ²ºc¹Ï¡G

(1)         ¥HRS232°µ¬°³s½u¤u¨ã

§Q¥ÎRS232°µ¬°PDA¤§¶¡©ÎPDA»P¹q¸£¤§¶¡·¾³qªº¾ô¼Ù¡C­Y®É¶¡¥R¸Îªº¸Ü¡A±N¬ã¨s¦p¦ó¥HÂŤú°µ¬°¸ê®Æ¶Ç¿éªº´C¤¶¡C¦Ü©ó§Q¥Î¬õ¥~½u¶Ç¿é¤è­±¡A¦³Å²©ó¤W¦¸¸ÕÅç®Éªº¦¨®Ä¤£¨Î¡A¼È¤£¦Ò¼{¡C

(2)        


¥HµL½uºô¥d°µ¬°³s½u¤u¨ã

·í¤W­z¥HRS232°µ¬°³s½u¤u¨ãªº¥Øªº¹F¦¨¥H«á¡A§Ú­Ì±N¶i¤@¨B¥HµL½uºô¥d§@¬°³s½u¤u¨ã¬°¥Øªº¡C

 

¥\¯à¡G

(1)         ³æ¾÷»P¹q¸£A.I.¹ï¾Ô

(2)         ¨S¦³µL½uºô¥dªÌ¡AÂù¾÷¥i³z¹LRS232¹ï¾Ô

(3)         ¦³µL½uºô¥dªÌ¡AÂù¾÷¥i³z¹LWireless LAN¹ï¾Ô

(4)         °ª¤â¬ö¿ý±Æ¦æº]

 

¤¶­±¡G

 

³nÅé¬yµ{¹Ï¡G

Ø         ­º¥ý¡A¥ý«Å§i´X­Ó­«­nªºÅܼơG

bool          replay¡F          // ­n¤£­n­«ª±

bool          isWhite¡F         // ¦Û¤v¬O¤£¬O¥Õ´Ñ

bool          is1up¡F           // 1¤HÁÙ¬O2¤Hª±

bool          w/b¡F             // ²{¦b¿é¨ì¥Õ´Ñ(1)©Î¶Â´Ñ(0)

bool          isWin¡F           // ¦³¨S¦³¤HŤF

int           wcnt, bcnt¡F      // ¥Õ´Ñ©Î¶Â´Ñ¤w¸g¨«¤F´X¨B

char*         wname, bname¡F    // «ù¶Â´Ñ©Î¥Õ´ÑªÌªº¦W¦r

char[15][15]  map¡F             // Àx¦s¥Ø«e´Ñ½L¤Wªº±¡ªp

Ø         ¥H¤U¬O²­nªº¨ç¦¡»¡©ú¡G

n          Initialize()¡G°µªì©l¤Æªº°Ê§@¡C

       ­Yreplay¬Ofalse

           ¸õ¥Xµøµ¡½Ðª±®a¿é¤J¦W¦r¡C

           ¨M©w¨º­Óª±®a¬O¶Â´Ñ¡A¨Ã³]©wisWhiteºX¼Ð¡C¥ý¿é¤J¦W¦rªÌ¬°¶Â´Ñ¡C

           ¶ñ¦nwname¤ÎbnameÅܼơC

       ±Nwcnt¤ÎbcntÂk¹s¡AisWin©Mreplay³]¬°false¡C

       Is1up³]¬°false¡C¥Ø«e¥u´£¨Ñ2¤H¹ï¾Ôªº¼Ò¦¡¡C

       W/b³]¬°false¡C«ù¶Â´ÑªÌ¥ý¤U¡C

       ±Nmap²MªÅ¡C

n          Draw()¡G§P©w¥Ø«e¿é¨ì½Ö¡AŪ¨úª±®aÂI¿ïªº¦ì¸m¡A¨Ã¦b¿Ã¹õ¤Wø¥X¡C

       ­YisWhite¬Oture ¥Bw/b¬Otrue¡Aªí¥Ü²{¦b¿é¨ì¥Õ´Ñ¡A¦Ó¥Õ´Ñ¬O¦Û¤v

       ©ÎisWhite¬Ofalse¥Bw/b¬Ofalse¡Aªí¥Ü²{¦b¿é¨ì¶Â´Ñ¡A¦Ó¶Â´Ñ¬O¦Û¤v

           «h¥ÑIJ±±¿Ã¹õ§PÂ_ª±®a©Ò«ü©wªº¦ì¸m¡C

           ¨Ã±N¦¹¦ì¸m³z¹LRS232¶Çµ¹¹ï¤è¡C

       ­YisWhite¬Ofalse¥Bw/b¬Otrue¡Aªí¥Ü²{¦b¿é¨ì¥Õ´Ñ¡A¦Ó¥Õ´Ñ¬O¹ï¤è

       ©ÎisWhite¬Otrue¥Bw/b¬Ofalse¡Aªí¥Ü²{¦b¿é¨ì¶Â´Ñ¡A¦Ó¶Â´Ñ¬O¹ï¤è

           «h¥ÑRS232±µ¦¬¹ï¤è¶Ç¨Óªº¦ì¸m¡C

       ­Yw/b¬Oture¡Aªí¥Ü²{¦b¿é¨ì¥Õ´Ñ

           ¨Ì«ü©w¦ì¸m¦b¿Ã¹õ¤Wµe¤@Áû¥Õ´Ñ

       ­Yw/b¬Ofalse¡Aªí¥Ü²{¦b¿é¨ì¶Â´Ñ

           ¨Ì«ü©w¦ì¸m¦b¿Ã¹õ¤Wµe¤@Áû¶Â´Ñ

n          Result()¡G§PÂ_¦³¨S¦³¤HŤF¡C

       ­Yw/b¬Oture¡Aªí¥Ü­è­è¤U´Ñªº¬O¥Õ´Ñ

           Àˬdmap¸Ìª½ªº¡B¾îªº¡B±×ªº¦³¨S¦³³sÄò¤­­Ó¥Õ´Ñ¡C

           ­Y¦³¶Ç¦^true¡C

­Y¨S¦³±Nw/b³]¬°false¡A¨Ã¶Ç¦^false¡C

       ­Yw/b¬Ofalse¡Aªí¥Ü­è­è¤U´Ñªº¬O¶Â´Ñ

           Àˬdmap¸Ìª½ªº¡B¾îªº¡B±×ªº¦³¨S¦³³sÄò¤­­Ó¶Â´Ñ¡C

           ­Y¦³¶Ç¦^true¡C

­Y¨S¦³±Nw/b³]¬°true¡A¨Ã¶Ç¦^false¡C

Ø         °õ¦æ¨BÆJ¡G

Initialize()¡F

·íisWin¬Ofalse

           Draw()¡F

           ±NResult()¶Ç¦^ªº­È«ü©wµ¹isWin¡F

­YisWin¬Otrue

           ¸õ¥Xµøµ¡¸ß°Ý¬O§_­n¦Aª±¤@¦¸¡A¨Ã±Nµ²ªG«ü©wµ¹replay

           ­Yreplay¬Ofalse¡AÃö³¬µ{¦¡¡C

           ­Yreplay¬Otrue¡A°õ¦æInitialize()¡F

 

¾D¹J°ÝÃD»P¸Ñ¨M¤èªk¡G

1.       ¹q¸£ªºemulatorµLªk¶K¹Ï¡A¾É­P§Ú­Ìªº´Ñ½L¥²¶·¦Û¤v°Ê¤âµe¡C«á¨Ó¥u¦n¨C¦¸³£ª½±µ¥ÎPDA¼ÒÀÀ¡A¦ý¬O¥Ñ©ó´Ñ½L¤w¸gµe¦n¤£·Q¦A§ï¡A¦]¦¹´NÄ~Äò¨Ï¥Î­ì¥»¥Î¤¸¥ó¤@­Ó­Ó°Â°_¨Óªº´Ñ½L¡C

ü          ¥Ñ©óemulatorµLªk¶]¦³¶K¹Ïªºµ{¦¡¡A³Ì«á§Ú­Ì´N¥u¦n¥Îshape¤¸¥ó¦Û¤vµe´Ñ½L©M´Ñ¤l¡C«á¨Ó§Ú­Ì¤S¥Î¨ì¤F¤@¨Ç¥t¥~¥[¤Wªº¤¸¥ó¡Aemulator¤]µLªk¶]¡A³Ì«á´N³£ª½±µ¥ÎPDA¶]¼ÒÀÀ¤F¡C¦Ó¥Î¤¸¥óµe¦nªº´Ñ½L¥Ñ©ó¤w¸gµe¦n¦Ó¥Bµ{¦¡¤w¸g¼g±o®t¤£¦h¡A¦]¦¹«á¨Ó¥ÎPDA¶]¼ÒÀÀªº®É­Ô¤]´NÃi±o¦A§â´Ñ½L§ï¦¨¹Ï¤ù¡Aª½±µ¥Î­ì¥»µe¦nªº´Ñ½L¤F¡C

2.       RS232¦b¶Ç°e¦r¦ê®É¡A¦³®É­Ô·|¤Ö¶Ç¤@­Ó¡A³y¦¨§Ú­ÌªººtºâªkµLªk¿ëÃѶǰeªº¸ê®Æ¡C

ü          ¬°¤F¸Ñ¨MRS232¦³®É·|¤Ö¶Ç¦r¦êªº°ÝÃD¡A§Ú­Ì¤À§O¥Î¨â­Ó¦r¦ê¥Nªí¦P¤@ºØ¸ê°T¡C¨Ò¦p9¡B99¥Nªí¦W¦r¡F999¡B9999¥Nªí´Ñ¨B¡C

3.       PDAµLªk¬Ý¨ì¸ê®Æ®wªº¤º®e¡A¼W¥[¤F¸ê®Æ®w³B²zªºÃø«×¡C

ü          ¥Ñ©óPDAµLªk¬Ý¨ì¸ê®Æ®w¡A§Ú­Ì¥ý¼g¤@­Ó¯à¼W´î¤Îshow¥X¸ê®Æ®w¤º®eªºµ{¦¡¡A½T«OOK «á¯à¦A²¾´Ó¨ìµ{¦¡¤¤¡C

4.       Âù¾÷¹ï¾Ô®É¡A¤£ª¾¹D¦p¦ó¶}©l·¾³q¡C

ü          ³Ì«á§Ú­Ì¥ÎThree-way Handshaking ªº¤è¦¡¨Ó¸Ñ¨M·¾³qªº°ÝÃD¡C

5.       ¥Ñ©ó¤§«e³£¥ÎC++¼gµ{¦¡¡A¦]¦¹¦b¥ÎeVB½s¼g¦¹PDAµ{¦¡®É¤£ª¾¹D¦p¦ó§P§O¤@­Óstringªºcharacter¡C

ü          §ä¨ì¤@­Ó¨ç¦¡Mid ( string, start, length ) ¥i¥H¨ú¥X¤@­Óstring¤¤¶¡ªº´X­Ócharacter¡C

 

Á`µ²¡G

§Ú­Ìªº¤­¤l´Ñµ{¦¡¬Ý¦ü²³æ¡A¦ý¬O¨ä¹ê¥¦¦³«Ü¦h¯S¦â¡A¦b¦¹¤@¤@¦CÁ|¦p¤U¡G

u        ­º³ÐPDA³s½uª±¤­¤l´Ñ¡GÁöµM¤j®a³£¥i¥H¦bºô¯¸¤W­±§ä¨ìPDAª±¤­¤l´Ñªºµ{¦¡¡A¦ý¬O³£¥u¯à¨£¨ì¸ò¹q¸£¹ï¾Ôªº¹CÀ¸¡C

u        §Ú­Ì­º³Ð§Q¥ÎRS232©Î¬OµL½uºô¥d³s½u¡A¦p¦¹¤@¨Ó´N¥i¥H¸ò§A·Q­nªº¹ï¶H¹ï¾Ô¡A¹ê¬°¦¹³nÅé¤@¤j¯S¦â¡C

u        §Ú­Ì¦Û¤v¼g¤F¹q¸£A.I.¸ò§Aª±¤­¤l´Ñ¡Aºtºâªk¬Û·íÁc½Æ¡A³o¥i¤£¬O¤@¯ë¤H¥i¥H¼g¥X¨Óªº³á¡I

u        ÁöµM´Ñ½L¬O¥Îshape¤¸¥ó¤@­Ó¤@­Ó°Â¥X¨Óªº¡A¦ý¬O§Ú­Ì§â¥¦µe±o´X¥i¶Ã¯u¡AÅýª±ªÌ¯uªº¦³¦bª±¤­¤l´Ñªº·Pı¡C

u        ¤¶­±Â²³æ©öÀ´¡A®e©ö¤W¤â¡CÅý¤H·Pı¨ì¦¹¤­¤l´Ñµ{¦¡ªº¿Ë¤Á¡C

 

§U±Ð»xÁ¡G

ÁÂÁÂ103¯Å¦P¾Ç¡ã¹p¶M´¸¡B±i·¶ªY¡B¼B¤SÞ±¡C

¦P¾Ç¦n¦n¥[ªo¡A¤U­Ó¾Ç´Á¡A§A¡]©p¡^­Ì²Õªº§@«~¡A¤]¥i¯à¦¨¬°±Ð§÷³á¡I

 

°Ñ¦Ò¤åÄm:

 

1.       Microsoft Developer Network (MSDN) Library

2.       PocketPCµ{¦¡³]­p¦Û¾Ç¤â¥U¡A«í¶h¸ê°T ·¨¥ý¥ÁµÛ¡C

3.       ²`¤JPDAµ{¦¡³]­p¡ãµL½uºô¸ô¡BµwÅé±±¨î¡B¥D±q¦¡¸ê®Æ®w¡A¤å»í¸ê°T §õ¥Ã¶©½sµÛ¡C