鍗旷墖链鸿.docx
- 文档编号:10715343
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:6
- 大小:69.59KB
鍗旷墖链鸿.docx
《鍗旷墖链鸿.docx》由会员分享,可在线阅读,更多相关《鍗旷墖链鸿.docx(6页珍藏版)》请在冰豆网上搜索。
鍗旷墖链鸿
单片机原理与接口技术
课程设计报告
一.题目…………………………….3
二.设计要求……………………….3
三.器件选型……………………….3
四.设计理念……………………….3
五.电路硬件图…………………….4
六.程序流程图…………………….5
七.实验源程序…………………….6
八.实验总结……………………….8
九.参考文献……………………….11
一.题目:
流水灯2
二.设计要求:
设计一个流水灯控制器,在按钮A=0时,8个流水灯的里亮灭顺序是1.,2,3,4,5,6,7,8;当A=1时,8个灯得亮灭顺序是8,7,6,5,4,3,2,1。
按钮B可以随时启动或停止流水灯的运行。
三.器件选型:
MCS-8051单片机,8个LED灯,按钮A,B等。
四.设计理念:
将按钮A设在P3.6,按钮B设在P3.7。
在按钮A=0时,若B=0,则灯不亮;若B=1,则8个灯按照1,2,3,4,5,6,7,8的顺序亮灭,反复循环,B随时按下都可以启动或停止流水灯的运行。
在按钮A=1时,若B=0,则灯不亮;若B=1,则8个流水灯按照8,7,6,5,4,3,2,1的顺亮灭,反复循环,B随时按下都可以启动或停止流水的运行。
满足设计要求。
五.电路硬件图
六.程序流程图
七.实验源程序
#include
SBITA=P3^6;
SBITB=P3^7;
unsignedchari,j,k;
voiddelays(void)//定义延时程序
{
for(i=50;i>0;i--)
for(j=100;j>0;j--)
for(k=248;k>0;k--);
}
voidmian()
{
constunsignedcharS1[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
constunsgnedcharS2[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsignedcharc;
while
(1)
{
{
if(A==0)
for(c=0;c<8;c++)//8个灯亮灭顺序为1,2,3,4,5,6,7,8,
{
if(B==0)
break;//按钮B随时可以启动或停止流水灯的运行
if(B==1)
P2=S1[c];
delays(void);
}
}
{
if(A==1)
for(c=0;c<8;c++)//8个灯亮灭顺序为8,7,6,5,4,3,2,1
{
if(B==0)
break;//按钮B随时可以启动或停止流水灯的运行
if(B==1)
P2=S2[c];
delays(void);
}
}
P2=0xff;//8个灯熄灭
}
}
八.实验总结
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。
因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。
单片机应用系统一般由包含多个模块得主程序和。
各种子程序组成。
每一模块都要完成一个明确的任务,实现某个具体的功能,如计算、接受、发送、延时、显示和打印等。
采用模块化程序设计方法,就是将这些具体功能程序进行独立设计和分别调试,最后将这些模块程序装配成整体程序并进行联合调试。
模块化程序设计方法的优点:
一个模块可以为多个程序所共享;单个功能明确的程序模块的设计和调试比较方便,容易完成;利用已经编好的成熟模块,将大大缩短开发程序的时间,降低开发成本。
采用循环结构和子程序结构可以使程序的容量大大减少,提高程序的效率,节省内存。
对于多重循环,要注意各重循环的初值和循环结束的条件,避免出现程序无休止循环的“死循环”现象;对于通用的子程序除了用于存放程序入口参数的寄存器外,子程序中用到的其他寄存器的内容应压入堆栈保护现场,并要特别注意堆栈操作的压入和弹出的平衡;对于中断处理子程序除了要保护处理程序中用到的寄存器外,还要保护标志寄存器。
程序设计的步骤
1.明确条件和要求
首先要根据系统设计及其他有关资料,弄清楚该程序设计的条件和设计要求,如:
硬件、软件的状况和采用的语言、编码、输入、输出、文件设置、数据处理等方面的基本要求,以及本程序和其他各项程序之间的关系等。
2.分析数据
必须要对处理的进行仔细的分析,弄清楚数据的详细内容和特点之后,才能进一步按照要求确定数据的数量和层次结构,安排输入、输出、存储、加工处理的步骤以及一些具体的计算方法。
3.确定流程
确定流程是为了完成规定的任务而给计算机安排的具体操作步骤。
一般用统一的符号把数据的输入、输出、存储、加工等处理过程绘制成程序流程图(简称框图),作为编写程序的依据。
4.编写程序
编写程序是采用一种程序设计语言,按其规定的语法规则把确定的流程描写出来。
5.检查和调试
检查内容包括程序结构是否得当,语句的选用和组织是否合理,语法是否符号规定,语义是否正确等。
一个程序往往要经过反复多次的调试:
运行、检查、修改,之后才能通过。
6.最后确定源程序。
这次课程设计过程中,遇到一些问题。
刚开始的时候,认为挺简单的,但在做的时候,感到这也不会,那也不清楚。
不会的时候找同学问,不清楚的时候看书弄明白。
在实验中,有一点不明白的地方,都可能造成设计的失败。
这使得我们重新的去看书把要用到的知识掌握牢固。
同时,设计是我从实际方面了解单片机,不再是象书本上那样空洞,自然也更深刻。
最后感谢指导老师的精心指导,让我的课程设计顺利完成。
九.参考文献:
[1]《单片机原理实验指导书》;
[2]《单片机原理与接口技术》——牛昱光、李晓林;
[3]《单片机基础与实践教程》——夏路易;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 鍗旷墖链鸿
![提示](https://static.bdocx.com/images/bang_tan.gif)