整理单片机双机通信系统课程设计.docx
《整理单片机双机通信系统课程设计.docx》由会员分享,可在线阅读,更多相关《整理单片机双机通信系统课程设计.docx(50页珍藏版)》请在冰豆网上搜索。
整理单片机双机通信系统课程设计
一.课程设计的目的及基本要求:
实践课程是使学生融会贯通本课程所学专业理论知识,完成一个较完整的设计计算和安装调试过程,以加深学生对所学理论的理解与应用,认识和熟悉元器件和电子测量仪器的性能指标,了解解决实际问题的一般过程,培养学生综合运用基础理论知识和专业知识去解决实际工程设计问题的能力。
通过电子技术的综合性工程训练,使学生达到以下的目的和要求:
1、 结合模拟电路、数字电路、可编程逻辑器件、单片机电子线路CAD等课程中所学的理论知识,按要求独立设计方案,培养学生独立分析与解决问题的能力;
2、 学会查阅相关手册和资料,通过查阅手册和资料,进一步熟悉常用电子器件的类型和特性,并掌握合理选用的原则;
3、 学会使用常用电子元器件(包括中规模芯片、专用芯片和可编程器件);
4、 掌握基本的现代电子技术设计工具和EDA(Electronicdesignautomation)技术;
5、 掌握电子电路的安装与调试技术,进一步熟悉电子仪器的使用方法;
6、 认真撰写总结报告,培养严谨的作风和科学的态度;
二.课程设计的主要内容:
课题十九单片机双机通信系统
基本要求:
设计两个单片机最小系统,能实现有线通信,一方为发送,另一方为接收。
提高要求:
两个单片机最小系统能相互通信,并能实现校验。
三.具体要求和时间安排:
每一个学生在教师指导下,独立完成一个应用系统。
工作量如下:
1、电路原理图(A3幅面)1张,要求Protel软件绘制;
2、pcb版图(A3及以上幅面)1张;
3、设计说明书(20-30页)1本,内含能编译通过的源程序(有必要的注释)。
一、前言………………………………………4
二、键盘设计……………………………………5
1、硬件接线部分……………………………5
2、4×4矩阵键盘识别处理………………7
3、键盘识别处理程序………………………8
三、单片机的选择及其程序设计……………10
1、单片机型号的选择……………………10
2、协议设计………………………………10
3、双机连接电路图………………………11
4、甲机程序………………………………11
5、乙机程序………………………………16
四、数码管显示设计…………………………16
五、总体电路图…………………………………21
六、设计小结…………………………………22
七、参考文献…………………………………23
一.前言
由于MCS51系列单片机具有性能稳定、工作可靠、价格低廉等特点,因此其应用相当广泛。
一个MCS51系列的单片机(如Atmel89c**)内部包含有RAM、FLASHROM、两个或者三个16位的定时器/计数器、一个通用异步串行通信控制器(UART)等多种资源。
但即便如此,在一些相对复杂的单片机应用系统中,仅仅一个单片机资源还是不够的,因此而常常需要扩充I/O接口、定时器/计数器、串行通信接口、RAM、ROM等。
采用通用的标准器件进行扩充是通常的做法,但将单片机本身作为一个通用的扩充器件来使用,也不失为一个好的方法。
在这种情况下,一个系统中就使用了两个或两个以上的单片机,而单片机之间就要通过互连来进行数据通信。
MCS51系列的单片机(以下简称单片机)都带有串口,利用串口进行互连通信极为方便,其各种连接方式在许多书籍和资料上都有介绍,在此不再重述。
但如果系统要求扩充的资源是对外连接的串口,或对相互之间的数据传送有一定的速度要求,则单片机的串口就不能用作系统内两单片机的通信接口了。
所幸的是,单片机的并行端口也能相互连接来进行数据通信。
根据单片机端口内部结构的特点,这些端口的端口线可以直接相连,从而使两单片机之间并行通信接口的实现不用另外的硬件电路设备。
此次设计就是针对上述情况展开的。
系统结构框图如图
(1)所示:
二、键盘设计
(1)硬件接线部分
考虑到此次设计要求用到的按键数比较多(0~9,A~F共16个按键),为了节约I/O资源,采用行列式键盘,如图
(1)所示
图
(1)
按键编排如图
(2)所示
图
(2)
(2)4×4矩阵键盘识别处理
按键设置在行列式交点上,行列线分别连接到按键开关的两端。
当行线通过上拉电阻接+5伏时,被钳位在高电平状态,事先认为设定好行线和列线的序号。
此处设行号为i,从上到下编为0-3对应于p1.0-p1.3口,列线设为j,从左到右编为0-3对应于p1.4-p1.7口。
每个按键有它的行值和列值 ,行值和列值的组合就是识别这个按键的编码。
事先有数组存放好对应键值的段选码。
矩阵的行线和列线分别通过两并行接口和CPU通信。
每个按键的状态同样需变成数字量“0”和“1”,开关的一端(列线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。
键盘处理程序的任务是:
确定有无键按下,判断哪一个键按下,键的功能是什么;还要消除按键在闭合或断开时的抖动。
两个并行口中,一个输出扫描码,使按键逐行动态接地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。
(3)键盘识别处理程序
键盘实现程序如下:
voidscanf(void)/*键盘扫描子程序*/
{
uchari,j,k=0;/*i为行号,j为列号*/
unsignedcharnum[4][4]={0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x84};
/*采用共阳极输出*/
while
(1)
{
for(k=0;k<8;k++)/*循环8次,取得8个键盘键值*/
{/*存入TAB[]数组*/
P1=0x0F;
delay();/*软件延时去抖动*/
if((P1&0x0F)!
=0x0F)
{
switch(P1)/*确定行号*/
{
case0x07:
i=3;break;
case0x0b:
i=2;break;
case0x0d:
i=1;break;
case0x0e:
i=0;break;
default:
break;
}
}
P1=0xF0;//反转行和列上的电平
if((P1&0xF0)!
=0xF0)
{
switch(P1)/*确定列号*/
{
case0x70:
j=3;break;
case0xb0:
j=2;break;
case0xd0:
j=1;break;
case0xe0:
j=0;break;
default:
break;
}
TAB[k]=num[j][i];/*P1输出对应的按键值*/
}
}
}
三、单片机的选择及其程序设计
(1)单片机型号的选择
单片机选用两片Atmel公司的常用芯片AT89C51,一片用于接收键盘的输入并做出判断,一片用于接收数据并驱动8个七段数码管实现动态显示。
AT89C51完全可以满足功能要求,而且价格便宜,容易获得。
(2)协议设计
规定协议内容如下:
数据传输的双方均使用2400bps的速率传送数据,使用主从通信方式,主机发送数据,从机接收数据,双方在发送数据和接收数据时使用查询方式。
(此处设计甲机发送,乙机接收)
双方开始数据传输时,甲机先发送AAH给乙机,当乙机接收到AAH之后,向甲机回答BBH。
甲机收到BBH后就把数码表TAB[8]中的8个数据发送给乙机,并发送校验和。
乙机收到8个数据并计算收到的数据的校验和,与甲机发送过来的校验和进行比较,若校验和相同(正确)则发送00H给甲机;否则发送FFH(错误)甲机,重新接收。
乙机接收到8个数据后送8个数码管动态显示。
(3)双机连接电路图如图(4)所示
图(4)
(4)甲机程序
#include
#defineucharunsignedchar
ucharTAB[8];
uchari,sum;/*sum为求和校验*/
voiddelay(void)/*延时程序*/
{intj;
for(j=0;j<12000;j++);
}
voidscanf()/*键盘扫描程序*/
{
uchari,j,k=0;
unsignedcharnum[4][4]={0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xc6,0xa1,0x86,0x8e
};
while
(1)
{
for(k=0;k<8;k++)
{
P1=0x0F;
delay();/*软件去抖动*/
if((P1&0x0F)!
=0x0F)
{
switch(P1)
{
case0x07:
i=3;break;
case0x0b:
i=2;break;
case0x0d:
i=1;break;
case0x0e:
i=0;break;
default:
break;
}
}
P1=0xF0;/*反转行和列上的电平*/
if((P1&0xF0)!
=0xF0)
{
switch(P1)
{
case0x70:
j=3;break;
case0xb0:
j=2;break;
case0xd0:
j=1;break;
case0xe0:
j=0;break;
default:
break;
}
TAB[k]=num[j][i];/*P1输出对应的按键值*/
}
}
}
}
voidinit(void)/*初始化程序*/
{TMOD=0x20;
TH1=0xf3;/*波特率为2400bps*/
TL1=0xf3;
PCON=0x00;/*SMOD=0*/
TR1=1;/*开T1中断*/
SCON=0x50;/*接收允许*/
}
voidsend(void)/*发送函数*/
{do{SBUF=0xaa;/*发送握手信号0XAA*/
while(!
TI);/*等待接收*/
TI=0;/*传送完复位*/
while(!
RI);/*等待接收*/
RI=0;/*接收完复位*/
}
while(SBUF!
=0xbb);/*甲机收到BBH后就把数码表*/
TAB[8]/*中的8个数据发送给乙机,并发送校验和*/
do{sum=0;
for(i=0;i<=7;i++)
{SBUF=TAB[i];/*发送段选码*/
sum+=TAB[i];/*和校验*/
while(!
TI);
TI=0;
}
SBUF=sum;/*发送校验和*/
while(!
TI);
TI=0;
while(!
RI);
RI=0;
}
while(SBUF!
=0);//等待接收
}
main()//主程序
{init();
scanf();
send();
}
(5)乙机程序
#include
#defineucharunsignedchar
voidinit(void)//初始化程序
{TMOD=0x20;
TH1=0xf3;//波特率为2400bps
TL1=0xf3;
PCON=0x00;
TR1=1;
SCON=0x50;
}
voiddelay(void)/*延时程序*/
{ucharj;
for(j=0;j<12000;j++);
}
voidreceive(void)//接收函数
{uchari,sum;
ucharTABS[8];//定义接收数组
do{while(!
RI);RI=0;}
while(SBUF!
=0xaa);//接收完0XAA则向主机发送0XBB
SBUF=0xbb;while(!
TI);TI=0;
while
(1)
{sum=0;
for(i=0;i<=7;i++)
{while(!
RI);RI=0;
TABS[i]=SBUF;//装人接收的数据
sum+=TABS[i];
}
while(!
RI);RI=0;
if(SBUF==sum)//和校验
{SBUF=0X00;while(!
TI);TI=0;break;}
else
{SBUF=0xff;while(!
TI);TI=0;}
}
while
(1)//p2口为位选码
P2=0xfe;
{for(i=0;i<=7;i++)
{P0=TABS[i];//p0口输出段选码
P2=P2<<1|0x01;//位选码左移,并或0X01实现动态显示
delay();}//延时
}
}
voidmain(void)//接收主函数
{init();
receive();
}
四、数码管显示设计
为了显示所需字符,我们必须先查的对应字符的段选码,如图()所示。
此处选用共阳极输出查的对应字符段选码后预存入数组TAB[]中。
图(7)
八位LED动态显示电路只需要两个8位I/O口。
其中一个控制段选码,另一个控制位选。
要想每位显示不同的字符,必须利用人的视觉暂留,采用扫描方式。
数码管显示部分硬件接线如图(8)所示
懒而富态;而这些山顶上绝壁松却是枝干瘦硬,树叶黑绿,矫健又强悍。
这绝壁之松是被恶劣与凶险的环境强化出来的。
它遒劲和富于弹性的树干,是长期与风雨搏斗的结果;它远远地伸出的枝条,是为了更多地吸取阳光……这一代代艰辛的生存记忆,已经化为一种个性的基因,潜入绝壁松的骨头里。
为此,它们才有着如此非凡的性格与精神。
⒎它们站立在所有人迹罕至的地方。
那些荒峰野岭的极顶,那些下临万丈的悬崖峭壁,那些凶险莫测的绝境,常常可以看到三两棵甚至只有一棵孤松,只有站在这些高不可——十分夺目地立在那里。
它们彼此姿态各异,也神情各异,或英武,或肃穆,或孤傲,或寂寞。
远远望着它们,会心生敬意;但它们攀的地方,才能真正看到天地的浩荡与博大。
⒏于是,在大雪纷飞中,在夕阳残照里,在风狂雨骤间,在云烟明灭时,这些绝壁松都像一个个活着的人:
像站立在船头镇定又从容地与激浪搏斗的……在一片光亮晴空的映衬下,它们的身影就如同用浓墨画上去的一样。
艄公,超逸又具风骨的文人,⒐但是,别以为它们全像画中的松树那么漂亮。
有的枝干被飓风吹折,暴露着断枝残干,但那些枝叶仍很苍郁;有的被酷热与冰寒打败,只剩下赤裸的刚强、坚韧、适应、忍耐、奋取与自信,它全都具备。
——枯骸,却依旧尊严地挺立在绝壁之上。
于是,一个强者应当有的品质冯骥才)/(文绝壁之松是黄山的灵魂。
——⒑现在可以说了,在黄山这些名绝天下的奇石奇云奇松中,石是山的体魄,云是山的情感,而松分)2黄山绝壁松外形有什么特点?
在作者眼里,它有怎样的精神品质?
(20.。
分)2(结合语境,在第⑧段横线处补写一个恰当的句子。
21.。
分)4(从语言运用的角度,谈谈下列句子中加点部分的表达效果。
22.)裸露的巨石侧立千仞,光秃秃没有土壤,尤其那些极高的地方,天寒风疾,草木不生,苍鹰也不去那里,一棵棵松树却破石而出,伸展着优美而碧1(.......。
,显示其独具的气质绿的长臂............。
。
,或寂寞,或孤傲,或肃穆)它们彼此姿态各异,也神情各异,或英武2(............。
分)3作者在第③段写其他名松、在第⑥段写山下之松各有什么用意?
(23.。
,有的枝干被吹折;树叶黑绿;枝条远伸。
品质:
刚强、坚韧、适应、忍耐、奋取、自信。
分)外形特点:
树干瘦硬(遒劲、富于弹性也可)2(20.分)示例:
战场上永不倒下的英雄/沉静的思想者/?
?
(符合语境,内容关联,句式类似即可)2(21.)1(分)4(共22.分)加点部分采用了拟人的修辞手法,把松树(绝壁松)的外形特点及奋取精神写出来了,表达了作者对绝壁松的赞美。
2(分)采用了拟人和排比的修辞手法,生动形象地表现了黄山绝壁松的丰富神情,表达了作者对黄山绝壁松的敬意。
2()2(分)第③段用其它名松衬托黄山绝壁松,突出重点,引人注意。
第⑥段写山下之松运用了对比手法,突出绝壁松与恶劣环境斗争的坚强精神及顽强生命力。
3(23.分)3分,答对两点得2(答对一点得湖南娄底(四)出售欲望的孩子占保祥卡尔从小被祖母拉扯大,性格偏激执拗,方圆几个社区,没人愿意招惹他。
是头岁那年,一次喝酒后,卡尔竟抢了一位妇女的挎包,里面有几百美元现金。
从此,卡尔爱上了抢劫,欲罢不能,无人不知他的恶行。
校长对他很13疼,不知道如何处理这个孤儿。
事情越演越烈,卡尔的欲望愈发膨胀起来。
在学校,他成了老大,拉帮结派,唯我独尊,公开旷课,还常常偷同学的东西。
被学校开除后,卡尔才明白自己的行为损害了祖母的尊严。
想到祖母苍老的面庞,他无地自容。
走在匆忙的人群中,卡尔看见了一个小个子的老者,他的钱包露了出来,简直是天赐良机。
瞬间,欲望控制了卡尔,他跟随着老者,走街串巷。
终于,老者走累了,坐在地上休息。
卡尔的手伸向了老人的钱包。
一刹那间,钱包就落到了卡尔的手中。
卡尔本来是这样设想的:
拿到钱包后,冲老人扮一个鬼脸,然后逃之天天。
但他的手却遭到了强有力的反抗,老人的手像钳子一样抓住了他的手。
卡尔看到了一张狰狞的脸,可怕的脸。
老人什么也没说,反身将他塞进了身后的小屋里。
是送到警察局,还是私了?
?
老人问他,说吧,怎么办别送警察局了,丢面子。
卡尔垂头丧气地说。
那好吧,看来你是个惯犯,有这样的本事也算了不起。
我有个孙子,很想学会这一招,你将欲望和技能卖给他吧。
话音未落,一个年轻人推门走了进来。
他叫奇里,你现在把你所有的技术传给他。
但要记住,以后你永远不能再有这样的欲望和行为了,否则你就是侵权。
如果发现你再做坏事,就将你扭送到警察局和专利局,因为你同时犯了两大罪,要受到严厉制裁。
老人的话说得斩钉截铁,容不得卡尔不同意。
老人拿出一张协议书,抬头写着:
出售欲望协议书。
老人握着卡尔的手,让他摁下了手印。
卡尔被放出来时,感到一阵恐惧和失望。
他想到了老人的脸,那双有力的手,还有那张协议书。
卡尔回到家时,祖母正在与老师谈话。
看到祖母向老师求情的表情,卡尔不由失声痛哭。
他发誓再也不做对不起祖母的事。
,一心一意做个好孩子。
欲望再次袭来时,眼前便立刻浮现出那位老人的脸。
他不敢出手,他害怕报复,害怕那回到学校后,卡尔解散了“坏蛋组织”间小黑屋。
卡尔考上高中后,身上的臭毛病彻底改掉了。
渐渐地,祖母也年迈多病,无力再管制他。
他学会了自立,每天帮祖母打扫房间、做饭,邻居们都夸他是一个懂事的孩子。
那天,卡尔正在侍弄庭院里的鲜花,一位老人推开了他家的院门。
卡尔上前询问,却发现是那张可怕的脸。
正是那个老者。
卡尔心想,他一定是想将以前的事告诉祖母,无论如何不能让他见到祖母,否则祖母的病会雪上加霜。
这时,老人走了过来,脸上却荡漾着慈祥的微笑。
?
他摸摸卡尔的头,问:
你奶奶呢卡尔正言厉色。
!
她不在家,出去了,我知道你想做什么。
你不能这样对待一位病中的老人好孩子,我是来看望你奶奶的,这不,牛奶、鲜花。
老人说着,指了指手中的袋子。
?
学会护着奶奶了原来他和祖母认识。
卡尔一脸疑惑。
’老人进了屋,屋内传来了奶奶与老人开心的对话。
卡尔忍不住贴在门上偷听。
听到一半时,卡尔禁不住潸然泪下。
这样做,既彻底解决了问题,又不让卡尔失去人祖母早就知道了他的劣行,她没有张扬,而是与这位好友一起,用一种特别的方式改掉了卡尔的毛病。
格和尊严。
这个出售欲望的孩子,当晚在日记中这样写道:
欲望是可以出售的,但亲情和尊严永远不能。
分)2.请用简洁的语言概述选文写了一个什么样的故事?
(21答:
分)2.选文标题中“出售欲望”的意思是什么?
(22答:
分)3.选文在艺术表现手法上巧妙设置悬念,请从文中找出来,并说说产生了怎样的表达效果?
(23答:
分)4(.请结合全文,分析祖母的形象。
24答:
分)4”你怎样理解这句话?
结合生活实际谈谈选文给了你什么启示?
(‘欲望是可以出售的,但亲情和尊严永远不能。
‘.选文最后说:
25答:
答:
分)2(.写卡尔在祖母和老人的巧妙教育下,改掉了坏毛病。
21“出售欲望”指卡尔将抢钱偷钱的想法出卖给人,就没有了这种权利,以后再抢钱偷钱.22]学科网:
来源[分)2(就是侵权。
23;突出了祖母的慈分)1。
这样写使故事情节曲折动人(分)1.祖母早就知道了他的劣行,她没有张扬,而是与好友一起,用一种特别的方式改掉了卡尔的毛病(。
分)1爱与智慧(分)4(,要有具体的分析。
.答案要点:
慈爱、有教育智慧24(.25)一个人身上的贪欲是可以出卖的,是可通过别人的教育和自己的努力改正的,但亲情和人格尊严是不能出卖的,也就是说师长与亲人的关爱、自己1分)2(的人格尊严无论如何不能丢。
)示例:
现实生活中,老师、家长不能用简单粗暴的方法对待犯错误的孩子,要懂得教育智慧。
而有坏毛病的孩子,应多为父母、亲人着想,多为家2(分)2(庭、学校着想,要维护自己的人格和尊严。
页36第
恰有不解之缘。
莲花与佛教,”心似莲花开。
一草一世界?
?
一念一清净,“一花一天堂,那支一直喜爱的佛乐不由得又在耳边回响:
凝望着眼前的莲花,之首的阿弥陀佛也是坐在莲台之上,“西方三圣”佛祖释迦牟尼是坐在莲花台上向信徒们讲经说佛的;莲花是佛教精神宗旨的象征和圣花。
彼此相惜。
千年来,且双手仰掌托着莲台,仿佛指引众生通往佛国净土;大慈大悲的观音菩萨,也是一身素衣端坐于白莲之上,一手持净瓶,一手执白莲,以其纯洁的菩萨心肠,引导众生看淡烟柳繁华,到达简淡圆融之妙境。
佛教里讲究洁静,身洁,心洁,耳目不染尘埃。
莲花是洁净的化身,是佛的使者,她一身的纯洁,与佛的善心相得益彰,千百年来,成为人们心目中永远歌颂的对象。
莲塘慢慢地静了,莲花的芳香,轻轻氤氲。
这时候,是该醉,还是该醒?
轻轻的离开吧,我打扰她已经太久了,也许今夜,我会梦见自己变成那朵洁白的莲花,在风里,在水里,释放生命的芳华。
)期,作者:
曹艳存.有删改02年第2012(选自《散文百家)作为行文顺序来写的。
_______________________________分)全文思路明晰.是以19.(2分)假如将下面的句子用作文章的题记.请用怡当的词语补充完整。
20.(2。
_______________________________如果可以选择.我愿意做一朵莲花,只因她分)试从修辞的角度品析下面句子。
21.(2白色的莲花掩映于莲叶之间,粉红的朵儿,则探着脑袋.露于莲叶之外。
________________________________________________________________________________________________________________________________________________________________,试体会其表达作用。
分)文中多次使用第二人称“你”22.(3分)文章末尾写到会梦见自己变成莲花.作者这样写的用__________________________