智能寻迹小车的设计报告

时间:2024.4.21

                         智能寻迹小车的设计

                   Intelligent Tracing Car Design

 摘要

在智能寻迹小车控制系统的设计中,以AT89C51为核心,用L298N驱动两个减速电机,当产生信号驱动小车前进时,是通过寻迹模块里的红外对管是否寻到黑线产生的电平信号通过LM393再返回到单片机,单片机根据程序设计的要求做出相应的判断送给电机驱动模块,让小车来实现前进、左转、右转、停车等基本功能。

   寻白线时,外部环境光线的强弱对小车的运动会产生很大的影响,基于此原因,本实验中的寻迹是指在白色地板上寻黑线。

   寻迹是指通过红外发射管和接收管识别路径。

   本实验的重点有三个方面:1.硬件的设计实现;2.软件的设计实现;3.方案的比较与论证。

   报告共分为五章:

   第一章是智能小车总体概况。介绍了小车的功能及展示了小车模型。

   第二章是系统要求。介绍了小车设计的要求及寻迹的原理。详细阐述了各模块的方案比较与论证,最后得出最终方案。

   第三章是硬件实现及单元电路实现。详细阐述了各部分电路的设计,并给出了原理图。

   第四章是软件设计。介绍了设计思想、程序流程图及具体程序设计。

   第五章是系统调试。介绍了调试软件WAVE ,以及软件调试过程;硬件测试及测试仪器和设备等。

   最后是参考文献和附录。

关键词:  直流电机  红外对管  L298N   识别路径  智能寻迹小车   

                   ABSTRACT

In the intelligent tracing car control system design, USES AT89C51 as the core, with L298N driven gear motor, when two signal driven forward by car tracing module, the infrared on whether to produce level signals through the black LM393 single-chip microcontroller, return again according to the requirement of design procedure of judgment for motor driver module, let the car to achieve progress, left, right, the basic function such as parking.

Find the white line, and the external environment of the strength of the light of sports car produce very big effect, this based on the experiments of tracing refers to the white striped floor found.

Tracing is through infrared tubes and receive tube recognition path.

The key of this experiment has three aspects:1. The design of hardware, 2 .the software design and implementation, Compared with the three schemes.

Report is divided into five chapters:

The first chapter is intelligent car overview. Introduces the function and the car show car model.

Chapter 2 is the system requirements. Introduces the design requirement and car tracing principle. Each module in detail the plan is demonstrated, and finally reached a final design.

The third chapter is hardware realization and unit circuit implementation. Expounds each part of the circuit design, and gives the principle diagram.

Chapter four is a software design. Introduces the design idea and program flow chart and design program.

The fifth chapter is debugging systems. Introduces the WAVE, and software testing software debugging process, Hardware testing and testing instruments and equipment, etc.

The references and appendix.

Keywords: dc motor    Infrared to tube     L298N   recognition on the path of infrared       intelligent tracing car

 

          

目   录

摘要                                                                1

Abstract                                                            2

目录                                                                3

第一章  智能小车总体概况                                            5

1.1 概况  5

1.2总体结构图  5

第二章  系统设计                                                    6

    2.1 设计要求                                                    6

    2.2 小车寻迹的原理                                              6

2.3模块方案比较与论证                                          7

第三章  硬件实现及单元电路设计                                     11

3.1 AT89C51主控芯片介绍  11

3.2 硬件设计  13

       3.2.1 红外对管电路的设计                                     13

       3.2.2寻迹红外对管的安装                                     15

3.2.3电机驱动电路的设计                                     15 

第四章  软件设计                                                   17 

4.1软件设计思想  17

4.3寻迹模块软件程序设计  17

第五章  系统调试  20

5.1硬件调试                                                    20

5.2调试软件WAVE介绍  21

    5.3软件程序调试                                                22

参考文献                                                           24

第一章  智能小车总体概况

  1.1概况

   智能小车以AT89C51为核心,经焊接相关芯片用电路板自制而成,通过I/O口检测信号,输出信号到L298N,从而驱动两个减速电机控制其前进 停止 左转 右转。检测信号则为三组红外发射和接收管,一组黑线时输出高电平,白线时输出低电平。另两组黑线时输出低电平,白线时输出高电平。

  1.2 总体结构图

                 

