单片机的系统开发及设计(论文版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络教育学院
专科毕业大作业
学习中心:
专业:机械电子工程
学生姓名:
学号:
评定成绩:
评阅教师:
成绩评定表
学生姓名:专业:机械电子工程学号:
单片机的系统设计及开发
内容提要:单片机控制技术应用十分广泛,其核心技术是单片机控制系统的设计。
介绍了对单片机控制系统的构成、硬件设计、软件设计和系统调试等各环节并进行了讨论,根据工作经验给出了调试方法。
关键词:单片机;系统设计;系统调试
目录
引言 (1)
第一章单片机定义及介绍 (2)
第二章单片机系统设计 (3)
2.1单片机控制系统总体方案的设计 (3)
2.2单片机系统硬件设计 (3)
2.3单片机控制系统的软件设计 (5)
2.4单片机控制系统的调试 (6)
结论 (8)
致谢 (9)
引言
随着材料科学、工艺技术、计算机技术的发展与进步,电路系统向着集成度极高的方向发展。
CPU的生产制造技术,也朝着综合性、技术性、实用性发展。
如CPU的运算位数从4位、8位……到32位机的发展,运算速度从8 MHz、32 MHz……到1.6 GHz。
可以说是日新月异的发展着。
其中单片机在控制系统中的应用是越来越普遍了。
单片机控制系统是以单片机(CPU)为核心部件,扩展一些外部接口和设备,组成单片机工业控制机,主要用于工业过程控制。
要进行单片机系统设计首先必须具有一定的硬件基础知识;其次,需要具有一定的软件设计能力,能够根据系统的要求,灵活地设计出所需要的程序;第三,具有综合运用知识的能力。
最后,还必须掌握生产过程的工艺性能及被测参数的测量方法,以及被控对象的动、静态特性,有时甚至要求给出被控对象的数学模型。
本设计主要包括以下几个方面的内容:包括单片机控制系统总体方案的设计、单片机系统硬件设计、单片机控制系统的软件设计、单片机控制系统的调试等内容。
第一章单片机定义及介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。
我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。
单片机是靠程序的,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。
一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。
一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸!对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能接受的。
单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。
一样的道理,如果把巨型计算机上的操作系统和应用软件拿到家用PC 上来运行,家用PC的也是承受不了的。
第二章单片机系统设计
2.1单片机控制系统总体方案的设计
确定单片机控制系统总体方案,是进行系统设计最重要、最关键的一步。
总体方案的好坏,直接影响整个控制系统的性能及实施细则。
总体方案的设计主要是根据被控对象的任务及工艺要求而确定的。
设计方法大致如下:根据系统的要求,首先确定出系统是采用开环系统还是闭环系统,或者是数据处理系统。
选择检测元件,在确定总体方案时,必须首先选择好被测参数的测量元件,它是影响控制系统精度的重要因素之一。
选择执行机构,执行机构是微型机控制系统的重要组成部件之一。
执行机构的选择一方面要与控制算法匹配,另一方面要根据被控对象的实际情况确定。
选择输入/输出通道及外围设备。
选择时应考虑以下几个问题:被控对象参数的数量;各输入/输出通道是串行操作还是并行操作;各通道数据的传递速率;各通道数据的字长及选择位数;对显示、打印有何要求;画出整个系统原理图。
单片机控制系统中控制算法的选用一般有:
(1) 直接数字控制当被控对象的数学模型能够确定时,可采用直接数字控制。
所谓数学模型就是系统动态特性的数学表达式,它表示系统输入输出及其内部状态之间的关系。
一般多用实验的方法测出系统的特性曲线,然后再由此曲线确定出其数学模型。
现在经常采用的方法是计算机仿真及计算机辅助设计,由计算机确定出系统的数学模型,因而加快了系统模型的建立。
当系统模型建立后,即可选定上述某一种算法,设计数字控制器,并求出差分方程。
计算机的主要任务就是按此差分方程计算并输出控制量,进而实现控制。
(2) 数字化PID控制由于被控对象是复杂的,因此并非所有的系统均可求出数学模型,有些即使可以求出来,但由于被控对象环境的影响,许多参数经常变化,因此很难进行直接数字控制。
此时最好选用数字化PID(比例积分微分)控制。
在PID控制算法中,以位置型和增量型2种PID为基础,根据系统的要求,可对PID控制进行必要的改进。
通过各种组合,可以得到更圆满的控制系统,以满足各种不同控制系统的要求。
例如串级PID就是人们经常采用的控制方法之一。
2.2单片机系统硬件设计
尽管单片机集成度高,内部含有I/O控制线,ROM,RAM和定时/计数器。
但在组成单片机系统时,扩展若干接口仍是设计者必不可少的任务。
扩展接口有2种方案,一种是购置现成的接口板,另一种是根据系统实际需要,选用适合的芯片进行设计控制系统。
就后一种
而言,主要包括以下几个方面的内容。
基本系统的构成:一个独立的单片机核心系统,一般由时钟电路、地址锁存器电路、地址译码器、存储器扩展、模拟量输入通道的扩展、模拟量输出通道的扩展、开关量的I/O 接口设计、键盘输入和显示电路等组成。
(1)存储器扩展由于单片机有4种不同的存储器,且程序存储器和数据存储器是分别编址的,所以单片机的存储器容量与同样位数的微型机相比扩大了一倍多。
扩展时,首先要注意单片机的种类;另一方面要把程序存储器和数据存储器分开。
(2)模拟量输入通道的扩展主要有以下2个问题:一个是数据采集通道的结构形式,一般单片机控制系统都是多通道系统。
因此选用何种结构形式采集数据,是进行模拟量输入通道设计首先要考虑的问题。
多数系统都采用共享A/D和S/H形式。
但是当被测参数为几个相关量时,则需选用多路S/H,共享A/D形式。
对于那些参数比较多的分布式控制系统,可把模拟量先就地进行A/D转换,然后再送到主机中处理。
对于那些被测参数相同(或相似)的多路数据采集系统,为减少投资,可采用模拟量多路转换,共享仪用放大器、S/H和A/D 的所谓地电平多路切换形式。
另外一个问题是A/D转发器的选择,设计时一定要根据被控对象的实际要求选择A/D转换器,在满足系统要求的前提下,尽量选用位数比较低的A/D 转换器。
(3)模拟量输出通道的扩展模拟量输出通道是单片机控制系统与执行机构(或控制设备)连接的纽带和桥梁。
设计时要根据被控对象的通道数及执行机构的类型进行选择。
对于那些可直接接受数字量的执行机构,可由单片机直接输出数字量,如步进电机或开关、继电器系统等。
对于那些需要接收模拟量的执行机构,则需要用D/A转化,即把数字量变成模拟量后,再带动执行机构。
(4)开关量的I/O接口设计由于开关量只有2种状态“1”或“0”,所以,每个开关量只需一位二进制数表示即可。
因为MCS-51系列单片机设有一个专用的布尔处理机,因而对于开关量的处理尤为方便。
为了提高系统的抗干扰能力,通常采用光电隔离器把单片机与外部设备隔开。
(5)操作面板操作面板是人机对话的纽带,它根据具体情况,可大可小。
为了便于现场操作人员操作,单片机控制系统设计一个操作面板的要求:操作方便、安全可靠、并具有自保功能,即使是误操作也不会给生产带来恶果。
(6)系统速度匹配在不影响系统总功率的前提下,时钟频率选得低一些较好,这样可
降低系统对其他元器件工作速度的要求,从而降低成本和提高系统的可靠性。
但系统频率选的比较高时,要设法使其他元器件与主机匹配。
(7)系统负载匹配系统中各个器件之间的负载匹配问题,主要表现在以下几个方面。
①逻辑电路间的接口及负载:在进行系统设计时,有时需要采用TTL和CMOS混合电路,由于二者要求的电平不一样,因此一定要注意电流及负载的匹配问题。
② MCS-51系列单片及负载:8031的外部扩展功能是很强的,但是8031的P0口和P2口以及控制信号ALE的负载能力都是有限的,P0口能驱动8个LSTTL电路,P2口能驱动4个LSTTL 电路。
硬件设计时应仔细核对8031的负载,使其不超过总的负载能力的70%。
2.3单片机控制系统的软件设计
单片机控制系统的软件设计一般分2类,系统软件和应用软件设计。
系统软件的主要任务是:管理整个控制系统的全过程,比如,POWERUP自诊断功能,KEY INPIT 的管理功能,PRINTER OUTPUT报表功能,DISPLAY功能等等。
是控制系统的核心程序,也称之为MONITER 监控管理程序其作用类似PC机的DOS 系统。
软件设计的几个方面如下:
(1)可靠性设计为保证系统软件的可靠性,通常设计一个自诊断程序,定时对系统进行诊断。
在可靠性要求较高的场合,可以设计看门狗电路,也可以设计软件陷阱,防止程序跑飞。
(2)软件设计与硬件设计的统一性在单片机系统设计中,通常一个同样的功能,通过硬件和软件都可以实现,确定那些由硬件完成,那些由软件完成,这就是软件、硬件的折衷问题。
一般来说,在系统可能的情况下,尽量采用软件,因为这样可以节省经费。
若系统要求实时性比较强,则可采用硬件。
(3)应用软件的特点
①实时性:由于工业过程控制系统是实时控制系统,所以对应用软件的执行速度都有一定的要求,即能够在被控对象允许的时间间隔内对系统进行控制、计算和处理。
换言之,要求整个应用软件必须在一个采样周期内处理完毕。
所以一般都采用汇编语言编写应用软件。
但是,对于那些计算工作量比较大的系统,也可以采用高级语言和汇编语言混合使用的办法,即数据采集、判断、及控制输出程序用汇编语言,而对于那些较为复杂的计算可采用高级语言。
为了提高系统的实时性,对于那些需要随机间断处理的任务,通常采用中断系统来完成。
②通用性:在应用程序设计中,为了节省内存和具有较强的适应能力,通常要求程序
有一定的灵活性和通用性。
为此,可以采用模块结构,尽量将共用的程序编写成子程序,如算术和逻辑运算程序、A/D、D/A转换程序、延时程序、PID运算程序、数字滤波程序、标度变换程序、报警程序等。
(4)软件开发步骤软件开发大体包括:划分功能模块及安排程序结构;画出各程序模块详细流程图;选择合适的语言编写程序;将各个模块连接成一个完整的程序。
2.4单片机控制系统的调试
(1)硬件调试根据设计的原理电路做好实验样机,便进入硬件调试阶段。
调试工作的主要任务是排除样机故障,其中包括设计错误和工艺性故障。
①脱机检查:用万能表或逻辑测试笔逐步按照逻辑图检查机中各器件的电源及各引脚的连接是否正确,检查数据总线、地址总线和控制总线是否有短路等故障。
有时为保护芯片,先对各管座的电位(或电源)进行检查,确定其无误后再插入芯片检查。
②仿真调试:暂时排除目标板的CPU和EPROM,将样机接上仿真机的40芯仿真插头进行调试,调试各部分接口电路是否满足设计要求。
这部分工作是一种经验性很强的工作,一般来说,设计制作的样机不可能一次性完好,总是需要调试的。
通常的方法是,先编调试软件,逐一检查调试硬件电路系统设计的准确性。
其次是调试MONITOR程序,只有MONITOER 程序正常工作才可以进行下面的应用软件调试。
硬件电路调试的一般顺序是:
①检查CPU的时钟电路。
通过测试ALE信号,如没有ALE信号,则判断是晶体或CPU故障,这称之为“心脏”检查。
②检查ABUS/DBUS的分时复用功能的地址锁存是否正常。
③检查I/O地址分配器。
一般是由部分译码或全译码电路构成,如是部分译码设计,则排除地址重叠故障。
④对扩展的RAM、ROM进行检查调试。
一般先后写入55H、AAH,再读出比较,以此判断是否正常。
因为这样RAM、ROM的各位均写入过‘0’、‘1’代码。
⑤用户级I/O设备调试。
如面板、显示、打印、报警等等。
(2)软件调试软件调试根据开发的设备情况可以有以下方法:
①交叉汇编:用IBM PC/XT机对MCS-51系列单片机程序进行交叉汇编时,可借助IBM PC/XT机的行编辑和屏幕编辑功能,将源程序按规定的格式输入到PC机,生成MCS-51 HEX 目标代码和LIST文件。
②用汇编语言:现在有些单片STD工业控制机或者开发系统,可直接使用汇编语言,借助CRT进行汇编语言调试。
③手工汇编:这种方法是最原始,但又是一种最简捷的调试方法,且不必增加调试设备。
这种方法的实质就是对照MCS-51指令编码表,将源程序指令逐条地译成机器码,然后输入到RAM重新进行调试。
在进行手工汇编时,要特别注意转移指令、调用指令、查表指令。
必须准确无误地计算出操作码、转移地址和相对偏移量,以免出错。
(3)硬件、软件仿真调试经过硬件、软件单独调试后,即可进入硬件、软件联合仿真调试阶段,找出硬件、软件之间不相匹配的地方,反复修改和调试。
实验室调试工作完成以后,即可组装成机器,移至现场进行运行和进一步调试,并根据运行及调试中的问题反复进行修改。
结论
单片机控制技术应用越来越广泛,其核心技术是单片机控制系统的设计。
对工程技术人员来说,抓住系统的原理构成、软件设计、硬件设计以及系统调试方法的要点是十分必要的。
根据工作经验,前面叙述的系统调试方法将会有助于从事这方面工作的技术人员及本专业的学习者。
致谢
本文从拟定题目到完稿,历经许多困难与挫折。
在本论文完成之际,首先要向我的指导老师表示衷心的感谢。
在论文的写作过程中,他给了我许许多多知识上的讲解,他学识渊博、待人平易近人,同时他对工作的积极热情、治学严谨的态度,给我留下了深刻的印象,使我受益非浅。
同时,我要感谢学院给我们授课的各位老师,正是由于他们的传道、授业、解惑,让我学到了专业知识,并从他们身上学到了如何求知治学、如何为人处事。
另外,衷心感谢我的同窗好友,在我毕业论文写作中,与他们的探讨使我收获颇多;同时,他们也给了我很多无私的帮助和支持,我在这表示诚挚的谢意。
最后,对我的亲爱的家人和朋友表示无比的感谢,他们的爱、理解、关怀和支持是我前进的动力。
活到老学到老,以后我会更加努力,争取做出更好的成绩。
参考文献
[1] 粤初主编,《单片及应用系统设计与实践》, 北京航空航天大学出版社,1992年版,第89页.
[2] 立民主编,《单片机应用系统设计》 ,北京航空航天大学出版社,1998年版,第50页。
[3] 群芳主编,《单片微型计算机与接口技术》, 电子工业出版社 2001.9版,第87页。
[4] 涵芳主编,《MCS-51/96系列单片机原理及应用》, 北京航空航天大学出版社2002 .1,第92页。
[5] 继文等主编,《感器与应用电路设计》, 科学出版社,2004年版,第25页。
[6] 学海主编, 《PIC单片机实用教程》,北京航空航天大学出版社,2001年版,第152页。