双机通讯实验报告Word下载.docx
- 文档编号:13931101
- 上传时间:2022-10-15
- 格式:DOCX
- 页数:10
- 大小:20.44KB
双机通讯实验报告Word下载.docx
《双机通讯实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《双机通讯实验报告Word下载.docx(10页珍藏版)》请在冰豆网上搜索。
单片机向PC机重复发送本机(学生本人)学号,发送波特率为1200,采用方式1,单片机外部晶振频率为11、0592M。
四、实验原理
44.1
串行通讯得方式
在串行通讯中,有两种基本得通讯方式:
异步通讯,同步通讯.
异步串行通讯规定了字符数据得传送格式,既每个数据以相同得帧格式发送.每个帧信息由起始位、数据位、奇偶校验位与停止位组成。
本实验主要学习异步通讯得实现方法。
在异步通讯中,每一个字符要用起始位与停止位作为字符开始与结束得标志,以至占用了时间。
所以在数据块传送时,为了提高通讯速度,常去掉这些标志,而采用同步通讯.同步
通讯不像异步通讯那样,靠起始位在每个字符数据开始时发送与接受同步.而就是通过同步字符在每个数据块传送开始时使收/发双方同步.
按照通讯方式,又可将数据传输线路分成三种:
单工方式、半双工方式、全双工方式。
(1)单工方式在单工方式下,通讯线得一端联接发送器,另一端联接接收器,它们形成单向联接,只允许数据按照一个固定得方向传送。
(2)半双工方式在半双工方式下,系统中得每个通讯设备都由一个发送器与一个接收器组成,通过收发开关接到通讯线路上,如图33—1所示。
在这种方式中,数据能从A站送到B站,也能从B站传送到A站,但就是不能同时在二个方向上传送,即每次只能一个站发送,另一个站接收.
图2半双工通讯方式图33-1中得收发开关并不就是实际得物理开关,而就是由软件控制得电子开关,由通讯线两端得半双工通讯协议进行功能切换。
(3)全双工(Full—duple_)方式虽然半双工方式比单工方式灵活,但它得效率依然较低.从发送方式切换到接收方式所需得时间一般大约为数毫秒,这么长得时间延迟在对时间较敏感得交互式应用(例如远程检测监视控制系统)中就是无法容忍得.重复线路切换所引起得延迟积累,正就是半双工通信协议效率不高得主要原因。
半双工得这种缺点就是可以避免得,而且方法很简单,即采用信道划分技术。
在图33—2得全双工连接中,不就是交替发送与接收,而就是可同时发送与接收。
全双工通讯系统得每一端都包含发送器与接收器,数据可同时在两个方向上传送.
图3全双工通讯方式4.2单片机串行口工作方式在静态数码管显示实验中,我们熟悉了单片机串口工作方式0;
单片机串口还具有有3种工作方式。
如下表所示:
这3种工作方式,均用于串行异步通讯。
在异步串行通讯得一个字节得传送中,必须包括了起始位(0)与停止位
(1)。
除此之外,方式1具有8位(1个字节)得数据位(低位在先),方式2、3则除这8位之外,还具有一个可编程得第9位,这个第9位编程通常被编程为奇偶校验位.我们将在下一个实验中用到它。
串口工作方式在特殊寄存器SCON中设置。
其中得SM0与SM1位确定了串口工作方式。
要使通讯双方能够通讯成功,必须具有相同得串口工作模式;
REN为允许接收位,本实验中因为双方都要进行接收,因此REN也都应设为1。
TB8与RB8这里暂不涉及。
利用以下语句来设置SCON:
MOVSCON,#50H4。
。
3波特率得设置在异步串口通讯中,一个很重要得工作就就是进行串口波特率得设置。
波特率就是指串口通讯中每秒传送得位数,单位为BPS,它反映了串行口通讯得速度;
同时,通讯双方得速度必须一致,才能够顺利进行通讯。
在串口工作方式1、3中,传送波特率都就是可变得。
单片机内部通过定时器T1来提供发送与接收缓存器得内部移位时钟。
也就就是说,要确定串行通讯得波特率,必须对T1进行相
关设置。
51单片机系统对此时T1得设置有以下固定得规定:
(1)必须工作在定时器状态;
(2)必须工作在“8位自动重载”工作模式;
这必须在特殊寄存器TMOD中进行设置.关于TMOD得详细内容,我们在实验十七已经讲过。
可以利用以下语句来设置TMOD:
MOVTMOD,#20H除了对TMOD得设置外,还必须设置定时器T1得定时值,也就就是保存在TH1中得8位重载值。
这直接影响到波特率得大小:
它通过以下公式进行计算:
其中得SMOD为特殊寄存器PCON得最高位。
当它置1时,可以将波特率增大1倍。
在双机通讯中,只要双方得波特率一致就能够完成通讯了;
但就是,在标准得异步通讯协议中,只有几种波特就是适用得。
例如1200bps,2400bps,4800bps,9600bps……等等.而通过这个公式可以瞧出,并不就是所有得晶振频率都能够得到准确得上述波特率。
比如采用12MHz晶振,代入公式进行运算,就无法得到4800bps得准确波特率(TH1必须为小数了)。
在这种情况下,过去人们都使用软件补偿得方法,尽量得到准确得波特率;
而现在,市场上有很多通讯专用得晶振,例如3、6864MHz、11、0592MHz……得晶振,都能够直接得到准确得波特率.因此在进行本实验时,必须使用通讯专用晶振(如果使用仿真器,则设置为使用仿真头得外接晶振,并将11、0592M得晶振插入仿真头.当波特率已经确定,就可以反向推导出TH1得取自大小,例如,在本次实验中,我们要求波特率为4800bps,在晶振采用11、0592MHz得情况下,推出TH1=0F4H.五、实验步骤
1.参考图1并进行电路设计,画出电路图,并用导线正确连接两套装置得单片机最小系统实验模块,并连接最小系统模块与数码管显示模块。
照实验要求编写程序流程图,然后编写程序,对编写得程序进行仿真调试,直至通讯成功。
六、实验报告
11.在该实验中,单片机串行口工作在什么工作方式下?
说明该工作方式得特点。
工作在工作方式1。
8位数据通讯,波特率可变.
2.波特率就是什么?
怎样设置单片机串口通讯得波特率?
如果实验要求通讯波特率为4800bps,怎样修改程序?
特率就是指串口通讯中每秒传送得位数,单位为BPS,它反映了串行口通讯得速度。
单片机内部通过定时器T1来提供发送与接收缓存器得内部移位时钟。
必须工作在定时器状态;
必须工作在“8位自动重载”工作模式。
3.详细说明本次实验采用得通讯协议.
码数位8在示显并,据数位8该收接机乙,机乙给位8后号学)人本生学(机本送发机甲ﻩ管上。
乙机接收完毕后,将本机(乙机)得学号后8位发送回甲机,甲机显示在数码管上.4.给针对实验要求编写本机得程序流程图、程序清单并给予适当注释,并说明合作单片机(合合作同学).这里有两个程序,一个就是先接受,一个就是先发送。
#include〈STC12C5A60S2、h〉#defineucharunsignedcharvoidinit(void);
voidsend(void);
voiddelay(unsignedinti);
uchar_uehao[8]={6,6,6,6,6,6,6};
voidmain(void){
;
)(tiniﻩsend();
while
(1);
}voidinit(void)
{
TMOD=0_20;
TH1=0_fd;
;
df_0=1LTﻩ
ﻩSCON=0_50;
PCON=00;
TR1=1;
}voidsend(void){
irahcuﻩdo
{
ﻩdelay(20__);
SBUF=0_aa;
0=IT;
)0==IT(elihwﻩ
0=IR;
)0==IR(elihwﻩ}while(SBUF!
=0xbb);
//-----———-—-——-—--————-—-———--—----?
?
-?
)08(yaledﻩfor(i=0;
i<=7;
i++)
{ﻩﻩSBUF=_uehao[i];
0=IT;
)0==IT(elihwﻩﻩ
)5(yaledﻩ
}ﻩ;
9=FUBSﻩ
)01(yaledﻩ}///////////////////////////////////////////////////////////voiddelay(unsignedinti){
unsignedcharj;
)——i;
0〉i;
(rofﻩ)++j;
521〈j;
0=j(rofﻩ{;
}}#include〈STC12C5A60S2、h〉#defineucharunsignedcharvoidinit(void);
voidreceive(void);
voiddelay(unsignedinti);
voiddisplay(ucharA,ucharB);
voidduan_uan(ucharc);
uchar_uehao[8]={0};
voidmain(void){
)(tiniﻩ;
)(eviecerﻩwhile
(1)
ﻩdisplay(1,_uehao[0]);
)3(yaledﻩ
P0=00;
)]1[oaheu_,2(yalpsidﻩ;
)3(yaledﻩﻩ;
00=0Pﻩﻩ
display(3,_uehao[2]);
)3(yaledﻩ
P0=00;
ﻩdisplay(4,xuehao[3]);
delay(3);
ﻩP0=00;
display(5,_uehao[4]);
ﻩdelay(3);
00x0=0Pﻩﻩdisplay(6,xuehao[5]);
ﻩdelay(3);
P0=00;
display(7,_uehao[6]);
)3(yaledﻩ
P0=00;
ﻩ;
)]7[oaheu_,8(yalpsidﻩﻩ
)3(yaledﻩﻩP0=0_00;
}
//
}voidinit(void)
00X0=1M0PﻩP0M0=0_ff;
P2M1=00;
P2M0=0_ff;
TMOD=0_20;
df=1HTﻩTL1=0xfd;
SCON=0_50;
PCON=00;
TR1=1;
}voidreceive(void){
ucharenpty;
0=jrahcuﻩodﻩ{
0=IR;
)0==IR(elihwﻩ};
)aa=!
FUBS(elihwﻩSBUF=0_bb;
while(TI==0);
TI=0;
enpty=SBUF;
//while(RI==0);
RI=0;
//—--——-—-—--——-——---—---———---——-
delay(10);
for(j=0;
j<=7;
j++)
{ﻩ;
FUBS=]j[oaheuxﻩﻩ;
0=IR;
)0==IR(elihwﻩﻩ}}////////////////////////////////////////?
-//////////////////////////////////////////////////voiddisplay(ucharA,ucharB){,28x0,29,99_0,0b,4a,9f,0c{=]21[ofniedocrahcuﻩ0_f8,0_80,0_90,//
0_ff,
ﻩ
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 双机 通讯 实验 报告