第二章 系统设计

2.1设计要求

(1)自动寻迹小车从安全区域启动。

(2)小车按指定路线运行,自动区分直线轨道和弯路轨道,在指定弯路处拐弯,实现灵活前进、转弯、倒退等功能,在轨道上划出设定的地图。

  (3)小车运行后,入库。

寻迹路线如图1所示:

              

 

2.2 小车寻迹的原理                                              

这里的循迹是指小车在白色地板上寻黑线行走,通常采取的方法是红外探测法。  红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。红外探测器探测距离有限,一般最大不应超过3cm。

2.3 模块方案比较与论证   

根据设计要求,本系统主要由控制器模块、寻迹传感器模块、直流电机及其驱动模块、电压比较模块等模块构成。

为较好的实现各模块的功能,我分别设计了几种方案并分别进行了论证。

2.3.1车体设计

方案1:购买玩具电动车。购买的玩具电动车具有组装完整的车架车轮、电机及其驱动电路。但是一般的说来,玩具电动车具有如下缺点:首先,这种玩具电动车由于装配紧凑,使得各种所需传感器的安装十分不方便。其次,这种电动车一般都是前轮转向后轮驱动,不能适应该题目的方格地图,不能方便迅速的实现原地保持坐标转90度甚至180度的弯角。再次,玩具电动车的电机多为玩具直流电机,力矩小,空载转速快,负载性能差,不易调速。而且这种电动车一般都价格不菲。因此我们放弃了此方案。

方案2:自己制作电动车。经过反复考虑论证,我们制定了左右两轮分别驱动,后方向轮转向的方案。即左右轮分别用两个转速和力矩基本完全相同的直流电机进行驱动,车体尾部装一个方向轮。这样,当两个直流电机转向相反同时转速相同时就可以实现电动车的原地旋转,由此可以轻松的实现小车坐标不变的90度和180度的转弯。

在安装时保证两个驱动电机同轴。当小车前进时,左右两驱动轮与方向轮形成了三点结构。这种结构使得小车在前进时比较平稳,可以避免出现后轮过低而使左右两驱动轮驱动力不够的情况。为了防止小车重心的偏移,后方向轮起支撑作用。

对于车架材料的选择,鉴于方便性,我选择了电路板。综上考虑,我选择了方案2。

2.3.2 控制器模块

方案1:采用可编程逻辑期间CPLD 作为控制器。CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑我放弃了此方案。

方案2:采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。处理速度高,尤其适用于语音处理和识别等领域。但是当凌阳单片机应用语音处理和辨识时,由于其占用的CPU资源较多而使得凌阳单片机同时处理其它任务的速度和能力降低。

本系统主要是进行寻迹运行的检测以及电机的控制。如果单纯的使用凌阳单片机,在语音播报的同时小车的控制容易出现不稳定的情况。从系统的稳定性和编程的简洁性考虑,我放弃了单纯使用凌阳单片机而考虑其它的方案。

方案3:采用Atmel公司的AT89C51单片机作为主控制器。AT89C51是一个低功耗,高性能的8位单片机,32个IO口, 2个16位可编程定时计数器。

从方便使用的角度考虑,我选择了方案3。

2.3.3 寻迹方案的设计

这里的寻迹是指小车在白色地板上,寻着黑线行走,通常采取的方法是以下三种方案。

方案1:用光敏电阻组成光敏探测器。光敏电阻的阻值可以跟随周围环境光线的变化而变化。当光线照射到白线上面时,光线发射强烈,光线照射到黑线上面时,光线发射较弱。因此光敏电阻在白线和黑线上方时,阻值会发生明显的变化。将阻值的变化值经过比较器就可以输出高低电平。

但是这种方案受光照影响很大,不能够稳定的工作。因此我考虑其他更加稳定的方案。

方案2:用红外发射管和接收管自己制作光电对管寻迹传感器。红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射管发出的光线则检测出黑线继而输出高电平。外部环境对其有一定影响。

方案3:用RPR220型光电对管。RPR220是一种一体化反射型光电探测器,其发射器是一个砷化镓红外发光二极管,而接收器是一个高灵敏度,硅平面光电三极管。

RPR220采用DIP4封装,其具有如下特点:

