版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《单片机原理与接口技术》
电子教案
重庆工商职业学院第一页,共二十八页。第七章
单片机应用系统设计[内容提要]本章主要介绍单片机应用系统的设计。目前单片机的应用领域十分广泛,可以说,已深入到了包括工业过程控制、智能化仪器仪表、家用电器等在内的各行各业。本章中列举的只是单片机众多应用中的几个侧面。以单片机为核心的产品的开发需要单片机开发系统的支持,本章对单片机开发系统作了初步介绍。[学习要求]在本章的学习过程中,应主要了解并初步掌握单片机应用系统的设计,即如何规划单片机应用系统软、硬件之间的关系,如何合理地选择外部扩展器件,合理分配单片机资源等。第二页,共二十八页。◆需求获取在进入正式开发之前,必须先从用户处获取准确的需求。在这上面花费相当时间是很必要的。项目可以大致分为委托开发和公司立项开发两大类。对于委托开发,例如给某单位开发一套该单位专用的系统,一般用户对于项目要完成哪些功能已经有了一个比较清楚的轮廓,而且往往在开发合同中已经大致地规定了。但是,开发合同上规定的只是一个大概的框架,在进入开发之前必须与用户进行比较具体的交流和讨论,了解清楚用户心目中的产品究竟是什么样子。这个步骤如果没有好好做,往往到了开发工作的后期才发现开发人员的理解和用户的要求有一些误解,那么必然造成时间上的浪费。对于公司立项开发的项目,在开发之前应该做一定的市场调查工作,一方面是从经济效益考虑,调查产品的潜在市场有多大,另一方面是从技术的角度,必须了解清楚潜在用户对产品的各种功能上的要求,例如,用户现在使用什么产品,对该产品有什么意见和要求等等,根据调查的统计结果决定即将开发的产品的一些技术指标。7.1单片机应用系统的设计过程一、合理的开发流程第三页,共二十八页。◆需求分析在了解用户的需求之后,将需求用一种模型来表示,就是需求分析。强调几个问题:
▲要分清问题域与系统责任
▲需求获取与需求分析的关系
▲分析与设计过程的衔接7.1单片机应用系统的设计过程一、合理的开发流程◆设计过程设计阶段的工作包括:对分析模型必要的修改。可能需要对某些类结构进行一些修改,这些修改的原因可能是编程环境的要求,或者为了重用以前的某些工作。定义界面部分、数据访问(数据库)部分。由于目前很多编程语言都可以可视化地设计界面,所以界面部分工作往往留到了编码阶段来完成。于是设计阶段的工作量并不大。◆编码进入编码工作之后,可能会发现前面分析或设计阶段的某些错误,这时应返回到前面的阶段进行必要的修改。◆测试即使是小项目,也应该严格地进行测试。第四页,共二十八页。◆人员安排比较小的项目,往往是几个人来完成,这几个人基本上从头到尾参加开发。在这几个人中,有一位项目负责人,负责分析、设计和协调的工作。由于项目小,项目负责人也要参加编程,那么这人必须把时间合理运用,注意以下以点原则:
▲协调几个人的工作比自己完成一段编码更重要由于协调上出了漏洞,可能导致很大的问题,所以项目负责人必须随时监控各开发人员的工作,包括内容是否与要求发生偏差,进度是否滞后等等。只有在完成这些工作之后,项目负责人剩下的时间才能用于编程。
▲给每个开发人员明确的任务书
不管是用面向对象或者其他方法开发,分析、设计模型只是从功能的角度来描述系统。但是,具体开发时每个开发人员必须非常明确自己的任务,这些任务应该采用明确的文档来表示。
▲让大家都大致熟悉设计模型让每个开发人员都清楚自己所做的工作在整个系统中处于什么地位,有时侯可能会发现设计模型中的漏洞,避免了各人的代码编写完毕之后又要修改的后果。
7.1单片机应用系统的设计过程一、合理的开发流程第五页,共二十八页。7.1单片机应用系统的设计过程二、产品开发流程框图1122图7-1开发流程图第六页,共二十八页。7.2单片机开发工具一、开发手段的选择仿真插头单片机应用系统(用户系统)
EPROM写入插口开发模板通用计算机系统总线图7-2微机开发系统第七页,共二十八页。◆805l宏汇编语言◆
PL/M-51语言◆
C-51语言7.2单片机开发工具二、开发工具软件图
7-3伟福仿真器菜单界面第八页,共二十八页。任务描述:潜水泵自动控制保护器具有两大功能,第一是保护功能:能在泵体缺水时实施自动保护,并能根据预设时间自动恢复工作。第二是自动控制功能:能根据水塔水位,自动启停水泵。总体设计◆
需求分析▲需求获取本项目最早由一家专门生产潜水泵的厂家提出,该厂家在生产和销售过程中,不断接到用户反馈潜水泵烧坏,主要原因是在抽水过程中,由于水源来水不足,潜水泵干抽烧坏,所以提出开发一种保护装置,就有了最初的潜水泵自动控制保护器项目的需求,再根据实际中,许多情况是给水塔抽水,这样就要知道水塔缺水和水满情况,还有在广大农村有时要计时抽水,这样就确定最后方案。▲设计开发任务书本项目是一个很小的项目,开发人员为:项目负责人一名、一名软件工程师、一名硬件工程师、一名技术员。项目负责人负责协调各人员工作和检查进度,软件工程师负责程序设计,硬件工程师负责硬件原理图及PCB板设计,技术人员负责原器件购买、测试和组装工作。7.3单片机应用系统举例一、潜水泵自动控制保护器第九页,共二十八页。总体设计◆方案设计采用89C2051单片机控制、二个键(K1、K2)用来起动水泵前的参数设置,水位器:(三个)水池上水位器、水池下水位器、潜水泵水位器,用来检测水位保证水泵正常工作,该保护器有两种工作模式,一种是自动控制模式,主要用在对水塔抽水,另一种是定时工作模式主要应用在计时抽水。◆测试计划硬件测试:主要测试各部分硬件是否能正常工作,每部分通过简单程序来检测。软件测试:测试软件是否符合设计要求、是否存在BUG。
7.3单片机应用系统举例一、潜水泵自动控制保护器第十页,共二十八页。详细设计◆硬件设计▲主要元器件89C2051一片、78L05一个、LED3个、按键二个、水位检测器三个、MOC3020一个、变压器一个、及电阻、电容、三极管、灯等若干。
▲
LED工作原理及动态显示:本项目采用的是共阳极的3个LED数码管,要点亮某个数码管的某笔划,则相应的数码管阳极加+5V电源,相应笔划的阴极端接低电平,本方案三个数码管阴极是相连的,所以在阳极必须轮流有效,只要时间合理,在人的视觉就会看到同时亮的结果。
7.3单片机应用系统举例一、潜水泵自动控制保护器第十一页,共二十八页。详细设计▲原理图7.3单片机应用系统举例一、潜水泵自动控制保护器第十二页,共二十八页。详细设计◆软件设计LED显示程序LED0 EQU 41H;定义LED显示缓冲低位单元LED1 EQU 42H;LED2 EQU 43H;定义LED显示缓冲高位单元 ……LOOP:LCALLDISPLAY……SJMPLOOP……DISPLAY:PUSH ACC MOV A,LED2 LCALL DISP17.3单片机应用系统举例一、潜水泵自动控制保护器第十三页,共二十八页。
CLR P3.2LCALLDEL1SETB P3.2MOV A,LED1LCALLDISP1CLR P3.3LCALLDEL1SETB P3.3
MOV A,LED0LCALL DISP1CLR P3.4LCALLDEL1
SETB P3.4POP ACC RETDISP1: MOV DPTR,#DBB MOVC A,@A+DPTR MOV P1,A RETDEL1: MOV R3,#10DEL: MOV R4,#50
DJNZ R4,$ DJNZ R3,DEL RET;数码管字形码DBB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H;0-6 DB 82H,0F8H,80H,90H ;7-9 END详细设计◆软件设计7.3单片机应用系统举例一、潜水泵自动控制保护器第十四页,共二十八页。任务描述:本控制器能根据用户设定的加温温限(最高温度),以及加热时间、冷却时间,自动调节加热功率,从而达到可调速加热的目的。
总体设计◆需求分析▲需求获取本项目最初由湘潭大学理化实验室提出需求,在化学实验金属相图实验中,原有的实验仪(一台PC机、一台加热炉、一台测温仪)要做一个完整的实验需要四五个小时以上,并且数据要学生自己记录并自己计算和给制图形,往往几个小时不能完成一个实验,为了解决这个问题,提出开发一种新的实验设备,新的实验仪(PC机一台、两台测温仪,每台测温仪可以接六路温度传感器,两台加热炉),这样一台PC机可同时采集12路数据,整个过程由PC机上软件完成,不需学生记录数据和绘制图形和表格,大大提高了实验速度,实验结果更准确和直观。同时一个实验室可以省下一半PC机,节约了设备成本。本项目只是该实验仪中一部分,也就是加热炉的控制部分。▲设计开发任务书本项目开发人员如下:项目负责人一名,软件工程师四名、硬件工程师一名、结构工程师一名、技术员一名、采购员一名。其中两名软件工程师负责PC软件开发、一名软件工程师负责测温仪软件开发、一名软件工程师负责加热炉软件开发。
7.3单片机应用系统举例二、可调速加热控制炉第十五页,共二十八页。总体设计◆方案设计整个方案在这里就不详述,这里只就加热炉部分进行说明,由于一台PC机同时控制两台加热仪和两台测温仪,所以本台都有相应地址,与PC机通讯采用CAN总线,地址用24C01存储,加温速度由PC机根据当时室温发送相应加热功率百分比来控制加热炉。加热炉由89C1051控制。如接收到PC机发送的功率是80,则可通过控制加热炉80%时间打开电源,20%时间关断电源,具体通讯协议读者可以自己制订,并完整好程序,并在做实验或实训时调试。
◆测试计划硬件测试:主要测试各部分硬件是否能正常工作,每部分通过简单程序来检测。软件测试:加热炉在不同室温下能不能在相同时间加热到指定温度。7.3单片机应用系统举例二、可调速加热控制炉第十六页,共二十八页。详细设计◆硬件设计▲主要元器件89C2051一片、24C01、双向可控硅等。▲
I2C总线原理及工作时序:
引脚图7.3单片机应用系统举例二、可调速加热控制炉第十七页,共二十八页。读写命令字当前读时序7.3单片机应用系统举例二、可调速加热控制炉第十八页,共二十八页。字节写、页写时序7.3单片机应用系统举例二、可调速加热控制炉第十九页,共二十八页。随机读时序图7.3单片机应用系统举例二、可调速加热控制炉第二十页,共二十八页。详细设计▲原理图7.3单片机应用系统举例二、可调速加热控制炉第二十一页,共二十八页。详细设计◆软件设计I2C总线的24C02读写程序:;**********************************************;*Title:AT24C02与51单片机连接读写程序*;*Date:2005.7.7*;*********************************************************;连线:SCL—P3.4,SDA—P3.5,WP—接地;(R3)=器件地址,(R4)=片内字节地址,;(R5)=连续读写字节数,(R1)=欲读写数据存放地址指针;*********************************************************7.3单片机应用系统举例二、可调速加热控制炉第二十二页,共二十八页。
SCL EQU P30
SDA EQU P31;写24C02子程序I2C_WRITE:SETB SDASETB SCLCLR SDA;发开始信号MOV A,R3;发器件地址ACALL SEND;调发送单字节子程序MOV A,R4;送片内字节地址ACALL SENDI2CW_AGAIN:MOV A,@R1ACALL SENDINC R1DJNZ R5,I2CW_AGAIN ;连续写N个字节CLR SDA;SDA位置0,准备送停止信号ACALL DELAY ;延时以满足传输速率要求SETB SCL ;发送停止信号ACALL DELAYSETB SDARETSEND: MOV R0,#08HI2CW_LOOP:CLRSCL ;开始[信号之后的]写地址操
;作,SCL清'0'RLC AMOV SDA,C7.3单片机应用系统举例二、可调速加热控制炉第二十三页,共二十八页。NOPSETB SCL ;写完一位打操作后,SCL置'1'ACALL DELAYDJNZ R0,I2CW_LOOPCLR SCLCALL DELAYSETB SCL ;ACKLP: MOV C,SDAJC ACKLP ;判断应答到否,未到则等待CLR SCLRET
;********************************;读24C02子程序I2C_READ: SETB SDA SETB SCL7.3单片机应用系统举例二、可调速加热控制炉第二十四页,共二十八页。 CLR SDA ;发开始信号
MOV A,R3 ;发器件地址
ACALL SEND ;调发送单字节子程序
MOV A,R4 ;送片内字节地址
ACALL SEND SETB SDA SETB SCL CLR SDA ;发开始信号
MOV A,R3 ;发器件地址
SETB ACC.0 ;发读命令ACALL SENDI2CR_AGAIN: ACALL READ MOV @R1,A INC R1 DJNZ R5,I2CR_AGAIN7.3单片机应用系统举例二、可调速加热控制炉第二十五页,共二十八页。 CLR SDA ;SDA位置0,准备送停止信号
ACALL DELAY ;延时以满足传输速率要求SETB SCL ;发送停止信号
ACALL DELAY SETB SDA RETREAD:MOV R0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江西九江市修水县部分县直单位选调事业编制人员17人备考题库(一)附参考答案详解(完整版)
- 2026湖南湘潭市湘潭县选调事业单位人员13人备考题库含答案详解(典型题)
- 2026西藏昌都市人民医院招聘20人备考题库带答案详解(预热题)
- 2026浙江中医药大学附属第三医院(第三临床医学院康复医学院)博士后招聘27人备考题库附答案详解(满分必刷)
- 2026湖北武汉市汉口重点初级中学招聘教师2人备考题库及答案详解(新)
- 2026陕西西安航空职业技术学院高层次及高技能人才招聘34人备考题库附答案详解(模拟题)
- 2026江苏南京大学招聘医学院技术管理1人备考题库附答案详解(精练)
- 2026江苏苏州市港航投资发展集团有限公司招聘13人备考题库(第一批)附答案详解(轻巧夺冠)
- 2026江西新余高新区国有企业招聘8人备考题库带答案详解(考试直接用)
- 2026河南郑州商学院招聘技术人员备考题库带答案详解(研优卷)
- 华为完整版本
- 心血管-肾脏-代谢综合征(CKM)综合管理中国专家共识2025解读课件
- 八年级英语下册集体备课教案:Unit 8 Have you read Treasure Island yet P1
- (一模)太原市2025年高三年级模拟考试(一)英语试卷(含标准答案)
- DB31-T 1433-2023 扬尘在线监测技术规范
- 加油站应急救援知识培训
- 非财务人员的财务管理培训通用课件
- 安全生产标准化绩效考核评定报告
- 安徽永牧机械集团有限公司年产10000吨钢结构加工项目环境影响报告表
- 就业单位提前退休申请书
- QSY136-2023年生产作业现场应急物资配备选用指南
评论
0/150
提交评论