上位机与单片机之间的通讯

上位机与单片机之间的通讯

ID:37389913

大小:38.00 KB

页数:7页

时间:2019-05-23

上位机与单片机之间的通讯_第1页
上位机与单片机之间的通讯_第2页
上位机与单片机之间的通讯_第3页
上位机与单片机之间的通讯_第4页
上位机与单片机之间的通讯_第5页
资源描述:

《上位机与单片机之间的通讯》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.注册MSComm控件  众所周知,C++Builder本身并不提供串行通讯控件MSComm,但我们却可以通过注册后直接使用它。启动C++Builder5.0后,然后选择C++Builder主菜单中的Component菜单项,单击ImportActiveControl命令,弹出ImportActive窗口,选择MicrosoftCommControl6.0,再选择Install按钮执行安装命令,系统将自动进行编译,编译完成后即完成MSComm控件在C++Builder中的注册,系统默认安装在控件板的Active页,接下来我们就可以像使用C+

2、+Builder本身提供的控件那样使用新注册的MSComm控件了。(前提条件是你的机子上安装了VisualBasic,或者有它的库)  2.具体实现  新建一个工程Project1,把注册好的MSComm控件加入到窗体中,然后再加入5个ComboBox用来设置串口的属性,4个Button分别用来"打开串口""关闭串口""发送数据""保存数据",2个Memo控件分别用来显示接收到的数据和发送的数据。再加入一个Shape控件用来标明串口是否打开。  ComboBox1用来设置串口号,通过它的Items属性设置1,2,3,4四个列表项分别表示COM

3、1,COM2,COM3,COM4口。ComboBox2用来设置波特率,ComboBox3用来设置奇偶校验位,ComboBox4用来设置数据位,ComboBox5用来设置停止位。他们的缺省值分别是9600,n,8,1。  Button1用来打开串口,Button2用来关闭串口,Button3用来发送数据,Button4用来保存数据。Memo1用来显示发送的数据,Memo2显示接收的数据。Shape1的Shape属性设置为stCircle。下面给出部分源码:__fastcallTForm1::TForm1(TComponent*Owner):TF

4、orm(Owner){if(MSComm1->PortOpen==true){Button1->Enabled=false;Button2->Enabled=true;Button3->Enabled=true;Button4->Enabled=true;Shape1->Brush->Color=clGreen;}else{Button2->Enabled=true;Button2->Enabled=false;Button3->Enabled=false;Button4->Enabled=false;Shape1->Brush->Color

5、=clRed;}}void__fastcallTForm1::Button1Click(TObject*Sender)//打开串口{if(MSComm1->PortOpen!=true){MSComm1->CommPort=StrToInt(ComboBox1->Text);//选择串口号MSComm1->Settings=ComboBox2->Text+","+ComboBox3->Text+","+ComboBox4->Text+","+ComboBox5->Text;file://设置串口的属性波特率、奇偶校验、数据位和、//停止位。M

6、SComm1->InputMode=0;//设置传入数据的格式,0表示文本形式MSComm1->PortOpen=true;//打开串口Button1->Enabled=false;Button2->Enabled=true;Button3->Enabled=true;Button4->Enabled=true;Shape1->Brush->Color=clGreen;}}void__fastcallTForm1::Button2Click(TObject*Sender)//关闭串口{if(MSComm1->PortOpen!=false){

7、MSComm1->PortOpen=false;Button1->Enabled=true;Button2->Enabled=false;Button3->Enabled=false;Button4->Enabled=false;Shape1->Brush->Color=clRed;}else{Button1->Enabled=false;Button2->Enabled=true;Shape1->Brush->Color=clRed;}}  MSComm控件的Input和Output属性在ObjectInspector中是看不到的,而且在C

8、++Builder环境下这两个属性已不在是VB、VC中的原类型,而是OleVariant类型,也就是Ole万能变量,这就需要我们在发送接收数据时要把数据转换成Ole

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。