a. 塑料透镜可以提高灵敏度。

b. 内置可见光过滤器能减小离散光的影响。

c. 体积小,结构紧凑。

d. 当发光二极管发出的光反射回来时,三极管导通输出低电平。此光电对管调理电路简单,工作性能稳定。

虽然第三种方案最好,但由于不容易买到,所以我选择了第二种方案。

2.3.4 电机方案设计

本系统为智能电动车,对于电动车来说,其驱动轮的驱动电机的选择就显得十分重要。由于本实验要实现对路径的准确定位和精确测量,我们综合考虑了一下两种方案。

方案1:采用步进电机作为该系统的驱动电机。由于其转过的角度可以精确的定位,可以实现小车前进路程和位置的精确定位。虽然采用步进电机有诸多优点,步进电机的输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统。经综合比较考虑,我们放弃了此方案。

方案2:采用直流减速电机。直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力。

我选择了此方案2。

2.3.5 电机驱动模块

方案1:采用专用芯片L298N作为电机驱动芯片。L298N是一个具有高电压大电流的全桥驱动芯片,它相应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。用该芯片作为电机驱动,操作方便,稳定性好,性能优良。

方案2:对于直流电机用分立元件构成驱动电路。由分立元件构成电机驱动电路,结构简单,价格低廉,在实际应用中应用广泛。但是这种电路工作性能不够稳定。

因此我们选用了方案1。

2.3.6 最终方案

经过反复论证,我最终确定了如下方案:

(1)车体用电路板手工制作。

(2)采用AT89C51单片机作为主控制器。

(3)用HON红外对管进行寻迹。

(5)L298N作为直流电机的驱动芯片。

系统的结构框图如图3所示:

 

        

             第三章 硬件实现及单元电路设计

3.1 AT89C51主控芯片介绍

  AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1. 主要特性

·与MCS-51 兼容
·4K字节可编程闪烁存储器
·寿命:1000写/擦循环
·数据保留时间:10年
·全静态工作:0Hz-24Hz
·三级程序存储器锁定
·128*8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路

2管脚说明:

  VCC:供电电压。
  GND:接地。
  P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
    P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
    P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
    P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚 备选功能
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 /INT0(外部中断0)
P3.3 /INT1(外部中断1)
P3.4 T0(记时器0外部输入)
P3.5 T1(记时器1外部输入)
P3.6 /WR(外部数据存储器写选通)
P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。 

3.振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
 4芯片擦除:
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

3.2 硬件设计
  3.2.1 红外对管电路的设计

我设计并论证了两种红外对管检测及调理电路,电路原理图分别如4和图5所示:

图4  红外对管检测电路1

图10所示电路中,R1起限流电阻的作用,当有光反射回来时,红外对管中的三极管导通,R2的上端变为高电平,此时VT1饱和导通,三极管集电极输出低电平。

当没有光反射回来时,红外对管中的三极管不导通,VT1截至,其集电极输出高电平。

VT1在该电路中起到滤波整形的作用。

经试验和示波器验证,该电路工作性能一般,输出还有杂散干扰波的成分。如果输出加施密特触发器就可以实现良好的输出波形。

但是这种电路用电量比较大,给此种传感器调理电路供电的电池压降较快。究其原因,是因为光敏三极管和三极管VT1导通时的导通电流较大。

因此我考虑用比较器的方案。

图5 红外对管检测电路2

在图3中,可调电阻R3可以调节比较器的门限电压,经示波器观察,输出波形相当规则,可以直接够单片机查询使用。

而且经试验验证给此电路供电的电池的压降较小。因此我选择此电路作为传感器检测与调理电路。

3.2.2 寻迹红外对管的安装

考虑到设计要求,本次设计仅用2对光电传感器就能完成设计要求,后面1对传感器用来校正小车的寻迹路线,保证小车运行的直线性。两侧的传感器用来检测小车过线,可以实现小车的转弯。

3.2.3电机驱动电路的设计

我采用电机驱动芯片L298N作为电机驱动,驱动电路的设计如图7所示:

图7  L298电机驱动电路

L298N的5、7、10、12四个引脚接到单片机上,通过对单片机的编程就可以实现两个直流电机的正反转等功能。

        

第四章 软件设计

