ÓÃDelphi ʵÏÖ´®¿ÚͨѶ£¬³£Óõļ¸ÖÖ·½·¨Îª£ºÊ¹ÓÿؼþÈçMSCOMMºÍSPCOMM£¬Ê¹ÓÃAPIº¯Êý»òÕßÔÚDelphi Öе÷ÓÃÆäËü´®¿ÚͨѶ³ÌÐò¡£ÀûÓÃAPI±àд´®¿ÚͨÐųÌÐò½ÏΪ¸´ÔÓ£¬ÐèÒªÕÆÎÕ´óÁ¿Í¨ÐÅ֪ʶ£¬ÆäÓŵãÊÇ¿ÉʵÏֵŦÄܸüÇ¿´ó£¬Ó¦ÓÃÃæ¸ü¹ã·º£¬¸üÊʺÏÓÚ±àд½ÏΪ¸´ÔÓ µÄµÍ²ã´ÎͨÐųÌÐò¡£Ïà±È½Ï¶øÑÔ£¬ÀûÓÃSPComm¿Ø¼þÔòÏà¶Ô½Ï¼òµ¥£¬¸Ã¿Ø¼þ¾ßÓзḻµÄÓë´®¿ÚͨÐÅÃÜÇÐÏà¹ØµÄÊôÐÔ¼°Ê¼þ£¬ÌṩÁ˶Դ®¿ÚµÄ¸÷ÖÖ²Ù×÷¡£
¡¡¡¡Ê¹ÓÿؼþÕâÒ»·½·¨ÈÝÒ×ÕÆÎÕ£¬¶øSPCOMMÖ§³Ö¶àỊ̈߳¬ËùÒÔSPCOMM¿Ø¼þµÄÓ¦Óøü¼Ó¹ã·º¡£½áºÏʵÀýÏêϸ½éÉÜSPCOMMµÄʹÓá£
Ò»£®SPCOMM¿Ø¼þµÄ°²×°
1£®Ñ¡ÔñÏÂÀ²Ëµ¥ComponentµÄµÚ¶þÏîInstall Component ¡£
ͼ1
µ¯³öͼ1ËùʾµÄ´°¿Ú,ÔÚUnit file name ´¦Ìîд¿Ø¼þSPCOMM¿Ø¼þËùÔÚ·¾¶£¬ÆäËü¿ÉÓÃĬÈÏÖµ£¬µã»÷OK°´Å¦¡£
2£®°²×°³É¹¦ºó£¬system¿Ø¼þÃæ°åÖн«³öÏÖÒ»¸öºìÉ«¿Ø¼þCOMM¡£ÏÖÔÚʹÓÃCOMM¿Ø¼þ¿ÉÒÔÏóDelphi×Ô´ø¿Ø¼þÒ»ÑùʹÓá£
¶þ£®SPCOMMµÄÖ÷ÒªÊôÐÔ£¬·½·¨ºÍʼþ
1.ÊôÐÔ
CommName£ºÌîдCOM1,COM2…µÈ´®¿ÚµÄÃû×Ö,ÔÚ´ò¿ª´®¿Úǰ£¬±ØÐëÌîдºÃ´ËÖµ¡£
BaudRate:É趨²¨ÌØÂÊ9600£¬4800µÈ£¬¸ù¾Ýʵ¼ÊÐèÒªÀ´¶¨£¬ÔÚ´®¿Ú´ò¿ªºóÒ²¿É¸ü¸Ä²¨ÌØÂÊ£¬Êµ¼Ê²¨ÌØÂÊËæÖ®¸ü¸Ä¡£
ParityCheck£ºÆæÅ¼Ð£Ñé¡£
......
¼¼Êõ½»Á÷,DH½²½â.
Ã÷ÌìÈ¥×ø»ð³µ,»Ø¼Ò,½ñÌì¾ÍûÓÐÊÂ×ö,±¾À´ÔÚŪһ¸ö¿ç½ø³Ì»ñÈ¡ÆäËû³ÌÐòÀïÃæ×é¼þ,ÈçListView,ListBox,ButtonµÈµÄÐÅÏ¢,ͻȻÓиöÏë·¨×Ô¼ºÐ´¸öTimer,²»ÓÃSetTimerº¯Êý,ÎÒÃÇ×Ô¼ºÓøö¶àÏß³ÌÒ²ÕýºÃʵÏÖÕâ¸ö.·´Õýǰ¶Îʱ¼ä¶àÏß³ÌҲŪµÃ±È½Ï¶à,±¾À´Ïëµ¥¶À½²½²µÄ,ÏÖÔÚ¾ÍÓøöÀý×ÓÀ´ËµÃ÷°É.
д³ÉÒ»¸ö¿Ø¼þ:utTimer.pas
view source
< id="highlighter_394362_clipboard" title="copy to clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" type="application/x-shockwave-flash">
print?
001
unit utTimer;
002
003
interface
004
uses
005
Windows,SysUtils,Classes;
006
007
type
008
THuangJackyTimerThread = class;
009
THuangJackyTimer = class(TComponent)
010
private
011
FTimeInterval:Integer;
012
FOnTimerDo:TNotifyEvent;
013
......
ʹÓÃdelphi¶àÄê,ǰЩÌìºöÈ»Óöµ½²»»ástringתpbyte,ºÜÊÇʧÂä,´Ëʱ¶ÔÓÚ±à³Ì»ù±¾¹¦µÄÖØÒªÐÔÉîÓÐÌå»á.ÕâÆäÖÐÓõ½MOVEº¯Êý.
ʹÓÃdelphi¶àÄê,ǰЩÌìºöÈ»Óöµ½²»»ástringתpbyte,ºÜÊÇʧÂä,´Ëʱ¶ÔÓÚ±à³Ì»ù±¾¹¦µÄÖØÒªÐÔÉîÓÐÌå»á.ÕâÆäÖÐÓõ½MOVEº¯Êý.
¸ãÁ˺ÃÒ»»á²Å¸ãÃ÷°×ÆäÓ÷¨.ËùÒÔÏëÌù³öÀ´°ïÖúÐèÒª°ïÖúµÄÈË.
var
s:string;
ps:Pchar;
b:pbyte;
len:integer;
begin
s:=edit1.Text; //×Ö·û´®
ps:=pchar(s); //ת³ÉpcharÀàÐÍ,
len:=length(s);//È¡×Ö·û´®³¤¶È,Õ¼ÓöàÉÙ×Ö½Ú
getmem(b,len);//ÉêÇëÄÚ´æ,pchar,pbyteÔÚʹÓÃǰ¶¼±ØÐëÒªÉêÇëÄÚ´æ,ÒòΪËûÃÇÊÇÖ¸Õë.
move(ps^,b^,len);//ÕâÀï ps^Òâ˼ÊÇpcharÖ¸ÏòÄÚ´æÊý¾ÝµÄµÚÒ»¸ö×Ö½ÚµØÖ·,B^ÊDZíʾÉêÇëÄÚ´æµÄµÚÒ»¸ö×Ö½ÚµØÖ·,ÕâÑù¾Í¿ÉÒÔÒ»¸öÒ»¸ö×Ö½ÚµÄÒÆµ½bÀïÈ¥ÁË.
memo1.Text:=pchar(b);//ÏÔʾ.
freemem(b);
end;
ÓÐЩÈËÓöµ½µÄÀ§»óÊÇΪʲô move(s,b,len)²»ÐÐÄØ?ͬÑùÎÒÒ²Óöµ½ÕâÑùµÄÀ§»ó.
¿´ÁËÒ»ÑùmoveµÄº¯ÊýÔ´Âë²ÅÃ÷°×.
procedure ......
CTRL+SPACE ´úÂ벹ȫ£¬ºÜºÃÓõÄ(ÏȸÄÁËÊäÈë·¨Èȼü)
CTRL+SHIFT+C ±àдÉêÃ÷»òÕß²¹ÉϺ¯Êý
CTRL+SHIFT+↑(↓) ÔÚ¹ý³Ì¡¢º¯Êý¡¢Ê¼þÄÚ²¿, ¿ÉÌøÔ¾µ½ÏàÓ¦µÄ¹ý³Ì¡¢º¯Êý¡¢Ê¼þµÄ¶¨Ò壨ÔÚINTERFACEºÍIMPLEMENTATIONÖ®¼äÀ´»ØÇл»£©
CTRL+SHIFT+G ²åÈëGUID
CTRL+J (µ¯³öDELPHIÓï¾äÌáʾ´°¿Ú£¬Ñ¡ÔñËùÐèÓï¾ä½«×Ô¶¯Íê³ÉÒ»ÌõÓï¾ä)´úÂëÄ£°å
CTRL+K+E(F) ±êʶ·û±äС£¨´ó£©Ð´
CTRL+K+O(N) Ñ¡ÖеıäС£¨´ó£©Ð´
CTRL+O+U Çл»Ñ¡Ôñ¿éµÄ´óСд
SHIFT+Êó±ê×ó¼ü ÏÈÑ¡ÖÐÈÎÒ»¿Ø¼þ,°´¼üºó¿ÉÑ¡Öд°Ìå
CTRL+SHIFT+I(U) ´úÂëÕû¿éÒÆ¶¯ÓÒÒÆ(×óÒÆ)2¸ö¿Õ¸ñ
ALT+Êó±ê×ó¼ü ¿ÉÒÔ¿éÑ¡´úÂ룬ÓÃÀ´É¾³ý¶ÔÆëµÄÖØ¸´´úÂë·Ç³£ÓÐÓÃ
CTRL+E ¿ìËÙÑ¡Ôñ(ºÇºÇ£¬ÊÔÊÔ°É£¬ºÜºÃÍæµÄ)
ÔÚÊôÐÔ´°¿Ú°´TAB¼ü½«¹â±êÒÆ¶¯µ½ÊôÐÔÃûÇø£¬¼üÈëÊôÐÔÃûµÄ¿ªÍ·×Öĸ¿É¿ìËÙ¶¨Î»µ½¸ÃÊôÐÔ
F4 ÔËÐе½¹â±ê´¦
F5 ÉèÖöϵã
F7 ²½½øÊ½µ÷ÊÔͬʱ׷×Ù½øÈë×Ó¹ý³Ì
F8 ²½½øÊ½µ÷ÊÔ²»½øÈë×Ó¹ý³Ì
F9 ÔËÐÐ
CTRL+F9 ±àÒë
CTRL+B BUFFER LIST´°¿Ú
CTRL+F2 Í£Ö¹ÕýÔÚµ÷ÊԵijÌÐò
CTRL+F3 µ¯³öCALL STACK´°¿Ú
CTRL+F5 Ìí¼ÓÀÀÊÓ±äÁ¿
CTRL+F7 ¼ÆËã´°¿Ú
SHIFT+F8 µ÷ÊÔʱµ¯³öCPU´°¿Ú
CTRL+BACKSPACE ºóÍËɾ³ýÒ»¸ö´Ê,Ö±µ½Óö ......
Ö¸ÕëÓ÷¨µÄÀý×Ó£º
1 var
2 X, Y: Integer; // X and Y ÕûÊýÀàÐÍ
3 P: ^Integer; // P Ö¸ÏòÕûÊýÀàÐ͵ÄÖ¸Õë
4 begin
5 X :=17; // ¸ø X ¸³Öµ
6 P := @X; // °Ñ xµÄµØÖ·¸³¸øp
7 Y := P^; // È¡³öpËùÖ¸ÏòµÄÊýÖµ¸³¸øy
8 end;
&n ......
TThreadÊÇÒ»¸ö³éÏóÀà,ÓÃÓÚÔÚdelphiÖд´½¨Ï̡߳£
´´½¨Ò»¸öTThreadµÄ×ÓÀà¶ÔÏó¼´Ï൱ÓÚ´´½¨Ò»¸öÏ̡߳£¡¡¡¡
µ±Ò»¸öÓ¦ÓóÌÐòÔËÐÐʱ£¬Ó¦ÓóÌÐò¾Í±»ÔØÈëÄÚ´æ×¼±¸Ö´ÐС£´Ëʱ£¬Ëü³ÉΪ°üº¬Ò»¸ö»ò¶à¸öÏ̵߳Ľø³Ì¡£Ïß³ÌÖ´ÐÐÓ¦ÓóÌÐòµÄ²¿·ÖÄÚÈÝ£¬²¢ÓɲÙ×÷ϵͳ·ÖÅäCPUʱ¼ä¡£Í¬Ò»½ø³ÌµÄËùÓÐÏ̹߳²ÏíͬһµØÖ·¿Õ¼ä£¬¿ÉÒÔ·ÃÎʽø³ÌµÄÈ«¾Ö±äÁ¿¡£
Ïß³Ìͨ¹ýÒÔϹ¤×÷¸ÄÉÆÓ¦ÓõÄÐÔÄÜ£º
¹ÜÀí¶àͨÐÅÉ豸µÄÊäÈë¡£
¡¡¡¡ Çø·ÖÈÎÎñµÄÓÅÏȼ¶¡£ÓÅÏȼ¶¸ßµÄ´¦Àí½ô¼±µÄÈÎÎñ¡£ÓÅÏȼ¶µÍµÄ´¦ÀíÆäËûÈÎÎñ¡£
ÒÔÏÂÊÇʹÓÃÏ̵߳ÄһЩ½¨Ò飺
¡¡¡¡ ͬʱ¸ú×ÙÌ«¶àµÄÏß³ÌÏûºÄCPUʱ¼ä¡£¶Ôµ¥´¦ÀíÆ÷ϵͳ£¬Ò»¸ö½ø³Ì×î¶àÓÐ16¸öÏ̡߳£
¡¡¡¡ µ±¶à¸öÏ̸߳üÐÂÏàͬµÄ×ÊԴʱ£¬Ó¦Ê¹Ïß³Ìͬ²½ÒÔ±ÜÃâ³åÍ»¡£
¡¡¡¡ ´ó¶àÊý·ÃÎÊVCL¶ÔÏóºÍ¸üд°ÌåµÄ·½·¨±ØÐë´ÓÖ÷Ïß³ÌÄÚ²¿µ÷Óá£
¡¡¡¡ ÒÔÏÂΪ´´½¨ºÍʹÓÃÒ»¸öÐÂÏ̵߳Ĺý³Ì£º
¡¡¡¡ £¨1£©µ¥»÷File|New|Thread²Ëµ¥Ï´´½¨Ò»¸öTThreadµÄ×ÓÀà¡£
¡¡¡¡ £¨2£©¶¨ÒåCreate·½·¨¡£
¡¡¡¡ £¨3£©Í¨¹ý²åÈëÏß³ÌÖ´ÐÐʱÐèÒªµÄ´úÂ붨ÒåExecute·½·¨¡£
¡¡¡¡ £¨4£©½«Ê¹ÓÃVCL×é¼þµÄÈκε÷Óô«µÝ¸øSynchronize·½·¨£¬ÒÔ±ÜÃâ¶àÏ̳߳åÍ»¡£
ÊôÐÔÁбí
FreeOnTerminate Ïß³ÌÖÕÖ¹Ê ......