计算机接口技术及应用课程设计指导书(2)

2019-05-17 19:35

16. 无线遥控升降系统设计

(1) 识别无线遥控上ABCD四个键值;

(2) A—正反转;B—停止;C—加速;D—减速。 17. 新生儿恒温箱监控系统设计 (1) 初始温度28°;

(2) 设定适宜温度31°—36°;

(3) 根据设定的温度采用继电器开关进行加热或者停止。 18. 无线遥控多路开关设计

(1) 识别无线遥控上ABCD四个键值;

(2) A—继电器1;B—继电器2;C—继电器3;D—继电器3。 19. 键控步进电机设计 (1) 设置K1—K4四个键值;

(2) K1—正反转;K2—停止;K3—加速;K4—减速。 20. 智能晨起系统设计 (1) 通过数码管设定时间;

(2) 到达指定时间,利用步进电机卷动窗帘,同时蜂鸣器发声; (3) 可以键控停止。

四、设计步骤

单片机的应用系统随着用途不同,它们的硬件和软件结构差别很大,但系统设计的方法和步骤基本上是相同的。一般包括总体设计、硬件设计、软件设计、仿真调试、固化程序、应用系统独立运行等步骤。

课程设计由于时间安排、学生水平、实验条件等诸方面的限制,仅要求学生完成仿真调试即可,同时根据实际情况,在试验箱上调试通过。 1. 总体设计 ( 1 ) 明确任务

根据课题的要求确定系统的工作原理。如电脑时钟的工作原理为:每百分之一秒对计数一次,满100次秒加一,秒满60次分加一……;并在数码管上显示时、分秒当前值。

第 6 页 共 21 页

如果需要还要提出相应的技术指标。如电脑时钟要求显示的最小单位为秒,还是百分之一秒;温度测量系统要求测量多少路?测量精度是多少;收银机计算金额的范围多大,最小单位是否计分;交通灯控制系统测量车流量的最大频率是多少等。

( 2 ) 硬件和软件功能的划分

系统的硬件配置和软件设计是紧密地联系在一起的,且硬件和软件具有一定的互换性。多用硬件完成一些功能,可以提高工作速度,但降低了系统的柔性。若用软件替代某些硬件功能,可增加系统的柔性,但降低系统的工作速度。因此,总体设计时,应综合考虑,合理划分硬件和软件的功能。在课程设计中,应充分利用仿真系统的硬件资源。如单个脉冲可以通过程序CPL P1.0得到,也可利用仿真系统的硬件资源获得。 2. 硬件设计

根据总体设计要求,确定系统扩展与功能接口,设计出系统的电路原理图。

( 1 ) 系统扩展

仿真系统的CPU采用8051,因此,必须首先组成最小系统,即由8051及复位电路组成。根据课题要求,在此基础上进行扩展。包括I/O口扩展、定时器/计数器扩展和中断控制器扩展等。如交通灯控制系统中要求控制四个方向的红、绿、黄灯共12个,因此,需扩展I/O口,可选用74HC595,也可利用串入并出移位寄存器74LS164扩展2个8位输出口的接口电路。 1) 功能接口

所谓接口是CPU与外界的连接部件,以实现CPU与外部设备的最佳耦合和匹配。包括键盘、显示、A/D转换、D/A转换和打印机等。根据课题要求,选用外设,并选用合适的外围接口芯片。 2) 系统的组成及统一编址

I/O端口是CPU与I/O设备直接通信的地址。单片机系统对I/O端口是采用端口地址与存储器地址统一编址的方式,即存储器映射方式。而编址技术又分线选法和译码法。 3. 软件设计

一个优秀的的系统的软件应具有下列特点:

? 软件结构清晰、简捷、流程合理。

? 各功能程序实现模块化、子程序化。这样,既便于调试、链接,又方

第 7 页 共 21 页

便移植、修改。

? 程序存储区、数据存储区分配合理。

? 运行状态实现标志化管理。各个功能程序运行状态、运行结果以及运行要求都设置状态标志(一般用位寻址区的位)以便查询,程序的转移、运行、控制都可以通过状态标志条件来控制。

? 实现全面软件抗干扰设计。(由于条件有限,课程设计中不考虑。) 软件设计一般步骤如下: ( 1 ) 系统定义

系统定义是在软件设计前,把软件承担的任务明确出来。

各种数据类型的定义。是定点数还是浮点数;是有符号数还是无符号数;是十六进制数还是BCD码。如果一个参数的变化范围有限,就可以用定点数来表示,以简化程序设计和加快运行速度。当参数的变化范围太宽时,只好采用浮点数来表示。若要求数据的正负之分,则考虑定义有符号数。对于自然数列,为显示方便,可以采用BCD码,如电脑时钟的时、分、秒。

合理定义和分配存储空间、定义标志位。