4.1 软件设计思想

根据总体设计的思想及本系统实现的功能,在软件设计中完成以下功能。

1.寻迹模块主程序:由是否遇到黑线产生信号的操作,信号返回到单片机,再通过单片机来实现相应的功能。

2.电机驱动模块主程序:主要用来控制两个直流减速电机,实现前进、后退、前左转、前右转、后左转、后右转、停车等功能。

4.2 寻迹模块软件程序设计

   ORG    0000H

   LJMP  MAIN

   ORG   0003H

   LJMP  LEFT

   ORG 0013H

   LJMP  RIGHT

MAIN:

   MOV    SP,#60H

   MOV    P3,#0FFH

   LCALL DELAY5S

   MOV    IE,#85H

LOOP: JB     P1.4,ZX

      JB     P1.5,YX

QIANJIN:ANL P1,#0F0H

      ORL    P1,#0AH

       LCALL   DELAY1

       ANL     P1,#0F0H

       ORL     P1,#00H

       LCALL   DELAY1

      AJMP   LOOP

ZX:   JB      P1.5,QIANJIN

      ANL     P1,#0F0H

      ORL     P1,#09H

      LCALL   DELAY1

     ANL     P1,#0F0H

     LCALL   DELAY1

     AJMP    LOOP

YX:  JB      P1.4,QIANJIN

     ANL     P1,#0F0H

     ORL     P1,#06H

    LCALL   DELAY1

    ANL     P1,#0F0H

    LCALL   DELAY1

    AJMP    LOOP

LEFT: PUSH  ACC

      PUSH   PSW

      ANL P1,#0F0H

      ORL P1,#08H

      LCALL   DELAY1

     JNB    P3.2,$

     ANL P1,#0F0H

     ORL P1,#0AH

     POP PSW

     POP ACC

     RETI

RIGHT: PUSH  ACC

PUSH   PSW

     ANL P1,#0F0H

     ORL P1,#02H

      LCALL   DELAY1

     JNB P3.3,$

     ANL P1,#0F0H

     ORL P1,#0AH

     POP PSW

     POP ACC

     RETI

DELAY5S:        MOV     R1,#28

LP3:            MOV     R2,#0F0H

LP4:            MOV     R3,#0F0H

                DJNZ    R3,$

                DJNZ    R2,LP4

                DJNZ    R1,LP3

                RET

DELAY1:         MOV   R4,#14

OP1:          MOV   R5,#0F9H

OP:        NOP

           NOP

           DJNZ  R5,OP

          DJNZ  R4,OP1

          RET

           END

第五章      系统调试

5.1 硬件调试

  硬件调试是用基本测试仪器(万用表、示波器等)和自己编写的测试程序进行相关的测试,来检查系统硬件中存在的问题。

 1. 测试仪器及设备

                    表1  测试仪器设备清单

2. 红外对管信号产生的调试

图5-1 红外对管信号产生的原理图

如果红外对管遇到黑线,OUT输出为高电平。否则为低电平。两组光电开关传感器输出的信号,经过比较器LM393后再输出送给单片机。 电阻R4为上拉电阻,滑动变阻器R3是用来调节参考电压的,要想输出正常,只要调滑动变阻器即可。符合系统设计要求,最终电路原理图如5-1所示。

5.2调试软件WAVE介绍

在调试过程,使用基于WINDOWS95/98/XP操作平台VC风格软件WAVE。WAVE软件是集编辑、编译、连接、加载、调试等为一体的集成开发环境。可能在同一界面环境中完成所有任务。使用方便、易懂并且节省调试间时。

1.主界面

WAVE软件是集编辑、编译/连接、加载、调试等为一体的集成开发环境用可以在同一界面环境中完成所有任务。

(1)编辑窗口

WAVE提供一个多窗口的源文件编辑器。该编辑器不受文件大小的限制,允许无限的撤销/重复功能。编辑器全面支持汇编、C51和PL/M51语言的语法加亮着色。用户可以自定义各种类型文本的颜色和不同语言的关键词。相应的关键词文件名为ASM.KWD、C51.KWD。这些文件都保存在WAVE安装目录下。编辑器还支持拷贝、剪切、粘贴,全程查找等功能。

( 2 )工作区窗口

