单片机串行通信_第1页
单片机串行通信_第2页
单片机串行通信_第3页
单片机串行通信_第4页
单片机串行通信_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

45 甲机通过串口控制乙机领先/*名称:甲机发送控制命令字符说明:甲单片机负责向外发送控制命令字符甲、乙、丙,或者停止发送,乙机根据所接收到的字符完成LED1闪烁、LED2闪烁、双闪烁、或停止闪烁。*/#包括#定义uchar无符号字符#定义uint无符号整数sbit led1=p00;sbit led2=p03;sbit k1=p10;/延时void DelayMS(uint ms)乌恰尔一世;而对于(1=0;i120;/向串口发送字符void Putc_to_SerialPort(uchar c)SBUF=c;而(TI=0);TI=0;/主程序void main()内部操作_否=0。SCON=0x 40;/串口模式1TMOD=0x 20;/T1工作模式2PCON=0x 00;/波特率不倍增TH1=0xfd .TL1=0xfd .TI=0;TR1=1;而(1)if(K1=0)/按下K1时选择操作代码0,1,2,3而(K1=0);操作号=(操作号1)% 4;开关(操作_否)/根据操作代码发送应收账款或停止发送案例0:发光二极管1=发光二极管2=1休息;案例1: putc _ to _ serial端口(A);LED1= LED1LED 2=1;休息;案例2: putc _ to _ serial端口(B);LED2= LED2 LED1=1;休息;案例3: putc _ to _ serial端口(C);LED1= LED1LED2=LED1休息;延迟毫秒(100);/*名称:乙机程序接收甲机发送字符并完成相应动作说明:乙机接收到甲机发送的信号后,根据相应信号控制领先完成不同闪烁动作。*/#包括#定义uchar无符号字符#定义uint无符号整数sbit led1=p00;sbit led2=p03;/延时void DelayMS(uint ms)乌恰尔一世;而对于(1=0;i120;/主程序void main()SCON=0x 50;/串口模式1,允许接收TMOD=0x 20;/T1工作模式2PCON=0x 00;/波特率不倍增TH1=0xfd ./波特率9600TL1=0xfd .RI=0;TR1=1;LED1=LED2=1而(1)如果(国际)/如收到则领先闪烁RI=0;开关(SBUF)/根据所收到的不同命令字符完成不同动作案例:发光二极管1=发光二极管1;LED2=1;休息;/LED1闪烁案例b :发光二极管2=发光二极管2;LED1=1;休息;/LED2闪烁案例c :发光二极管1=发光二极管1;LED2=LED1/双闪烁否则LED1=LED2=1/关闭领先延迟毫秒(100);46 单片机之间双向通信/*名称:甲机串口程序说明:甲机向乙机发送控制命令字符,甲机同时接收乙机发送的数字,并显示在数码管上。*/#包括#定义uchar无符号字符#定义uint无符号整数sbit led1=p10;sbit led2=p13;sbit k1=p17;内部操作_否=0。/操作代码/数码管代码uchar code DSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f ;/延时void DelayMS(uint ms)乌恰尔一世;而对于(1=0;i120;/向串口发送字符void Putc_to_SerialPort(uchar c)SBUF=c;而(TI=0);TI=0;/主程序void main()LED1=LED2=1P0=0x00SCON=0x 50;/串口模式1,允许接收TMOD=0x 20;/T1工作模式2PCON=0x 00;/波特率不倍增TH1=0xfd .TL1=0xfd .TI=R1=0;TR1=1;IE=0x90 ./允许串口中断而(1)延迟毫秒(100);if(K1=0)/按下K1时选择操作代码0,1,2,3而(K1=0);操作号=(操作号1)% 4;开关(操作_否)/根据操作代码发送应收账款或停止发送案例0: putc _ to _ serial端口(X);LED1=LED2=1休息;案例1: putc _ to _ serial端口(A);LED1= LED1LED 2=1;休息;案例2: putc _ to _ serial端口(B);LED2= LED2 LED1=1;休息;案例3: putc _ to _ serial端口(C);LED1= LED1LED2=LED1休息;/甲机串口接收中断函数void Serial_INT()中断4如果(国际)RI=0;如果(SBUF=0 SBUF=9)P0=DSY _代码SBUF;否则P0=0x00/*名称:乙机程序接收甲机发送字符并完成相应动作说明:乙机接收到甲机发送的信号后,根据相应信号控制领先完成不同闪烁动作。*/#包括#定义uchar无符号字符#定义uint无符号整数sbit led1=p10;sbit led2=p13;sbit k2=p17;uchar NuMx=-1;/延时void DelayMS(uint ms)乌恰尔一世;而对于(1=0;i120;/主程序void main()LED1=LED2=1SCON=0x 50;/串口模式1,允许接收TMOD=0x 20;/T1工作模式2TH1=0xfd ./波特率9600TL1=0xfd .PCON=0x 00;/波特率不倍增RI=TI=0;TR1=1;IE=0x90 .而(1)延迟毫秒(100);if(K2=0)而(K2=0);numx=numx;/生成010范围内的数字,其中10表示关闭SBUF=NumX。而(TI=0);TI=0;void Serial_INT()中断4如果收到,发光二极管将启动RI=0;开关(SBUF)/根据收到的不同命令字符执行不同的操作案例x : led 1=led 2=1;休息;/全部销毁案例a : led 1=0;LED2=1;休息;/LED1开启案例b : led 2=0;LED1=1;休息;/LED2开启情况c : led 1=LED 2=0;/全亮47微控制器向主机发送字符串/*名称:SCM向主机发送字符串注意:单片机以一定的时间间隔向主机发送字符串,内容显示在虚拟终端上。*/#包括#定义uchar无符号字符#定义uint无符号整数/延迟void DelayMS(uint ms)uchar I;而对于(I=0;i120;/将字符发送到串行端口void Putc_to_SerialPort(uchar c)SBUF=c;而(TI=0);TI=0;/将字符串发送到串行端口void Puts_to_SerialPort(内部)同时(*s!=0)putc _ to _ SerialPort(* s);s;delay ms(5);/主程序void main()uchar c=0;SCON=0x 40;/串行端口模式1TMOD=0x 20;/T1工作模式2TH1=0xfd。/波特率9600TL1=0xfd。PCON=0x 00;/波特率不会翻倍TI=0;TR1=1;德莱姆斯(200);/向主机发送数据从8051接收. r n );puts _ to _ SerialPort(- r n );delay ms(50);而(1)putc _ to _ SerialPort(c A);delay ms(100);putc _ to _ SerialPort();delay ms(100);If(c=25)/给每个输出加下划线puts _ to _ SerialPort( r n- r n );delay ms(100);c=(C1)&;如果(c=0)/每10个字符换行puts _ to _ SerialPort( r n );delay ms(100);48单片机与PC机通信/*名称:单片机与PC机之间的通信注:单片机可以接收PC机发送的数字字符,按下单片机的K1键后,单片机可以将字符串发送给PC机。在Proteus环境下完成本实验时,需要安装虚拟串口驱动程序和串口调试助手。本示例缓冲100个数字字符,当缓冲区已满时,新的数字从前面存储(环形缓冲区)。*/#包括#定义uchar无符号字符#定义uint无符号整数uchar接收_缓冲101;/接收缓冲区uchar Buf _ Index=0;/缓冲空间索引/数字管编码uchar code DSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x 00 ;/延迟void DelayMS(uint ms)uchar I;而对于(I=0;i120;/主程序void main()uchar I;P0=0x00接收_缓冲0=-1;SCON=0x 50;/串行端口模式1,可接受TMOD=0x 20;/T1工作模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论