¹êÅç¥|¡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µ{¦¡¥Dn¨Ì·Ó¤U¦C¨â³¡¤À¨Ó°µµû¤À¡C
l
µ{¦¡³W¹º³¡¤À¡G
²
¯q´¼¹CÀ¸ªººØÃþÁc¦h¡A¤@¶}©l¤@©wn·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
¥»¹êÅç¥Dn¬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¥Dnªº¶}µo¤u¨ã¥i¥H¥ÎeVB©ÎeVC++¨Ó¹ê§@¡AµM¦Ó¡A¥¿¦p¦PVB»PVC++ªº®t§O¡A®³eVB¨Ó¶}µoµ{¦¡¡A»·¤ñeVC++¨Óªº§Ö¥B©ö¤W¤â¡A¤£¹LY¬On°Ê¨ì©³¼hªºªF¦è¡AeVB´N§¹¥þ¤ñ¤£¤WeVC++¤F¡C§U±Ðªº«Øij¬O¡AY¬O§A̾ժøMFCªº¸Ü¡A·íµM¿ï¾ÜeVC++¨Ó¶}ªk¡A¥i¥H¾Ç¨ì¤ñ¸û¦hªºªF¦è¡FY¬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ªº¾ô¼Ù¡CY®É¶¡¥R¸Îªº¸Ü¡A±N¬ã¨s¦p¦ó¥HÂŤú°µ¬°¸ê®Æ¶Ç¿éªº´C¤¶¡C¦Ü©ó§Q¥Î¬õ¥~½u¶Ç¿é¤è±¡A¦³Å²©ó¤W¦¸¸ÕÅç®Éªº¦¨®Ä¤£¨Î¡A¼È¤£¦Ò¼{¡C
(2)
¥HµL½uºô¥d°µ¬°³s½u¤u¨ã
·í¤Wz¥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·Qnªº¹ï¶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