工作区窗口有两个页面窗口。工程页面窗口以树型结构显示工程中的项目文件等内容。没有打开工程时,该页面窗口为空。左面为资源管理器页面窗口

( 3 )输出窗口

输出窗口显示用户编译连接过程中的输出信息,用户双击某条编译出错信息提示即可直接定位到源文件的对应行。

a.观察窗口

观察窗口中显示调试过程中长期观察的变量项。用户可以添加、删除、修改、刷新观察项。相应命令在右键菜单中。

b.数据窗口

数据窗口中成批显示实验机相应存储区域的整块数据内容。用户可以察看,修改相应地址单元的数据。相应命令在右键菜单中。

c.对话窗口

用户通过对话窗口可直接用监控命令和实验机对话。

2.菜单介绍

( 1 )文件(F)和文件有关的操作,如打开、关闭、打印等文件操作。

( 2 )编辑(E)包括拷贝、剪切、粘贴、书签、查找和替换等编辑命令。

( 3 )搜索(S)可以为用户查找。

( 4 )项目(P)和工程有关的操作,如编译、加入模块、加入包含文件等工程操作。

( 5 )执行(R)包括调试等编译操作。

( 6 )窗口(W)包括等显示一些窗口等信息命令。

( 7 )外设(L)包括端口、定时器/计数器、串行口等的设置。

( 8 )仿真器(O)包括仿真器、设置编辑器等命令。

( 9 )帮助(H)显示相应帮助文件和软件版本信息。

5.3 软件程序调试

1.调试的主要方法和技巧

在使用WAVE软件时,调试的方法和技巧最为重要,不同的情况采用不同的调试方法,有助于程序的实现。在设计过程中显示运行结果一般用全速调试,调试时主要使用了跟踪调试、断点调试。

( 1 )跟踪调试

跟踪应用程序用户能够在运行应用程序时,看到PC指针在应用源代码程序中的确切位置,WAVE提供了跟踪型单步和通过型单步。

跟踪型单步仅执行一条源语句程序,有利于观察变量。但是,如果调用函数,则进入函数中,在执行函数的第一条源泉语句行前停止。有利于用在延时子程序中。

通过跟踪型单步仅执行一条源语句程序,然后又停止。

( 2 )断点调试

如果已知程序中某块代码实际运行正常的情况下,仍用跟踪调试,将大大浪费时间,而且很枯燥,因此调试中第二个重要工具是在源代码中预定处设置断点,大多数调试程序通过使用断点中止程序执行。如果用断点调试,由比较容易观察出程序变量的改变及程序运行的结果。

( 3 )查看变量

 WAVE软件提供了以下几种方法以变量进行查看:观察窗口、数据窗口(程序空间窗口、内部数据窗口、外部数据窗口。)通过添加窗口菜单可以将用户希望观察的变量添加到观察窗口及数据窗口观察。在设计过程中常用观察窗口观察程序中的变量,修改程序中的错误。

( 4 )更改数值

如果用户在调试过程中了解到变量的内容(超值、未定义等)会对程序性能产生影响或引起异常时,立即更改变量的内容是很有交往的方法以确保该值在正确范围内不会产生错误。WAVE软件提供一系列更改变量数值的方法,以便用户能检查程序对整个变量值范围的反应,而无需为设置每个值而重新加载调试。在更改对话框中用户输入要更改的取值,点击确定按钮。用户可以在输入框中输入十六进制或十进制数据。 

2.利用WAVE调试本系统

首先打开变量观察窗口并添加要观察的变量,然后用跟踪型单步的方式对各个子程序逐条指令执行,观察变量的变化,查看是否达到子程序的功能要求。对子程序调试完成后,用跟踪型单步从START开始逐条执行指令,当遇到WAVE指令调用子程序时使用通过型跟踪的方式跳过子程序,通过这种方式对主程序进行调试。当对主程序进行调试时,如果遇到某段程序存在问题不法继续执行时,可用断点调试的方法,在已知的程序中能够正常运行的代码处设置断点,这样可以大大节省时间。

测试经验总结:

1.在调试程序之前,先检查各模块间的连接是否连接无误,有无断路现象。

