?? 使用activex和delphi開發(fā)串口通訊.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0043)http://www.daima.com.cn/Info/106/Info35295/ -->
<HTML><HEAD><TITLE>使用ACTIVEX和DELPHI開發(fā)串口通訊</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content=使用ACTIVEX和DELPHI開發(fā)串口通訊 name=Keywords>
<META content=使用ACTIVEX和DELPHI開發(fā)串口通訊 name=Description><LINK
href="使用ACTIVEX和DELPHI開發(fā)串口通訊.files/infoList.css" rel=stylesheet type=text/css>
<SCRIPT language=JavaScript>
function checkinput()
{
//alert ("Bug");
var keyword=document.search.keyword.value;
var typeid=document.search.searchtype.value;
if (keyword=="")
{
window.alert("請輸入搜索的關鍵字!");
return false;
}
document.search.action=typeid;
document.search.submit();
}
function info_show(ID){
var url;
location.href=("/trade/trade_show.asp?InfoID="+ID)
}
</SCRIPT>
<SCRIPT language=JavaScript
src="使用ACTIVEX和DELPHI開發(fā)串口通訊.files/DateTime.js"></SCRIPT>
<SCRIPT language=JavaScript
src="使用ACTIVEX和DELPHI開發(fā)串口通訊.files/function.js"></SCRIPT>
<META content="MSHTML 5.00.3700.6699" name=GENERATOR></HEAD>
<BODY topMargin=0>
<SCRIPT language=javascript
src="使用ACTIVEX和DELPHI開發(fā)串口通訊.files/in_top_jy.js"></SCRIPT>
<!-- 頁面內容開始 -->
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 class=TABLEBORDER
height=20 width=760>
<FORM method=post name=search onsubmit="return checkinput();">
<TBODY>
<TR>
<TD align=middle bgColor=#efefef height=28 vAlign=center width=520>所屬欄目
<SELECT name=searchtype> <OPTION selected
value=/code/code_search.asp>源碼下載</OPTION> <OPTION
value=/tools/tool_search.asp>開發(fā)工具</OPTION> <OPTION
value=/control/control_search.asp>控件之家</OPTION> <OPTION
value=/book/book_search.asp>圖書下載</OPTION> <OPTION
value=info_search.asp>編程經驗</OPTION> <OPTION value=5>考試資源</OPTION></SELECT>
關鍵字: <INPUT maxLength=100 name=keyword size=15> <SELECT name=FlagID>
<OPTION selected value=0>在標題中搜索</OPTION> <OPTION
value=1>全文搜索</OPTION></SELECT> <INPUT align=absMiddle height=19
name=submit src="使用ACTIVEX和DELPHI開發(fā)串口通訊.files/index_sous.gif" type=image
width=70> </TD>
<TD align=middle bgColor=#efefef height=28 vAlign=center width=240>
<SCRIPT>
CalConv();
</SCRIPT>
</TD></TR></FORM></TBODY></TABLE>
<TABLE align=center bgColor=#ffffff border=0 cellPadding=0 cellSpacing=0
class=TABLEBORDER width=760>
<TBODY>
<TR>
<TD align=middle>
<SCRIPT type=text/javascript>
infolav_showMusic();
</SCRIPT>
</TD></TR></TBODY></TABLE>
<TABLE align=center bgColor=#ffffff border=0 cellPadding=0 cellSpacing=0
class=TABLEBORDER width=760>
<TBODY>
<TR>
<TD height=22>當前位置: <A href="http://www.daima.com.cn/">首 頁</A> --> <A
href="http://www.daima.com.cn/info/">編程經驗</A> --> <A
href="http://www.daima.com.cn/Info/Info2To1">Delphi</A> --> <A
href="http://www.daima.com.cn/Info/Info106To1">編程技巧</A> -->
使用ACTIVEX和DELPHI開發(fā)串口通訊</TD></TR>
<TR>
<TD background="" height=1></TD></TR>
<TR>
<TD height=2></TD></TR></TBODY></TABLE>
<TABLE align=center bgColor=#ffffff border=0 cellPadding=0 cellSpacing=0
class=TABLEBORDER width=760>
<TBODY>
<TR>
<TD align=middle>
<SCRIPT type=text/javascript>
infolav_showTop();
</SCRIPT>
</TD></TR></TBODY></TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 class=TABLEBORDER
width=760>
<TBODY>
<TR>
<TD class=LEFTTDBG2 height=492 vAlign=top width=170>
<TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">
<TBODY>
<TR>
<TD class=BORDERBG1 height=17 width="100%">分類導航</TD></TR>
<TR>
<TD class=LEFTTDBG1 height=233 vAlign=top>
<TABLE align=center border=0 width="80%">
<TBODY>
<TR>
<TD>
<SCRIPT language=JavaScript>info_listNone();</SCRIPT>
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
<TD bgColor=#949494 width=1></TD>
<TD bgColor=#ffffff vAlign=top width=4></TD>
<TD class=list vAlign=top>
<TABLE align=center border=0 cellPadding=3 cellSpacing=0 class=showinfo
style="TABLE-LAYOUT: fixed; WORD-BREAK: break-all" width="100%">
<TBODY>
<TR>
<TD align=middle class=showTitle>使用ACTIVEX和DELPHI開發(fā)串口通訊</TD></TR>
<TR>
<TD>
<TABLE align=left border=0 cellPadding=0 cellSpacing=0>
<TBODY>
<TR>
<TD>
<SCRIPT language=javascript src=""></SCRIPT>
</TD></TR></TBODY></TABLE>于Delphi中沒有串口控件可用,所以首先需要把ActiveX控件MSCOMM加到元件選項板上。這是一個非常好的控件它不僅能對串口進行操作,而且還可以對Modem進行控制。下面結合一個具體的實例來說明如何用MSCOMM控件開發(fā)出串口通信程序。<BR>創(chuàng)建一個Communication.dpr工程,把窗體的Name屬性變?yōu)镃ommForm,將標題改為The
Communication Test,選擇File/Save As將新的窗體存儲為CommFrm.pas。
<P>其相應代碼如下:</P>
<P>變量說明<BR>var<BR>CommForm: TCommForm;<BR>ss :string;<BR>savef,readf
:file of char;<BR>i,j :longint;</P>
<P>初始化<BR>procedure TCommForm.FormCreate(Sender:
TObject);<BR>begin<BR>mscomm.commport:=1;<BR>mscomm.settings:=''9600,n,8,1'';<BR>mscomm.inputlen:=1;<BR>mscomm.inbuffercount:=0;<BR>mscomm.portopen:=true;<BR>ss:='''';<BR>i:=0;<BR>j:=0;<BR>assignfile(savef,''save1'');<BR>rewrite(savef);<BR>assignfile(readf,''read1'');<BR>reset(readf);<BR>end;</P>
<P>設置確定<BR>procedure TCommForm.btnConfirmClick(Sender:
TObject);<BR>begin<BR>if mscomm.portopen
then<BR>mscomm.portopen:=false;<BR>mscomm.commport:=strtoint(edtCommport.text);<BR>mscomm.settings:=edtCommsetting.Text;<BR>end;</P>
<P>傳輸事件<BR>procedure TCommForm.MSCommComm(Sender:
TObject);<BR>var<BR>filenrc :char;<BR>buffer
:variant;<BR>s1:string;<BR>c :char;<BR>begin<BR>case
mscomm.commEvent of<BR>comEvSend:<BR>begin<BR>while not(eof(readf))
do<BR>begin<BR>read(readf,filenrc);<BR>mscomm.output:=filenrc;<BR>j:=j+1;<BR>lblDisplay.caption:=inttostr(j);<BR>if
mscomm.outbuffercount>=2
then<BR>break;<BR>end;<BR>end;<BR>comEvReceive:<BR>begin<BR>buffer:=mscomm.Input;<BR>s1:=buffer;<BR>c:=s1[1];<BR>ss:=ss+c;<BR>i:=i+1;<BR>lblDisplay.caption:=c+inttostr(i);<BR>write(savef,c);<BR>if
(c=chr(10))or(c=chr(13))
then<BR>begin<BR>lblDisplay.caption:=''cr''+inttostr(i);<BR>memDisplay.lines.add(ss);<BR>ss:='''';<BR>end;<BR>end;<BR>end;<BR>end;<BR></P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><!-- 頁面內容結束 -->
<DIV align=center>
<SCRIPT language=JavaScript
src="使用ACTIVEX和DELPHI開發(fā)串口通訊.files/in_footer.js"></SCRIPT>
<SCRIPT id=scriptcount language=JavaScript name="scriptcount"></SCRIPT>
</DIV><!--搜索:使用ACTIVEX和DELPHI開發(fā)串口通訊--></BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -