袖珍式智能化电容表软件设计本科毕业论文(编辑修改稿)内容摘要:

P2 口输出 P2 锁存器的内容。 在 flash 编程和校验时, P2 口也接收高 8位地址字节和一些控制信号。 P3 口: P3 口是一个具有内部上拉电阻的 8 位双向 I/O 口, p3 输出缓冲器能驱动 4 个 TTL 逻辑电平。 对 P3 端口写“ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)。 P3 口亦作为 STC89C51 特殊功能(第二功能)使用,如下表所示。 在 flash 编程和校验时, P3口也接收一些控制信号。 端口引脚 第二功能 : RXD(串行输入口 ) TXD(串行输出口 ) INTO(外中断 0) INT1(外中断 1) TO(定时 /计数器 0) T1(定时 /计数器 1) WR(外部数据存储器写选通 ) RD(外部数据存储器读选通 ) 此外, P3口还接收一些用于 FLASH 闪存编程和程序校验的控制信号。 RST—— 复位输入。 当振荡器工作时, RST 引脚出现两个机器周期以上高电平将是单片机复位。 沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 13 ALE/PROG—— 当访问外部程序存储器或数据存储器时, ALE(地址锁存允许)输出脉冲用于锁存地址的低 8位字节。 一般情况下, ALE 仍以时钟振荡频率的 1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。 要注意的是:每当访问外部数据存储器时将跳过一个 ALE 脉冲。 对 FLASH 存储器编程期间,该引脚还用于输入编程脉冲( PROG)。 如有必要,可通过对特殊功能寄存器( SFR)区中的 8EH 单元的 D0位置位,可禁止 ALE 操作。 该位置位后,只有一条 MOVX 和 MOVC 指令才能将 ALE激活。 此外,该引脚会被微弱拉高,单片机执行外部程 序时,应设置 ALE 禁止位无效。 PSEN—— 程序储存允许( PSEN)输出是外部程序存储器的读选通信号,当STC89C51 由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次 PSEN 信号。 EA/VPP—— 外部访问允许,欲使 CPU 仅访问外部程序存储器(地址为0000HFFFFH), EA端必须保持低电平(接地)。 需注意的是:如果加密位 LB1 被编程,复位时内部会锁存 EA 端状态。 如 EA 端为高电平(接 Vcc 端), CPU 则执行内部程序存储 器的指令。 FLASH 存储器编程时,该引脚加上 +12V 的编程允许电源 Vpp,当然这必须 是该 器件是使用 12V 编程电压 Vpp。 图 STC89C51 芯片图。 图 STC89C51芯片图 沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 14 3 基于单片机电容测量软件设计 软件设计 软件设计是一个创造性的过程,对一些设计者来说需要一定的资质,而最后设计通常都是由一些初步设计演变而来的。 从书本上学不会设计,只能经过实践,通过对实际系统的研究和实践才能学会。 对于高效的软件工程,良好的设计是关键,一个设计得好的软件系统应该是可直接实现和易于维护、易懂 和可靠的。 设计得不好的系统,尽管可以工作,但很可能维护起来费用昂贵 、测试困难和不可靠,因此,设计阶段是软件开发过程中最重要的阶段。 直到最近,软件设计在很大程度上仍是一个特定过程。 一般用自然语言给定一 个需求集,预先作非正式设计,常常用流程图的形式说明,接着开始编码,当系统实现时设计还需修改。 当实现阶段完成后,设计往往已与起初形式相去甚远以至于设计的原始文档完全不适合对系统的描述。 软件设计任务 软件设计主要是针对硬件设计里面的控制部分的,这里指 STC89C51单片机,一般的单片机均可用 汇编语言和 C语言进行编程。 C语言直观,相对比较的简单,但占用的程序存储器的内存比较大,汇编语言是针对硬件设计的语言,如果想用汇编语言设计的话必须要对硬件有很大的了解,相对 C语言就比较的复杂,但是比较的精简,占用的程序存储器的空间比较的小。 作为还在学生阶段的我们,用汇编语言进行编程对我们理解单片机的内部结构、资源都有很好的帮助, 但是 C语言编程在以后的实际工作中将会大大简化自己的工作。 因此本论文的程序都是基于 C语言的。 要完成的任务是: 初始化程序设计、按键程序设计、中断处理程序,计数器计数程序,显示程序设计等。 软件设计的步骤 大型的软件设计是一个庞大的系统工程,需要前期的市场调查、需求分析,还需要各个行业的支持。 本次毕业设计的程序是一个很简单的过程,所以步骤也相对应的沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 15 简单了许多。 第一步:分析整个系统可以由几个子系统组成,并考虑几个子系统之间的内在的关系。 第二步:编写各个子系统的程序,最后组合在一起,得到整个系统。 第三步:编译,查错,改错(包括语法错误、逻辑错误)。 第四步:把编译,看是否得到我们需要的结果,如果得不到结果就回到第三步,直到最后得到我们想要的结果。 软件设计的 工具 本次毕业 设计 所选用 Keil C51 中的编译 /连接器软件 Keil uVision2 作为编译器 /连接工具,使用万利公司 Medwin 软件作为集成开发环境。 MedWin 是万利电子有限公司 Insight 系列仿真开发系统的高性能集成开发环境。 集编辑、编译 /汇编、在线及模拟调试为一体, VC 风格的用户界面,内嵌自主版权的宏汇编器和连接器,并完全支持 Franklin/Keil C 扩展 OMF 格式文件,支持所有变量类型及表达式,配合 Insight 系列仿真器,是您开发 80C51 系列单片机的理想开发工具。 MedWin 集成开发环 境的特点 (1)完美的 Windows 版集成开发环境 MedWin。 (2)内嵌自主版权的宏汇编器 A51 和连接器 L51,并支持 Keil/Franklin 编译、连接工具。 (3)具有分别独立控制项目文件的工程项目管理器。 (4)在工程项目管理下,实现多模块和混合语言编程调试。 (5)VC 风格的窗口停驻、窗口切分和工作簿模式界面。 (6)在线编辑、编译 /汇编、连接下载运行和错误关联定位。 (7)符合编程语言语法的彩色文木显示。 (8)完全的表达式分析,支持所有数据类型变量的观察。 沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 16 (9)无须点击的感应式鼠标提示功能。 (10)外部功能部件编程向导。 (11)不限制打开数据区观察窗口 的数目。 (12)调试状态下用户程序自动重装功能。 (13)提供真实的软件模拟仿真开发环境。 MedWin 开发 MedWin 集成开发环境提供了以下两种方式开发用户应用程序 : (1)不使用 MedWin 集成开发环境项目管理方式 — 对源程序文件直接进行汇编 /连接,兼容传统开发习惯。 (2)使用 MedWin 集成开发环境项目管理方式 — 可进行多模块、混合语言编程的,同样也适合单模块程序的开发。 用户无论是单模块或多模块的程序开发,我们都建议 使用项目管理方式管理应用程序。 不使用项目管理方式开发应用程序 不使 用 MedWin 集成开发环境项目管理方式,只能对单模块方式下的应用程序开发,具有很大的局限性。 以下是不使用 MedWin 集成开发环境项目管理方式开发应用程序的步骤 : 第一步 : 关闭当前项目文件 命令: [项目管理 |关闭当前项目 ] 不使用 MedWin 集成开发环境项目管理方式开发应用程序,用户必须关闭已经打开的项目,此时 MedWin 集成开发环境关闭界而上所有的窗口。 因为当打开项目文件后, MedWin 集成开发环境默认所有编译 /汇编、产生代码的 过程都是对项目或项目所包含的文件进行的。 第二步:在文件菜单下打开应用程序 命令: [文件 |新建 ]或 [文件 |打开 ] 沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 17 单模块方式下的文件调试可以按照以下方法新建或打开文件 : (1)点击 [文件 |新建 ],输人文件名和扩展名,新建文件 (2)点击 [文件 |打开 ],选择文件检取框中的文件将其打开 第三步:编译 /汇编 命令: [项目管理 |编译 /汇编 ] MedWin 集成开发环境根据文件的扩展名,自动对当前激活的文件选择调用外部编译器或汇编器 : (1)如果当前文件的扩展名为 ASM 或系统定义的扩展名,编译 /汇编命令调用外部汇编命令 对当前文件汇编。 (2)如果当前文件的扩展名为 C 或系统定义的扩展名,编译 /汇编命令调用外部 C编译命令对当前文件编译。 执行 [项目管理 |编译 /汇编 ]命令后产生的结果显示在消息框中。 如果需要设置文件编译 /汇编的命令行参数,可以选择 [项目管理 |文件属性 ]命令设置。 第四步:错误估息关联 MedWin 集成开发环境调用外部命令编译 /汇编后产生的结果,显示在消息窗口中,消息窗口可由热键 Ctrl+9 激活。 当编译 /汇编发生错误时,消息窗口中的错误信息自动与源文件关联,提示出错的位置。 在消息窗口中错误提示处双击。 鼠标左键或键人回车,可将错误信息与源文件的错误位置关联。 (1)如果编译 /汇编没有错误,可进人第五步操作。 (2)如果编译 /汇编出现错误,在修改源文件后重复进行第三步操作。 第五步 : 产生代码并装人仿真器调试 命令 :[项目管理 |产生代码 ]或 [项目管理 |产生代码并装人 ] 产生代码或产生代码并装人命令对经过编译 /汇编无误后产生的 OBJ 文件进行连接产生用于下载的代码。 此命令自动地对修改过的源程序进行编译或汇编,对没有修改过的程序将越过编译或汇编过程,然后连接所有的 OBJ, LIB 文件,再装载代码到仿真器,完成调试程序所需的 准备工作。 装载完成后,出现 Loading program“ (项目沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 18 名 )。 Completed”的字样。 使用项目管理方式开发应用程序 使用 MedWin 集成开发环境项目管理方式开发程序,适用于各种方式下的单模块和多模块方式应用程序。 以下是使用 MedWin 集成开发环境项目管理方式开发应用程序的步骤 : (1)建立一个新的项目进人第一步 —— 新建项目文件 (2)打开已经存在的项目文件进人第二步 —— 打开项目文件 第一步:新建项目文件 命令: [项目管理 |新建项目文件 ] 项目名称 MedWin 集成开发环 境的项目器是按项目名称管理的,项目管理器内的项目名称不可以相同。 在项目名称输人栏内,用户必须输人项目名称,并且项目名不得超过 8个字符,不可以使用汉字以及 “,。 , *, /”等 DOS 文件名所不可以使用的字符,也不可以输人盘符和路径 ! 高级设置 高级设置是用户程序所处路径与当前工作目录不同时,选择存放项目文件路径的过程。 通常,当用户源程序文件存放在当前工作目录时,不需要进行高级设置。 如果源程序文件不在当前工作目录时,用户必须选择高级设置,将项目文件存放到用源程序所处的目录。 如果源文件与项目文件不在同一目录时, 将会出现不能进行源文件调试的情况发生。 添加文件 选择添加文件选项,表示在项目建立后会自动打开文件检取框,供用户选择文件添加到项目管理器中。 存储器属性 存储器属性 Small / Compact / Large,此属性为 C 编译器所需,如果项目文件中沈阳航空 航天大学 北方科技学院毕业设计 (论文 ) 19 包含 C 程序,用户必须设置存储器属性。 RAM 尺寸: 128/256,此属性为连接器所需的控制项。 系统默认 128 字节。 系统默认标准 80C51 汇编选项,此选项为汇编器所需的控制项。 选中时,汇编器默认 SFR 为 80C51。 项目头文件路径为该项目所定义的头文件所处的路径。 该路 径与系统定义的头文件路径在 DOS 环境设置的关系是 : set c51 inc=(系统定义的头文件路径 ); (项目定义的头文件路径 ) 项目库文件路径为该项目所定义的库文件所处的路径,该路径与系统定义的库文件路径在 DOS 环境设置的关系是 : set c511ib=系统定义的库文件路径 ); (项目定义的库文件路径 ) 在项目的编译和连接过程中, MedWin 自动加人以上环境变量的设置。 通常用户需要设置项目定义的头文件和库文件路径,只有在高级应用时才需设置。 调试信息 建立新的项目后,系统默认为产生调试信息,能够进行源文件调试。 更多的文件属性关于编译 /汇编程序的更多的文件属性,可在 [项目管理 |文件属性 ]中设置。 如果在多模块调试中需要关闭一个或多个文件的源文件调试,可在文件属性对话框中,分别关闭产生调试信息选项。 第二步:添加文件 命令: [项目管理 |添加文件项 ] 添加文件命令用于将各类文件添加至项目管理器,新建项目文件后集成环境会自动打开添加文件对话框,提供选择。 请根据 : (1)如果文件存在,在文件检取框中选择并打开文件。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。