2.调试程序时,首先用全速运行的方法进行总体调试,以便快速发现程序中存在问题的部分。然后设置断点调试。主要针对有问题的程序调试,更快地确定出现问题的位置。最后,利用单步调试方法,分析程序中出现的问题,解决问题,使程序正常运行。

3.在多次调试不成功的基础上,考虑思路是否正确,如果确定思路无误,考虑两个问题:一是程序中是否有笔误的地方;二是运行软件是否正常。

                   

参考资料

1.    传感器和信号调节

2.    单片机基础

3.    www.csdn.com

 

更多相关推荐:
智能小车设计报告

机器人控制技术实验设计报告书题目基于STC89C52的智能小车的设计姓名李如发学号073321032专业电气工程及其自动化指导老师李东京设计时间20xx年6月目录1引言111设计意义112系统功能要求113本组...

循迹智能小车的设计报告

20xx年全国大学生电子设计大赛报告智能小车设计摘要智能车辆是目前世界车辆研究领域的热点和汽车工业新的增长点未来的车辆也一定是智能化的车辆所以智能化的车辆是未来人们生活重要的载体因此有必要对智能车辆进行研究研制...

电子设计大赛智能小车设计报告

简易智能电动车设计报告简易智能电动车设计报告小组成员日期1简易智能电动车设计报告摘要本设计以STC89C52单片机为控制核心经光敏电阻和红外对射完成循迹寻光以及躲避障碍物测距的检测停车控制时间等经比较器LM39...

简易智能小车设计报告

20xx年全国大学生电子设计竞赛设计报告E简易智能电动车作者吴作智赵青董全超山东大学控制科学与工程学院邮编250061赛前辅导老师姚福安万鹏摘要本设计以89C51为核心采用双CPU分别进行电动车的前轮转向控制和...

智能小车设计报告

智能小车设计报告组员指导老师专业应用电子技术班级班学院智能小车设计报告1摘要本设计以AT89C52单片机小系统作为控制与检测的核心用L298N为主控芯片组成的驱动模块作为直流电机驱动用主控芯片为ST188组成的...

智能小车设计报告

天津理工大学第二届电子设计大赛智能小车竞赛设计报告10航海二班潘学院海运学院班级队员李ampamp刘1摘要智能作为现代的新发明是以后的发展方向他可以按照预先设定的模式在一个环境里自动的运作不需要人为的管理可应用...

智能循迹小车设计报告

电子作品设计报告项目名称智能小车学院机电工程学院专业应用电子技术班级组别第三组姓名杨磊赖焕宁梁广生指导老师杨青勇玉宁1目录摘要3关键词3引言3一系统设计311设计要求412车体方案认证与选择4二硬件设计及说明5...

电动智能小车毕业设计报告(完整论文)

摘要80C51单片机是一款八位单片机他的易用性和多功能性受到了广大使用者的好评这里介绍的是如何用80C51单片机来实现长春工业大学的毕业设计该设计是结合科研项目而确定的设计类课题本系统以设计题目的要求为目的采用...

智能小车设计报告

湖南涉外经济学院课程设计报告课程名称专业综合课程设计报告题目智能小车设计学生姓名所在学院信息科学与工程学院专业班级学生学号指导教师廖亦凡2015年7月1日课程设计任务书摘要STC89C52单片机是一款八位单片机...

20xx全国电子设计大赛报告终极版(智能小车)

20xx年全国大学生电子设计竞赛智能小车C题本科组20xx年9月3日智能小车摘要本文以两个STC89C52单片机为核心设计了两辆智能小车单片机产生周期性脉冲信号控制全桥驱动芯片L298N驱动直流电机实现小车的转...

智能循迹小车 设计报告

智能循迹小车设计专业自动化班级0804班姓名指导老师20xx年8月20xx年10月摘要本课题是基于AT89C52单片机的智能小车的设计与实现小车完成的主要功能是能够自主识别黑色引导线并根据黑线走向实现快速稳定的...

基于单片机C语言的循迹小车设计报告-科技文化节作品

循迹小车设计报告机械与电子工程学院应用电子技术循迹小车题目循迹小车学院名称机械与电子工程学院班级09应电1班报告性质设计报告学生姓名邱锐新潘广茂联系电话137xxxxxxxx69523820xx0525循迹小车...

智能小车设计报告(24篇)