资源分配的主要工作是RAM资源的分配。片外RAM的容量要比片内RAM大,通常用来存放批量大的数据,如采样数据系列。主要考虑片内RAM的分配。系统上电复位时,自动定义0区为工作寄存器,1区为堆栈,并向2区、3区延伸。如果系统前台程序要用1区、2区作为工作寄存器,就应将堆栈空间重新规划,常将堆栈安放在片内RAM的高端,如60H~7FH。

在工作寄存器的8个单元中,R0和R1具有指针功能,是编程的重要角色,应充分发挥其作用,尽量避免用来做其他事情。

20H~2FH这16个字节具有位寻址功能,用来存放各种软件标志、逻辑变量、位输入信息、位输出信息副本、状态变量、逻辑运算的中间结果等。当这些项目全部安排好后,保留一两个字节备用,剩下的单元才可改作其他用途。

30H~7FH为一般通用寄存器,只能存入整字节信息。通常用来存放各种参数、指针、中间结果,或用作数据缓冲区。

RAM资源规划好后,应列出一张RAM资源的详细分配清单,作为编程依据。为了增加可读性,便于修改,一般对分配的存储单元取名。如保存当前时间的时、分、秒取HOUR、MINI、SEC,编程时用变量名,编译时只需在前面加HOUR EQU 24H即可(20H为分配给小时的存储单元的地址)。

第 8 页 共 21 页

( 2 ) 软件结构设计

软件设计有两种方法:一种是自上而下,逐步细化;另一种是自下而上,先设计出每一个具体的模块(子程序),然后再慢慢扩大,最后组成一个系统。两种方法各有优缺点。自上而下的方法在前期看不到什么具体效果,对于初学者来说,心中总是不踏实。而自下而上的方法一开始就有结果,每设计并测试好一个模块,就能看到实际的效果,给人一步一个足印的感觉,能树立信心。我们建议两种方法结合运用。主程序采用自上而下的方法,将它分成若干个功能相对独立的较小的程序模块。然后再采用自下而上的方法,设计一个模块,调试一个模块,加入主程序调试;再进行下一个模块设计和调试。所以在这一步骤就是设计主程序的框架。

( 3 ) 模块设计

1) 建立入口条件和出口条件,明确模块功能

根据问题的定义,描述出各个输入变量的存放地址(入口条件)和各个输出变量的存放地址(出口条件)。例如输入量是经A/D转换后的8个数字量,存入在以30H为首的数据块中,输出量是这8个数字量的平均值,存放在40H中。为方便起见,用R0存放输入量数据块首地址,用R1存放输出量地址。则入口条件为R0,出口条件为R1。

2) 绘制程序流程图

根据问题的定义,确定算法,并绘制程序流程图。注意必须确保程序流程图的正确性。比如在电脑时钟中,考虑输入“分”的数据的合理性,数据必须小于60,程序框图中就不能忽视等于60如何处理。这是初学者常犯的错误。

3) 编写程序

在确保程序流程图的正确性的前提下,才能编写程序。在编程时必须注意以下几点:

①一定要严格根据流程图编程。 ②一定要写注释。

③通过编译后,只表明语法没错,并不表明逻辑正确,一定要用不同的数据对模块进行测试。完全符合预定结果,方可确认通过。

④将该模块加到主控模块进行测试,如果与预定结果不符,必须查找原因,进行修改、调试。

⑤必须注意随时保存调试通过的副本。以便当新程序出现故障时,随时可返回前面的正确点重新开始。

第 9 页 共 21 页

4.编写设计说明书

由于设计时间紧迫,不要在完成全部设计后再编写设计说明书。而应在设计过程中逐步完成。一开始不可能设计出满意的主程序框图。因此,总体设计部分在完成全部设计任务后再写。而硬件部分和软件部分可以在设计过程同步完成。

五、设计要点

1. 大型智能交通灯的设计

图1是一个十字路口示意图。分别用1、2、3、4表明四个流向的主车道,用A、B、C、P分别表示各主车道的左行车道、直行车道、右行车道以及人行道。用a、b、c、p分别表示左转、直行、右转和人行道的交通信号灯,如图3所示。

交通灯闪亮的过程:

路口1的车直行时的所有指示灯情况为:

3a3b2p绿3c红+4a4b4c 3p全红+1c 绿1a1b4p红+2c绿2a2b1p红 路口2的车直行时的所有指示灯情况为:

4a4b3p绿4c红+ 1a1b1c 4p全红+ 2c绿2a2b1p红+3c绿3a3b2p红 故路口3的车直行时的所有指示灯情况为:

1a1b4p绿1c红+ 2a2b2c 1p全红+3c绿 3a3b2p红+4c 绿4a4b3p红 故路口4的车直行时的所有指示灯情况为:

2a2b1p绿2c红+3c3a3b2p全红+4c绿4a4b3p红+1c绿1a1b4p红

第 10 页 共 21 页


计算机接口技术及应用课程设计指导书(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2022年中国红枣市场评估及市场行情动态报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: