求一个用555定时器产生锯齿波9kHz、占空比为20%的方形脉冲的信号发生器。

555定时器构成的占空比可调的方波发生器_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
555定时器构成的占空比可调的方波发生器
&&555方波发生器
阅读已结束,下载本文需要
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
还剩11页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢555定时器构成的占空比可调的方波发生器
实验报告_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
555定时器构成的占空比可调的方波发生器
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
还剩9页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢拒绝访问 | www.renrendoc.com | 百度云加速
请打开cookies.
此网站 (www.renrendoc.com) 的管理员禁止了您的访问。原因是您的访问包含了非浏览器特征(402f5cda31334cea-ua98).
重新安装浏览器,或使用别的浏览器赞助商链接
当前位置: >>
智能寻迹电动小汽车
无锡职业技术学院 毕业设计封面无锡职业技术学院系别(分院 ,部) 电子与信息技术学院 号
成 绩______班级电子工艺 20631 姓名沃进 学 课题名称智能寻迹电动小汽车 毕业实践任务书份 1答辨表___________份 共___25___ 页 共___7__ 页 共____20__ 页 共10毕业设计说明书(论文)1 份 外文翻译 1 份另附图(表)20 个 其它材料 2 份页_2009____年 ____4__月__13____日1 无锡职业技术学院 毕业设计封面无锡职业技术学院系别(分院) 班 姓 学 级 名 号 电子与信息技术学院 电子工艺 20631 沃
智能寻迹电动小汽车_ 进_课 题 名 称指导教师_ 罗惠敏 职称_副教授__ 指导老师 丁 明 职称 工程师2009 年 4 月 13 日2 无锡职业技术学院 毕业设目录毕业设计说明书目录毕业实践任务书------------------------------- ---------------------------------5外文翻译-----------------------------------------------------------------------6毕业实践调研报告--------------------------------------------------------------19毕业设计说明书--------------------------------------------------------------- 22 1.绪论---------------------------------------------------------------22 1.1 概述-------------------------------------------------------------22 1.2 设计方案的提出---------------------------------------------------------22 1.3 设计的依据-------------------------------------------------------------23 2. 系统各模块的设计方案-----------------------------------------------------23 2.1 单片机芯片的选择---------------------------- ---------------------------24 2.1.1 AT89C52 与 AT89C51 的区别------------------------------------25 2.1.2 AT89C52 的选择------------------------------------------------------25 2.2 直流电机驱动模块-------------------------------------------------------25 2.3 黑色标志线检测模块-----------------------------------------------------25 2.4 速度测量检测电路的选择-------------------------------------------------26 2.5 电源模块--------------------------------------------------------------26 2.6 键盘及显示电路---------------------------------------------------------26 2.7 模块设计方案-----------------------------------------------------------26 3. 系统硬件设备的设计与实现------------------------------------------------27 3.1 直流电机驱动模块的电路设计与实现--------------------------------------27 3.1.1 PWM 的工作方式--------------------------------------------------------27 3.1.2 PWM 驱动模块的电路设计与实现------------------------------------------28 3.2 黑色标志线检测模块的电路设计与实现----------------------------------30 3.3 速度检测模块的电路设计与实现-------------------------------------------31 3.4 电源模块--------------------------------------------------------323 无锡职业技术学院 毕业设目录 3.5 键盘及显示电路---------------------------------------- ----------------32 4. 系统的软件设计--------------------------------------------------------33 4.1
的路面检测程序流程图------------------------------------34 4.1.1 89C2051 的简介--------------------------------------------------------34 4.1.2 89C2051 的路面检测程序-----------------------------------------------35 4.2 89C52 的主控程序 8962 的中断和定时器资源配制--------------------------354.3 黑线计数(中断服务程序 0)流程图------------------------------------------35 4.4 车速检测(中断服务程序 1) 流程图----------------------------------------36 4.5 定时器服务程序流程图---------------------------------------------------36 4.6 限速子程序流程图-------------------------------------------------------37 4.7 过线返回流程图------------------------------------------------------38 4.8 显示和播报程序------------------------------------------------------38 4.9 主结构流程图----------------------------------------------------------38 4.10 系统内存资源的分配-----------------------------------------------39 4.11 初始化程序设计--------------------------------------------------------42毕业实践总结----------------------------------------------------------------- 43参考文献--------------------------------------------------------------------- 45附录-------------------------------------------------------------- -----------471.1(智能寻迹电动小汽车源程序)---------------------------------- - ---------471.2 单片机控制小车自动运行设计硬件图) ( --------------------------------------554 无锡职业技术学院 毕业实践任务书无锡职业技术学院 毕业实践任务书课题名称 指导教师 指导教师 罗 惠 敏 丁 明 智 能 寻 迹 电 动 小 副 教 授 工 程 师 电子工艺 3131 汽 车职 称 职 称 班 级 学 号专业名称 电子工艺与管理 学生姓名 沃 进课题需要完成的任务: 课题需要完成的任务:1.根据技术指标进行可行性方案分析及方案论述 2.硬件的框图及电路设计 3.软件的框图及软件编程设计 4.传感器、显示器件、各主要器件、单元电路等的选用方案,性能分析及功能介绍。 5.硬件电路的电路图 6.软件的程序清单 7.毕业设计小结课题计划: 课题计划:3.7~3.14 3.15~3.18 3.19~4.10 4.11~4.20 查资料,进行初步方案设计。 设计最佳方案;学习使用专用软件编程。 设计电路,编制程序,实际调试,写毕业论文。 修改、完善毕业论文,并做答辩准备。计划答辩时间: 计划答辩时间:4.13~4.19电子信息技术学院( 电子信息技术学院(部、分院) 分院) 2009 年 02 月 15 日5 无锡职业技术学院 毕业设计外文翻译外文翻译英文版 monolithic integrated circuit composition Monolithic confidential automatically completes the computation, which should it have most important part? We take operate an abacus as the example computation together arithmetic topic. Example: 36 + 163??156 - 166??34. Now must carry on the operation, first needs an abacus, next is the paper and the pen. We the question which must calculate record, then first step calculates first 163??156, with the result which 36 adds together records it on the paper, then the computation 166??34, then subtracts it from the previous result, obtains the final result. Now, we use the monolithic integrated circuit to complete the above process, obviously, it first must have replaces the abacus to carry on the operation the part, this is &the logic unit&; Next, must have can play to the paper and the pen role component, namely can remember the primitive topic, the primary data and the intermediate result, but also must remember causes the monolithic function automatically to carry on each kind of order which the operation but establishes. This kind of component is called &the memory&. In addition, but also needs to have can replace the controller which the human affects, it can act according to the order which beforehand assigns to send out each kind of control signal, enables the entire computation process one to carry on step by step. But the light has these three parts to be also insufficient, the primitive data and the order needs to input, the computation result must output, all needs according to in turn to carry on successively, sometimes also must wait for. Like on in example, when when computation 163??156, the numeral 36 cannot at the same time enter the logic unit. Therefore needs to establish on the monolithic integrated circuit according to the controller order carries on the movement &the gate&, when the logic unit needs, lets the recent data enter. Or, when the logic unit obtains the final output, again this result output, but the intermediate result cannot be casual &slips away& the monolithic integrated circuit. This kind to inputs, the output data carries on the certain management &the gate& the electric circuit to be called &the mouth& in the monolithic integrated circuit (Port). In the monolithic integrated circuit, basically has three kind of information in to flow, a kind is a data, namely each kind of primary data (for example on in example 36, 163 and so on), intermediate result (for example 166??34 obtained business 4, complement of a number 30 and so on), procedure (order set) and so on. This must pass &the mouth& by the external instrumentation to enter the monolithic integrated circuit, again deposits in the memory, in the operation treating processes, the data carries on the operation from the memory read-in logic unit, the operation intermediate result must store in the memory, or finally passes through &the access& by the logic unit to output. The user wants each kind of order which the monolithic integrated circuit carries out (procedure) also by the data form by the memory to send in the controller,6 无锡职业技术学院 毕业设计外文翻译 (decoding) becomes each kind of control signal after controller ????, in order to carries out like adds, reduces, while, eliminates and so on function each kind of order. Therefore, this kind of information is called the control command, namely controls the logic unit by the controller one to carry on the operation and processing step by step, also controls the memory to read (takes out data) and writes (log data) and so on. The third kind of information is the address information, its function is tells the logic unit and the controller takes the order fetching in where according to, finally will deposit to any place, through which mouth input and output information and so on. The memory divides into the read-only memory and the read-write memory two kinds, former depositing debugs the fixed routine and the constant, latter deposits some to have the data as necessary which the possibility changes. As the name suggests, the read-only memory once stores the data, only can read out, cannot change (EPROM, E2PROM of the same kind ROM may change, read in data - editor through certain method to pour). But the read-write memory may store or the readout as necessary. In fact, the people often are called the logic unit and the controller merge central processing element - CPU. The monolithic integrated circuit besides carries on the operation, but also must complete the control function. Therefore cannot leave counts with fixed time. Therefore, has the timer concurrently counter in the monolithic integrated circuit on the establishment, its basic structure with this serializes (2) center to give an example to be similar. To here up to, we had already known the monolithic integrated circuit basic composition, namely the monolithic integrated circuit was by the central processor (namely in the CPU logic unit and controller), the read-only memory (usual expression is ROM), the read-write memory (called stochastic memory usual expression is RAM), the input/The outlet (also divides into the parallel mouth and the serial mouth, the expression is I/O) and so on composition. In fact inside the monolithic integrated circuit also has a clock electric circuit, causes the monolithic integrated circuit when carries on the operation and the control, all can have the rhythm to carry on. Moreover, but also has &the interruption system& so-called, this system has &the reception room& function, when when the monolithic integrated circuit controlled member parameter arrives the condition which some needs to perform to intervene, may pass through this &the reception room& the notification to give CPU, causes CPU to act according to exterior situation the things have their order of priority to adopt suitably deals with the measure. Now, we already had known the monolithic integrated circuit composition, how -odd under question was connects theirs each part the interdependence the whole? In fact, the monolithic integrated circuit interior has to connect them &the link&, namely so-called &internal main line&. This main line has like the big city &the yang or male principle&, but CPU, ROM, RAM, I/O, the interruption system and so on distributes in this &the main line& both sides, and connect with it. Thus, all instructions, the data all may pass through the internal main line transmission, has like in the big city each kind of goods transmission all to carry on after the yang or male principle. Second section monolithic integrated circuit command system and assembly7 无锡职业技术学院 毕业设计外文翻译 language procedure Front already narrated the monolithic integrated circuit several main constituent, these parts constituted the monolithic integrated circuit hardware. The so-called hardware (Hardware), is looks obtains, traces entity which obtains. But, the light has such hardware, but also only had the realization computation and the control function possibility. Monolithic confidential can carry on the computation and the control truly, but also must have the software (Software) coordination. The software mainly refers is each kind of procedure. Only then &?à??& each kind of correct procedure (stores) the monolithic integrated circuit, it can effectively work. The monolithic integrated circuit therefore can automatically carry on the operation and the control, is precisely because the human calculates the realization the step which and controls one step by step with the order form, namely a strip instruction (Instruction) stores in advance to the memory in, the monolithic integrated circuit under the CPU control, takes out instruction strip place, and performs to translate and the execution. On adds together this simple operation by two numbers to say, after needs to operate the number has stored the memory, but also needs to carry on following several step: First step: (Location) center takes out the first number from its storage unit, delivers to the logic unit. Second step: In the storage unit which is at from it takes out the second integer, delive Third step: A Fourth step: Result which adds together, delivers unit which assigns to the memory in. All these fetching, delivers the number, adds together, the balance and so on all is one kind of operation (Operation), we request each kind which the computer carries out to hold the function order the form to write down, this is an instruction. How but can distinguish and carry out these operations? This is by designs the personnel in the design monolithic machine-hour to entrust with its command system to decide. An instruction, is corresponding one kind of ele The monolithic integrated circuit can carry out the complete instruction, is this monolithic integrated circuit command system (Iustruction Set), the different type monolithic integrated circuit, its command system is also different. Uses the monolithic machine-hour, beforehand must the question which must solve form a series of instructions. These instructions must be the designation monolithic function recognition and the execution instruction. The monolithic integrated circuit user for solves the instruction procedure which own question arranges, is called the source program (Source Program). The instruction usually divides into the operation code (Opcode) and the operand (Operand) two major parts. The operation code expressed the computer carries out any operation, namely
The operand expressed the participation operation number 'or' operation number is at the address (namely operand deposits place serial number). Because the monolithic integrated circuit is one kind of programmable component, &recognizes& the binary code (0, 1). Wants the monolithic integrated circuit operation, in monolithic integrated circuit system all instructions, all must express by the binary code form. For example, in Intel in Corporation's MCS - 51 series monolithic integrated circuits, takes out a number from the memory to the CPU in accumulator (in logic unit,8 无锡职业技术学院 毕业设计外文翻译 participation operation, depositing operation result special-purpose register) the instruction-code is 74H, the accumulator content adds the number code is 24H immediately, in addition immediately the number code, the accumulator delivers the number to the internal RAM memory code is F6H ~ F7H and so on. These instructions are express the binary machine code with the hexadecimal system. The MCS - 51 monolithic integrated circuits word lengths are 8, sometimes, had to complete certain holds affects a byte still not to be able fully to express. Therefore, has the single byte instruction in the command system, also has the multibytes instruction. The machine code is by a succession of 0 and 1 is composed, does not have the obvious characteristic, not the good memory, is not easy to understand, is easy to make a mistake. Therefore, straight takes over the use of it to compile the procedure to be extremely difficult. Thus, the people use some to help record the symbol (Mue monic) - usually are instruction function English condense replace the operation code, like MCS - 51 center numbers transmission commonly used MOV (the Move abbreviation), the addition with Add (the Addition abbreviation) took helps records the symbol. Thus, each instruction has the obvious movement characteristic, easy memory and understanding, also is not easy to make a mistake. With helps records the procedure which the symbol compiles to be called the assembly language procedure. But, helps records the symbol compilation the procedure to be advantageous for the human to understand, but the monolithic integrated circuit only knows the binary system machine code actually, therefore, in order to let the monolithic function &read& the assembly language procedure to have again to transform by the binary machine code constitution procedure, this kind of switching process, is called &the assembly&. The assembly may draw support in manual Zha Biaofa realizes, also may so-called draw support from PC machine to complete through &the cross assembler&. Once &entered& the monolithic integrated circuit by the machine code constitution user program, again &the start& the monolithic integrated circuit, might let it carry out the task which the input routine stipulated. Third section MCU--51 CPU and memory Monolithic integrated circuit 8,051 CPU is composed by the logic unit and the controller. First, logic unit The logic unit by completes binary the arithmetic/Logic operation part ALU is a core, in addition temporary storage device TMP, accumulator ACC, register B, program state symbol register PSW and Boolean processor. Accumulator ACC is eight registers, it is in CPU works the most frequent register. When carries on the arithmetic, the logic operation, accumulator ACC often temporarily stores before the operation an operand (for example addend), after but operates preserves its result (for example algebra and). Register B mainly uses in the multiplication and the division operation. Symbolized register PSW also is eight registers, uses for to deposit the operation result some characteristics, whether there is like carries, borrows and so on. Its each position concrete meaning as follows shows. PSW CY AC FO RS1 RS0 OV - P says to the user, what is nicest is following four. 1 ??benzene ??position sign CY (PSW ????7). It expressed operates whether has9 无锡职业技术学院 毕业设计外文翻译 carries (or borrows). If the operating result has in the highest order carries (addition) or borrows (subtraction), then this is 1, otherwise is 0. 2 ??prepares ¨? ??carries symbolizes AC. Also called partly carries the symbol, it had reflected two eight-digit numbers operate low four whether has partly carries, namely low four add together (either reduces) whether or not carries (or borrows), like has then AC is 1 condition, otherwise is 0. 3 ??coins red soft hail afterglow of the setting sun chronic illness ??OV. Whether the MCS - 51 reflections belts sign digit operation result does have the overflow, when has the overflow, this is 1, otherwise is 0. 4 ??compels ?? anxious afterglow of the setting sun ??P. Reflects the accumulator ACC content the odevity, if in the ACC operation result has even number 1 (for example B, including 4 1), then P is 0, otherwise, P=1. PSW other, again introduced in later. Because in PSW depositing procedure execution condition, therefore is called the program status word?In the logic unit also has (bit) to carry on the logic operation according to the position the logical processor (to call Boolean processor). Its function when introduction position instruction again explained. Second, controller The controller is the CPU nerve center, it including timed control logic circuit, instruction register, decoder, address indicator DPTR and program counter PC, storehouse indicator SP and so on. Here program counter PC is a counter which constitutes by 16 registers. Wants the monolithic integrated circuit to carry out a procedure, must load in advance this procedure according to the order memory ROM some region. When monolithic integrated circuit movement should take out the instruction according to a smooth strip to perform to carry out. Therefore, must have an electric circuit to be able to discover the unit address which the instruction is at, this electric circuit is program counter PC. When the monolithic integrated circuit starts the executive routine, loads the first instruction locus site to PC, it takes out an instruction every time (for example for multi- bytes instruction, then takes out an instruction byte every time), the PC content on automatic Canada 1, by the directional next instruction address, enables the instruction the smooth execution. Only then when the procedure meets the branch instruction, the subroutine call instruction, or meets when the severance (behind will introduce), PC only then will change to the place which will need to go. 8,051 CPU ??PC assigns the address, takes out the instruction byte from the ROM corresponding unit to place in the instruction register to check, then, in the instruction register instruction-code translates into by the decoder each kind of form the control signal, these signals and the monolithic integrated circuit clock oscillator produces the clock pulse in fixed time unifies with the control circuit in, forms according to the certain time metre change level and the clock, namely so-called control information, in CPU interior coordination operation and so on between register data transmission, operation. Third, memory The memory was a monolithic integrated circuit important constituent, chart 610 无锡职业技术学院 毕业设计外文翻译 has produced one kind of storage capacity is 256 units memory structure schematic drawings. Each memory cell corresponds an address, 256 units altogether have 256 addresses, 16 enters the system number with two to indicate, namely memory address (00H ~ FFH). In the memory each memory cell may store eight binary messages, passes commonly used two 16 to enter the system number to indicate, this is the memory content. The memory memory cell address and the memory cell content is the different two concepts, cannot confuse. 1st, program memory The procedure is control computer movement a series of orders, the monolithic integrated circuit only knew constitutes the machine instruction by &0& and &1& the code. Like forecited with helps records the symbol compilation order MOV A, # 20H, changes into code 74H, 20H which the machine knew: (Wrote binary system is B and B). After monolithic integrated circuit processing question will have beforehand to compose the procedure, the form, the constant will collect the forming machine code to store the monolithic integrated circuit in the memory, this memory will be called the program memory. The program memory may place internal or outside the piece, also may outside the internal piece also establish. Because the PC program counter is 16, causes the program memory to be possible to use 16 binary addresses, therefore, inside and outside memory address may most greatly from 0000H to FFFFH. 8,051 interior have 4k byte ROM, has taken by a 0000H ~ 0FFFH lowest 4k byte, by now outside the piece expanded the program memory address serial number should start by 1000H, if 8,051 treated as 8,031 uses, did not want to use internal 4kROM, all with piece external memory, then the address serial number still might start by 0000H. But, should cause 8051 by now {31} the foot (namely the EA foot) maintained the low level. When EA is the high level, the user uses internal ROM in 0000H to the 0FFFH scope in, after is bigger than 0FFFH, monolithic integrated circuit CPU automatically visits exterior program memory. data-carrier storage The monolithic integrated circuit data-carrier storage is composed by read-write memory RAM. Its maximum capacity may expand to 64k, uses in saving the real-time input the data. 8,051 interior have 256 units internal data-carrier storages, 00H ~ 7FH is internal stochastic memory RAM, 80H ~ FFH is the special-purpose register area. When actual use should first fully use the internal memory, says from the use angle, clarifies internal data-carrier storage the structure and the allocation is extremely important. Because future in study command system and time programming can pass through Chang Yongdao they. 8,051 interior data-carrier storage address altogether has 256 bytes by 00H to FFH the address spaces, this space is divided into two parts, internal data RAM address is 00H ~ 7FH (namely 0 ~ 127). But with makes the special function register the address is 80H ~ FFH. In this 256 bytes, but also opens some so-called &the bit address& the area, in this region not only may according to the byte addressing, but also may according to &the position (bit)& the addressing. Carries on the position operation regarding these need the data, may deposit to this region. Has arranged four groups of working registers from 00H to 1FH, each group takes 8 RAM byte, records is R0 ~ R7. Actually selects that group of registers, selects11 无锡职业技术学院 毕业设计外文翻译 by forecited symbol register in RS1 and RS0. Puts in the different binary number on these two, then selects the different register group, like attached list 1 shows. 3rd, special function register Special function register (SFR) the address range is 80H ~ FFH. In MCS - in 51, besides program counter PC and four working register area, other 21 special functions register all in this SFR block. 5 are the pair of byte registers, they have altogether taken 26 bytes. Each special function register mark and address ????±í 2. Belt * number may the position addressing. The special function register had reflected 8,051 conditions, are in fact 8,051 conditions characters and the control word register. Uses in CPU PSW then is a model example. These special function registers divide into two kinds on the whole, a kind with chip pin related, another kind makes the internal function the control to use. With the chip pin related special function register is P0 ~ P3, they are in fact 4 eight latches (each I/O), each latch attached has the corresponding output driver and the input buffer constituted a parallel mouth. MCS - 51 altogether has P0 ~ P3 four such parallel mouths, may provide 32 I/The O line, each line all is bidirectional, and has the second function mostly. Other use in the chip control register, accumulator A, symbol register PSW, data indicator DPTR and so on in front of the function mentioned, but another some registers functions related partial do again in behind further introduced.12 无锡职业技术学院 毕业设计中文版 中文版单片机的组成单片机要自动完成计算,它应该具有哪些最重要的部分呢? 我们以打算盘为例计算一道算术题。例:36+163×156-166÷34。现在要进行运算,首 先需要一把算盘,其次是纸和笔。我们把要计算的问题记录下来,然后第一步先算 163×156, 把它与 36 相加的结果记在纸上,然后计算 166÷34,再把它从上一次结果中减去,就得到最 后的结果。 现在,我们用单片机来完成上述过程,显然,它首先要有代替算盘进行运算的部件,这 就是“运算器”;其次,要有能起到纸和笔作用的器件,即能记忆原始题目、原始数据和中 间结果,还要记住使单片机能自动进行运算而编制的各种命令。这类器件就称为“存贮器”。 此外,还需要有能代替人作用的控制器,它能根据事先给定的命令发出各种控制信号,使整 个计算过程能一步步地进行。但是光有这三部分还不够,原始的数据与命令要输入,计算的 结果要输出,都需要按先后顺序进行,有时还需等待。 如上例中,当在计算 163×156 时,数字 36 就不能同时进入运算器。因此就需要在单片 机上设置按控制器的命令进行动作的“门”,当运算器需要时,就让新数据进入。或者,当 运算器得到最后结果时,再将此结果输出,而中间结果不能随便“溜出”单片机。这种对输 入、输出数据进行一定管理的“门”电路在单片机中称为“口”(Port)。在单片机中,基 本上有三类信息在流动,一类是数据,即各种原始数据(如上例中的 36、163 等)、中间结 果(如 166÷34 所得的商 4、余数 30 等)、程序(命令的集合)等。这样要由外部设备通过 “口”进入单片机,再存放在存贮器中,在运算处理过程中,数据从存贮器读入运算器进行 运算,运算的中间结果要存入存贮器中,或最后由运算器经“出入口”输出。 用户要单片机执行的各种命令(程序)也以数据的形式由存贮器送入控制器,由控制器 解读(译码)后变为各种控制信号,以便执行如加、减、乘、除等功能的各种命令。所以, 这一类信息就称为控制命令,即由控制器去控制运算器一步步地进行运算和处理,又控制存 贮器的读(取出数据)和写(存入数据)等。第三类信息是地址信息,其作用是告诉运算器 和控制器在何处去取命令取数据,将结果存放到什么地方,通过哪个口输入和输出信息等。 存贮器又分为只读存贮器和读写存贮器两种,前者存放调试好的固定程序和常数,后者 存放一些随时有可能变动的数据。顾名思义,只读存贮器一旦将数据存入,就只能读出,不 能更改(EPROM、E2PROM 等类型的 ROM 可通过一定的方法来更改、写入数据――编者注)。 而读写存贮器可随时存入或读出数据。 实际上,人们往往把运算器和控制器合并称为中央处理单元――CPU。单片机除了进行运 算外,还要完成控制功能。所以离不开计数和定时。因此,在单片机中就设置有定时器兼计 数器,其基本结构与本连载之(二)中的举例类似。到这里为止,我们已经知道了单片机的 基本组成,即单片机是由中央处理器(即 CPU 中的运算器和控制器)、只读存贮器(通常表 示为 ROM)、读写存贮器(又称随机存贮器通常表示为 RAM)、输入/输出口(又分为并行口 和串行口,表示为 I/O 口)等等组成。实际上单片机里面还有一个时钟电路,使单片机在进 行运算和控制时,都能有节奏地进行。另外,还有所谓的“中断系统”,这个系统有“传达 室”的作用, 当单片机控制对象的参数到达某个需要加以干预的状态时, 就可经此“传达室” 通报给 CPU,使 CPU 根据外部事态的轻重缓急来采取适当的应付措施。 现在,我们已经知道了单片机的组成,余下的问题是如何将它们的各部分连接成相互关 联的整体呢?实际上,单片机内部有一条将它们连接起来的“纽带”,即所谓的“内部总 线”。 此总线有如大城市的“干道”, CPU、 而 ROM、 RAM、 I/O 口、 中断系统等就分布在此“总 线”的两旁,并和它连通。从而,一切指令、数据都可经内部总线传送,有如大城市内各种 物品的传送都经过干道进行。13 无锡职业技术学院 毕业设计中文版 单片机指令系统与汇编语言程序 前面已经讲述了单片机的几个主要组成部分,这些部分构成了单片机的硬件。所谓硬件 (Hardware),就是看得到,摸得到的实体。但是,光有这样的硬件,还只是有了实现计算 和控制功能的可能性。单片机要真正地能进行计算和控制,还必须有软件(Software)的配 合。软件主要指的是各种程序。只有将各种正确的程序“灌入”(存入)单片机,它才能有 效地工作。单片机所以能自动地进行运算和控制,正是由于人把实现计算和控制的步骤一步 步地用命令的形式,即一条条指令(Instruction)预先存入到存贮器中,单片机在 CPU 的控 制下,将指令一条条地取出来,并加以翻译和执行。就以两个数相加这一简单的运算来说, 当需要运算的数已存入存贮器后,还需要进行以下几步: 第一步:把第一个数从它的存贮单元(Location)中取出来,送至运算器。 第二步: 把第二个数从它所在的存贮单元中取出来,送至运算器; 第三步:相加; 第四步:把相加 完的结果,送至存贮器中指定的单元。 所有这些取数、送数、相加、存数等等都是一种操作(Operation),我们把要求计算 机执行的各种操作用命令的形式写下来, 这就是指令。 但是怎样才能辨别和执行这些操作呢? 这是在设计单片机时由设计人员赋予它的指令系统所决定的。一条指令,对应着一种基本操 作;单片机所能执行的全部指令,就是该单片机的指令系统(Iustruction Set),不同种类 的单片机,其指令系统亦不同。 使用单片机时,事先应当把要解决的问题编成一系列指令。这些指令必须是选定的单片 机能识别和执行的指令。 单片机用户为解决自己的问题所编的指令程序, 称为源程序 (Source Program)。指令通常分为操作码(Opcode)和操作数(Operand)两大部分。操作码表示计 算机执行什么操作,即指令的功能;操作数表示参加操作的数或操作数所在的地址(即操作 数所存放的地方编号)。因为单片机是一种可编程器件,只“认得”二进码(0、1)。要单 片机运作,单片机系统中的所有指令,都必须以二进制编码的形式来表示。例如,在 Intel 公司的 MCS-51 系列单片机中,从存贮器中取出一数到 CPU 中的累加器(在运算器中,参与 运算、存放运算结果的专用寄存器)的指令代码为 74H,累加器内容加立即数的代码为 24H, 再加上立即数代码,累加器送数到内部 RAM 存贮器的代码为 F6H~F7H 等。这些指令是用十六 进制表示二进制的机器码。 MCS-51 单片机的字长为 8 位,有时,要完成某些操作用一个字节尚不能充分表达。所 以,在指令系统中有单字节指令,也有多字节指令。机器码是由一连串的 0 和 1 组成,没有 明显的特征,不好记忆,不易理解,易出错。所以,直接用它来编写程序十分困难。因而, 人们就用一些助记符(Mue monic)――通常是指令功能的英文缩写来代替操作码,如 MCS- 51 中数的传送常用 MOV(Move 的缩写)、加法用 Add(Addition 的缩写)来作为助记符。这 样,每条指令有明显的动作特征,易于记忆和理解,也不容易出错。用助记符来编写的程序 称为汇编语言程序。但是,助记符编写的程序便于人理解,可单片机却只认识二进制机器代 码,因此,为了让单片机能“读懂”汇编语言程序必须再转换成由二进制机器码构成的程序, 这种转换过程,就称为“汇编”。汇编可借助于人工查表法来实现,也可借助 PC 机通过所谓 “交叉汇编程序”来完成。由机器码构成的用户程序一旦“进入”了单片机,再“启动”单 片机,就可让它执行输入程序所规定的任务。 MCU--51 CPU 和存储器 单片机 8051 的 CPU 由运算器和控制器组成。 一.运算器 运算器以完成二进制的算术/逻辑运算部件 ALU 为核心,再加上暂存器 TMP、累加器 ACC、 寄存器 B、程序状态标志寄存器 PSW 及布尔处理器。累加器 ACC 是一个八位寄存器,它是 CPU 中工作最频繁的寄存器。在进行算术、逻辑运算时,累加器 ACC 往往在运算前暂存一个操作14 无锡职业技术学院 毕业设计中文版 数(如被加数),而运算后又保存其结果(如代数和)。寄存器 B 主要用于乘法和除法操作。 标志寄存器 PSW 也是一个八位寄存器,用来存放运算结果的一些特征,如有无进位、借位等。 其每位的具体含意如下所示。PSW CY AC FO RS1 RS0 OV - P 对用户来讲,最关心的是以下 四位。 11进位标志 CY(PSW17)。它表示了运算是否有进位(或借位)。如果操作结果在最 高位有进位(加法)或者借位(减法),则该位为 1,否则为 0。 21辅助进位标志 AC。 又称半进位标志, 它反映了两个八位数运算低四位是否有半进位, 即低四位相加(或减)有否进位(或借位),如有则 AC 为 1 状态,否则为 0。 31溢出标志位 OV。 MCS-51 反映带符号数的运算结果是否有溢出, 有溢出时, 此位为 1, 否则为 0。 41奇偶标志 P。反映累加器 ACC 内容的奇偶性,如果 ACC 中的运算结果有偶数个 1(如 B,其中有 4 个 1),则 P 为 0,否则,P=1。 PSW 的其它位,将在以后再介绍。由于 PSW 存放程序执行中的状态,故又叫程序状态字?运算 器中还有一个按位(bit)进行逻辑运算的逻辑处理机(又称布尔处理机)。其功能在介绍位 指令时再说明。 二、控制器 控制器是 CPU 的神经中枢,它包括定时控制逻辑电路、指令寄存器、译码器、地址指 针 DPTR 及程序计数器 PC、堆栈指针 SP 等。这里程序计数器 PC 是由 16 位寄存器构成的计数 器。要单片机执行一个程序,就必须把该程序按顺序预先装入存储器 ROM 的某个区域。单片 机动作时应按顺序一条条取出指令来加以执行。因此,必须有一个电路能找出指令所在的单 元地址,该电路就是程序计数器 PC。当单片机开始执行程序时,给 PC 装入第一条指令所在 地址,它每取出一条指令(如为多字节指令,则每取出一个指令字节),PC 的内容就自动加 1,以指向下一条指令的地址,使指令能顺序执行。只有当程序遇到转移指令、子程序调用指 令,或遇到中断时(后面将介绍),PC 才转到所需要的地方去。8051 CPU P C 指定的地址, 从 ROM 相应单元中取出指令字节放在指令寄存器中寄存,然后,指令寄存器中的指令代码被 译码器译成各种形式的控制信号,这些信号与单片机时钟振荡器产生的时钟脉冲在定时与控 制电路中相结合,形成按一定时间节拍变化的电平和时钟,即所谓控制信息,在 CPU 内部协 调寄存器之间的数据传输、运算等操作。 三、存储器 存储器是单片机的又一个重要组成部分,图 6 给出了一种存储容量为 256 个单元的存 储器结构示意图。其中每个存储单元对应一个地址,256 个单元共有 256 个地址,用两位 16 进制数表示,即存储器的地址(00H~FFH)。存储器中每个存储单元可存放一个八位二进制 信息,通常用两位 16 进制数来表示,这就是存储器的内容。存储器的存储单元地址和存储单 元的内容是不同的两个概念,不能混淆。 1、程序存储器 程序是控制计算机动作的一系列命令,单片机只认识由“0”和“1”代码构成的机器指 令。如前述用助记符编写的命令 MOV A,#20H,换成机器认识的代码 74H、20H:(写成二进 制就是 B 和 B)。在单片机处理问题之前必须事先将编好的程序、表格、 常数汇编成机器代码后存入单片机的存储器中,该存储器称为程序存储器。程序存储器可以 放在片内或片外,亦可片内片外同时设置。由于 PC 程序计数器为 16 位,使得程序存储器可 用 16 位二进制地址,因此,内外存储器的地址最大可从 0000H 到 FFFFH。8051 内部有 4k 字 节的 ROM,就占用了由 0000H~0FFFH 的最低 4k 个字节,这时片外扩充的程序存储器地址编 号应由 1000H 开始,如果将 8051 当做 8031 使用,不想利用片内 4kROM,全用片外存储器, 则地址编号仍可由 0000H 开始。不过,这时应使 8051 的第{31}脚(即 EA 脚)保持低电平。15 无锡职业技术学院 毕业设计中文版 当 EA 为高电平时,用户在 0000H 至 0FFFH 范围内使用内部 ROM,大于 0FFFH 后,单片机 CPU 自动访问外部程序存储器。 2、数据存储器 单片机的数据存储器由读写存储器 RAM 组成。 其最大容量可扩展到 64k, 用于存储实时 输入的数据。8051 内部有 256 个单元的内部数据存储器,其中 00H~7FH 为内部随机存储器 RAM,80H~FFH 为专用寄存器区。实际使用时应首先充分利用内部存储器,从使用角度讲, 搞清内部数据存储器的结构和地址分配是十分重要的。因为将来在学习指令系统和程序设计 时会经常用到它们。8051 内部数据存储器地址由 00H 至 FFH 共有 256 个字节的地址空间,该 空间被分为两部分,其中内部数据 RAM 的地址为 00H~7FH(即 0~127)。而用做特殊功能寄 存器的地址为 80H~FFH。在此 256 个字节中,还开辟有一个所谓“位地址”区,该区域内不 但可按字节寻址,还可按“位(bit)”寻址。对于那些需要进行位操作的数据,可以存放到 这个区域。从 00H 到 1FH 安排了四组工作寄存器,每组占用 8 个 RAM 字节,记为 R0~R7。究 竟选用那一组寄存器,由前述标志寄存器中的 RS1 和 RS0 来选用。在这两位上放入不同的二 进制数,即可选用不同的寄存器组,如附表 1 所示。 3、特殊功能寄存器 特殊功能寄存器(SFR)的地址范围为 80H~FFH。在 MCS-51 中,除程序计数器 PC 和四个工作寄存器区外,其余 21 个特殊功能寄存器都在这 SFR 块中。其中 5 个是双字节寄存 器,它们共占用了 26 个字节。各特殊功能寄存器的符号和地址见附表 2。其中带*号的可位 寻址。特殊功能寄存器反映了 8051 的状态,实际上是 8051 的状态字及控制字寄存器。用于 CPU PSW 便是典型一例。这些特殊功能寄存器大体上分为两类,一类与芯片的引脚有关,另 一类作片内功能的控制用。与芯片引脚有关的特殊功能寄存器是 P0~P3,它们实际上是 4 个 八位锁存器(每个 I/O 口一个),每个锁存器附加有相应的输出驱动器和输入缓冲器就构成 了一个并行口。MCS-51 共有 P0~P3 四个这样的并行口,可提供 32 根 I/O 线,每根线都是 双向的,并且大都有第二功能。其余用于芯片控制的寄存器中,累加器 A、标志寄存器 PSW、 数据指针 DPTR 等的功能前已提及,而另一些寄存器的功能在后面有关部分再作进一步介绍16 无锡职业技术学院 毕业设计调研报告毕业实践调研报告毕业设计中,以单片机控制小车自行运动来作为研究对象,对它进行硬件、软件方面的 设计,再进行各部分的功能分析和应用分析。 在该设计中,我们用到自动检测与传感器技术、单片机原理及应用、单片机接口技术、 模拟电子技术、数字电子技术方面的知识。把我们大学三年的学习专业知识基本上用上了。 自动检测与传感器技术。在人类的各项生产活动和科学实验中,为了了解和掌握整个过程的 进展及其最后结果,经常需要对各种基本参数或物理量进行检查和测量,从而获得必要的信 息,并以之作为分析判断和决策的依据。 检测技术和传感器是人们为了对被测对象所包含的信息进行定性的了解和定量的掌握所 采取 的一系列技术措施。随着人类社会进入信息时代,以信息的获取转换、显示和处理为主 要内容的检测技术已经发展成为一门完整的技术学科,在促进生产发展和科学进步的广阔领 域内发挥着重要作用。应用如下:检测技术是产品检验和质量控制的重要手段;检测技术在 大型设备安全经济运行监测中得到广泛应用;检测技术和装置是自动化系统中不可缺少的组 成部分;检测技术的完善和发展推动着现代科学技术的进步;另一方面看,现代化生产和科 学技术的发展也不断地对检测技术提出新的要求。它是由传感器、测量电路、显示记录装置 组成。我们这里用到的光电传感器是用发光二极管作为光源、光敏三极管作为基本电路的组 成。它具有光谱特性、伏安特性、光电特性、温度特性、频率特性,使用它更能传递信息。 它用到了单片机的编程知识和基本的硬件组成部分及功能。应用微型计算机能对生产过 程的各种参数进行检测,例如温度、压力、流量、液位、角度、长度、电流、频率、功率等, 当测量值超过一定范围时,可发出声、光等报警信号并将检测结果存储、显示、打印、绘制 成表格或曲线。微型计算机检测和处理数据的速度很快,它可以同时检测不同的参数。它的 硬件系统主要有 5 大器件组成,输入设备、存储器、运算器、控制器、输出设备。软件按其 功能分为应用软件和系统软件两大类。它主要是程序编程系统,它有 MCS―48 系列单片机、 MCS―51 系列单片机。 单片机可以检测和数据处理,还可以顺序控制系统、闭环控制系统。 MCS―96 系列系列单片机。 MCS―48 系列单片机是 8 位单片机初级产品,在国内应用最早。其主要性能如下:8 位 CPU 单一内部总线。片内有 RAM64B 或 128B,有的型号有 ROM。片内 ROM 可扩至 4KB,片外 RAM 可扩至 256B。27 根 I/O 线,含 3 个 8 位并行口和 3 根测试线。96 条指令,其中 70%为 单字节指令。 MCS―48 系列单片机包括下列型号: (1).35 三种型号的单片机主要区别是片内 程序存储器不同:8048 带片内 ROM1KB,8748 带片内 EPROM1KB,而 8035 则没有片内程 序存储器。其他性能都是相同的。 (2).39 是 35 的改进型,其唯一 改动之处是将片内 ROM 和 RAM 的容量各扩大一倍(即片内 ROM2KB,RAM128KB) ,其他 性能相同。 (3).22 是 MCS―48 系列的抵挡型单片机,只有 28 条引脚。它们的 指令是 8048 指令系统的一个子集,运行速度也比较慢。其中 8022 带一个 2 通道 8 位 A/D 转 换器。 MCS―51 系列单片机是高档 8 位单片机。与 MCS―48 系列相比,其性能全面提高,许 多功能全面提高,许多功能也超过了 8085CPU 和 Z80CPU,成为当前工业测控类应用系统的 优选单片机。与 MCS―48 系列相比,MCS―51 系列单片机的性能提高主要表现在:片内存 储器容量和外部存储器寻址范围增大;I/O 口线数增加;定时器/计数器的数量和位数增加; 中断功能加强;设备了一个全双工串行口,具有通信能力;指令系统增加了乘除等指令,并 加强了位操作功能。17 无锡职业技术学院 毕业设计调研报告 (1).31 三种型号的单片机常称为 8051 系列,它们之间的区别仅在于片内 程序存储器。8051 片内有 4KB 的 ROM,8751 片内有 4KB 的 EPROM,8031 片内无程序存 储器,其他结构性能相同。其中 8031 易于开发,价格低,应用广泛。 (2).32 是 31 的改进型,常称为 8052 子系列。其片内 ROM 和 RAM 比 8051 子系列各增加一倍,ROM 为 8KB,RAM 为 256B;另外增加了一个定时器/ 计数器和一个中断源。 (3).80C51/87C51/80C31 是 8051 子系列的 CHMOS 芯片,可称为 80C51 子系列。两者 功能兼容。CHMOS 型芯片的基本特点是集成度高和功能低。 MCS―96 系列是 16 位单片机,较之 MCS―51 系列单片机,其性能有很大的提高。16 位 CPU,主频 12MHZ,采用了新颖的寄存器堆/运算逻辑部件(RALU) 。 片内 ROM8KB,RAM232(寄存器堆) 条高速脉冲输入线,6 条高速脉冲输出线,同时有 。4 定时功能,多至 4 个 16 位的软件定时器能同时工作。有的芯片有 10 位 A/D 转换器。运算能 力和运算速度大大提高,在 12MHZ 输入频率下,可实现 16 位加法运算,16*16 位乘法和 32 位/16 位除法运算。可使用面向工业控制的高级语言,如 C 语言、PL/M 等。 它的显示电路简洁明了,单片单扳机常用的标准输入/输出设备是键盘与显示器,用户的 控制命令与原理数据通过键盘输入单片机,单片机的处理结果或输入信号往往通过显示器显 示出来。它是输出的最重要的手段。 RS232―485 是连接单片机与 PC 机之间的连接电路,它是接口电路,在电路中有着很重 要的作用。 RS-232、 RS-422 与 RS-485 都是串行数据接口标准, 最初都是由电子工业协会 (EIA) 制订并发布的。RS-232 在 1962 年发布,命名为 EIA-232-E,作为工业标准,以保证不同厂家 产品之间的兼容。其传送距离最大约为 15 米,最高速率为 20kb/s,并且 RS-232 是为点对点 (即只用一对收、发设备)通讯而设计的。所以,RS232 只适合于本地通讯使用。 RS-422 由 RS-232 发展而来,RS-422 是一种单机发送、多机接收的单向、平衡传输规范,被命名为 TIA/EIA-422-A 标准。为扩展应用范围,EIA 又于 1983 年在 RS-422 基础上制定了 RS-485 标 准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,增加了发送器的 驱动能力和冲突保护特性,扩展了总线共模范围,后命名为 TIA/EIA-485-A 标准。由于 EIA 提出的建议标准都是以 RS 作为前缀,所以在通讯工业领域,仍然习惯将上述标准以 RS 作前 缀称谓。RS-232、RS-422 与 RS-485 标准只对接口的电气特性做出规定,而不涉及接插件、 电缆或协议,在此基础上用户可以建立自己的高层通信协议。18 无锡职业技术学院 毕业设计说明书智能寻迹电动小汽车说明书摘要:本文介绍的是基于单片机 AT89C52 控制的小车自动运行控制系统的硬件和软件设计。用 摘要 AT89C52 单片机实现小汽车自动运行设计,采用 AT89C52 单片机为控制核心,利用光电检测器检测道路 上的标志,控制电动小车的正反向行驶,快慢速行驶,以及停车的位置,并可自动记录往返时间和行驶路 程。整个系统的电路结构简单,可靠性高。实验测试结果满足要求,本文着重介绍了该系统的软硬件设计 方法及测试结果分析。 关键词:AT89C51 AT89C52 单片机 光电检测器 调节控制 关键词1绪论1.1 概述 单片计算机是将电子计算机的基本环节,如:CPU(又称中央处理器,主要由运算器,控制器 组成),存储器,总线,输入输出接口等,采用集成电路技术集成在一片硅基片上.由于单片计算 机体积很小(仅手指般大小),功能强(具有一个简单计算机的功能),因而广泛用于电子设备中 作控制器之用.目前,大到导弹火箭国防尖端武器,小至电视机微波炉等现代家用电器,内中都 毫无例外地运用单片计算机作为控制器.因此,从控制的观点,我们也常称它为单片微控制器. 单片机工作离不开软件,即固化在存储器中的已设计好的程序.所有带单片的电子设备, 它的工作原理当然与具体设备有关.但它的最基本的原理是一样的,即: 1) 从输入接口接收来自外界的信息存入存储器. 这些信息主要包括二部分:来自诸如温度压力等传感器的信息; 来自人工干预的一些手动信息,如开关按钮等操作. 2) 单片机中的 CPU 根椐程序对输入的数椐进行高速运算 处理. 3) 将运算处理的结果通过输出接口送去控制执行机构,如继电器,电机,灯泡等. 当前这个过程不断重复着,即系统中的微电脑不断监视着各种信息,并及时作出不同的处理使 系统正常运行. 1.2 设计方案的提出 伴随着电子信息技术的飞速发展,单片机的应用越来越广泛,电子这个原本没有生命的 东西越来越具有智慧了,而单片机在这当中充当着“大脑”的作用,指挥这系统完成其工作。 单片机通过用汇编语言或者 C 语言编程,可以实现不同情况下的,不同电路的自动控制,用 它可以开发很多智能的玩具,如机器人、遥控飞机、智能车,实际生活中的很多电器,例如 电冰箱、全自动洗衣机、空调等,还有就是很多测量仪器以及高科技的空间探测,宇宙探索 等都用到单片机,可以说现在生活中大多数的智能物品都用到单片机,围绕单片机以及嵌入 式系统形成的电子产业将会是一个持续发展,愈来愈具有竞争力,愈来愈具有生命力的产业, 电子世界将会更具有魅力。本设计就是用单片机 89C52 为核心的环境下研制的小车自动导 航系统。 另一方面,本设计也与传感器的应用和自动导航有密切的关系,现今的世界,传感器的 应用无处不在,自动电梯,保安系统,路灯的控制等,天气中的温度、湿度等等。而自动导 航在实际中的应用也很广,包括航天事业中的自动导航,全球定位系统,视觉导航等,随着 传感器技术,计算机网络技术,图像处理技术的飞速发展,自动导航将进一步得到发展,而 智能机器人也将进一步发展,代替人在一些环境艰难的地方工作。 本设计使用 89C52 作为控制的芯片,设计成本低、微型化。LED 数码显示小车运动时间及 路程的小车自动控制系统,使小车能够识别前进路线,自动调节前进的方向。19 无锡职业技术学院 毕业设计说明书 1.3 设计的依据 在设计的过程中,本人翻阅了很多资料,主要是关于自动控制和传感技术方面,为本设 计的可行性提供了依据,主要得出以下的观点: 阐述了在汽车中汽车通过计算机直接把车速传感器检测到的车速脉冲进行数据处理,通 过速度和时间算出汽车前进的距离,陀螺传感器可以测出汽车中的微妙误差进行自动修正, 达到导航。由于电动小汽车纯硬件控制具有很多缺点,并且不宜实现复杂运动的自动控制功 能(不能用人工控制) 。而单片机具有体积小,重量轻,耗电少,功能强,控制灵活方便,价 格低廉等优点。本设计就是以单片机 89C52 为核心,附以外围电路,采用光电检测器进行检 测信号和障碍物;运用单片机的运算和处理能力来实现小车的自动加速、限速、减速、定时、 语音、前进、后退、左转、右转、显示行驶速度、行驶路程、行驶时间等智能控制系统。 2 系统各模块的设计方案根据题目要求,系统可以分为几个模块,本文介绍的是基于单片机 AT89C52 控制的自动 往返电动小汽车控制系统的硬件和软件设计。采用 AT89C52 单片机为控制核心,利用光电检 测器检测道路上的标志,控制电动小汽车的正反向行驶,快慢速行驶,以及停车的位置。采 用 Intel8253 型微型计算机接口电路产生脉冲宽度调制波,并使用 L298N 型桥式驱动器,实 现对直流电机的一种简单有效的 PWM 调速方法如图 1 所示。 对各模块的实现。分别有以下一些不同的设计方案:测黑线检LED 显示转速检测单片机电机驱动键盘控制图1 2.1 单片机芯片的选择 该小车实际上是一个自动控制系统,这样的系统用单片机来实现是比较合适的。鉴于 市场上常见的 51 系列 8 位单片机的售价比较低廉,我们的设计使用 AT89C52 作为 CPU,主 要负责系统的控制与协调工作。 2.1.1 AT89C52 与 AT89C51 的区别 1、RAM 空间增大:AT89C51 有 128 字节的内部 RAM,称之为 DATA 存储区。 AT89C52 的内部 RAM 扩展为 256 字节,其中高 128 字节,位于从 80H 开始的地址 空间中,称之为 IDATA 存储区,但 IDATA 区的访问只能是间接寻址方式。20 无锡职业技术学院 毕业设计说明书 2、内部 FLASH 变大:AT89C51 有 4K 字节的内部 FLASH PERAM,而。AT89C52 的 内部 FLASH PERAM 增加 1 倍,达到 8K。 3、中断源增加:在 AT89C52 中 P1.0 和 P1.1 还可分别作为定时器/计数器 2 的外部计数 输入(P1.0/T2)和(P1.1/T2EX),也就是说,P1.0 同时可作为定时器/计数器 T2 的外 部计数输入, 和输出占空比 50% 的时钟脉冲端口, P1.1 同时可作为定时器/计数器 T2 捕 获/重新装载触发和方向控制端口。故,AT89C52 除了具备 AT89C51 的定时器/计数器 T0 和定时器/计数器 T1,还额外增加了一个定时器/计数器 T2。而定时器/计数器 T2 的 控制和状态位单独位于 T2CON、T2MOD,定时器/计数器 T2 在 16 位捕获方式或自动 重新装载方式下的捕获/重载寄存器组是(TCAO2H、RCAP2L)。 2.1.2 AT89C52 的选用 首先,AT89C52 的 INTO 用来处理光电集成传感器送来的地面标志信号,该信号主要用 于控制小车的状态;另外它利用片内的定时器为车辆行驶计时,并为 MAX7219 驱动 LED 提 供时钟和数据;最后,小汽车轮胎上的霍尔传感器的输出信号直接送到 AT89C52 的 INT1, 这样,小汽车的实际形式距离便可以很方便的测量出来了。 同时由于安装和调试工作可以 并行进行,极大地缩短了总体设计和制造的时间,故选用 AT89C52,如图 2 所示。图2 2.2 直流电机驱动模块 直流电机的控制性能优越,特别适用于点位和速度控制。为了实现直流电机的正反转运 行,只需改变电机电源的极性。这种电压极性的变化和运行时间的长短由单片机实现,而提 供直流电机正常运行的电流则需要驱动电路实现。 采用由多个三极管组成的PWM电路,由单片机控制,使之工作在占空比可调的开关状 态,精准地调整电动机的转速。这个电路由于管子工作的饱和截止模式下,效率很高,电子 开关的速度很快,稳定性也很强。 2.3 速度测量检测电路的选择 测量电机转速的第一步就是要将电机的转速转化为单片机可以识别的脉冲信号,从而进 行脉冲记数。具体测量方法分为模拟式和数字式两种,模拟式采用测速发电机为检测元件, 得到信号的电压量,而数字式通常采用光电编码器,霍尔元件,得到的信号是脉冲信号。测 量车行程传感器 我们可以通过测量小汽车驱动轮转动的圈数来间接换算小汽车的形式距离。 在车轮上安装磁片,利用霍尔传感器感应磁片。采用了开关式霍尔传感器 CS1018,该传 感器体积小,使用时只需在车轮上安装一块小磁铁,是个比较理想的选择。工作原理及应用 将在本文的第三部分详细介绍。21 无锡职业技术学院 毕业设计说明书 这种安装相对简单,且测试精度能够达到设计标准,所以我们采用了开关式霍尔传感器, 该传感器体积小,使用时只需在车轮上安装一块小磁铁,是个比较理想的选择。 2.4 黑色标志线检测模块 探测橱柜黑色标志线的大致原理是:光线发射到白色橱柜并反射,由于黑色标志线和白 色橱柜的反射系数不同,可根据接收到的反射光判断是否到达了黑色的标志线 采用脉冲调制的反射式红外发射-接收器。考虑到环境光干扰主要是直流分量,如果采用 带有交流分量的调制信号,那么我们就可以大幅度的减少外界的干扰;另外,红外发射管的 最大工作电流取决与平均电流,如果占空比小的调制信号,在平均电流不变的情况下,瞬时 电流可以很大,这样也就大大的提高了信噪比。 2.5 电源模块 方案一:所有器件采用单一电源(6 节 M 电池)。这样供电比较简单;但是由于电动机启动 瞬间电流很大,而且 PWM 驱动的电动机电流波动较大,会造成电压不稳、有毛刺等干扰,严 重时可能造成单片机系统掉电,缺点十分明显。 方案二:双电源供电。将电动机驱动电源与单片机以及其周边电路电源完全隔离,利用 光电藕合器传输信号。这样做虽然不如单电源方便灵活,但可以将电动机驱动所造成的干扰 彻底消除,提高了系统稳定性。 我们认为本设计的稳定可靠性更为重要,故拟采用方案二。 2.6 键盘/显示电路 在键盘中按键较多时,为了减少 I/O 口的占用,通常将按键排列成矩形形式,也就是通 常采用的行列式键盘。我采用 4*4 行列式键盘,将总共 8 根行线也列线直接也单片机的通用 输入/输出口 PI 口相连。4*4 行列式键盘可以构成 16 个按键,比直接将端口线用与键盘多出 了一倍,而且线数越多,区别越明显。 显示电路采用采用共阴极数码管四个进行动态显示,轮流显示时间和路程,这有利于节 省 I/O 口。显示时间的精度为 1S,显示路程的精度为 0.01m。通过单片机利用不同的占空比 来控制车的速度,小车运行的情况是通过轴上的带孔的圆片和光电检测器把脉冲信号送给控 制部分。当小车检测到终点线时,停止运行 10S,显示运行路程。 2.7 模块设计方案 经过仔细的论证与比较,我们决定了系统各个主要模块的最终方案如下: 控制核心系统:使用 AT89C52 作为 CPU 电动机驱动与调速模块:采用达林顿管的 H 型 PWM 电动机驱动电路。 车轮检速模块:采用光电断续开关构成的光电感应系统。 路面黑线检测模块:采用调制的反射式发射-接收器。 电源:双电源供电(6 节 M 电池+1 节 9V 方型电池)。 显示电路:共阴极数码管四个动态显示 3 系统硬件部分的设计与实现 系统组成及原理框图如图 3 所示。以下分为硬件和软件两个方面进行具体分析。 3.1 电动机驱动模块的电路设计 采用由多个三极管组成的PWM电路,由单片机控制,使之工作在占空比可调的开关状 态,精准地调整电动机的转速。这个电路由于管子工作的饱和截止模式下,效率很高,电子 开关的速度很快,稳定性也很强。 3.1.1 PWM 的工作方式 所谓脉冲宽度调制(Pulse Width Modulation,PWM)是指将输出信号的基本周期(Base Cycle)固定,通过调整基本周期内工作周期(Working Cycle)的大小来控制输出功率22 无锡职业技术学院 毕业设计说明书 一、PWM 调速工作方式: (1)双极性工作制。双极性工作制是在一个脉冲周期内,单片机两控制口各输出一个控 制信号,两信号高低电平相反,两信号的高电平时差决定电动机的转向和转速。 (2)单极性工作制。单极性工作制是单片机控制口一端置低电平,另一端输出 PWM 信 号,两口的输出切换和对 PWM 的占空比调节决定电动机的转向和转速。由于单极性工作制 电压波开中的交流成分比双极性工作制的小,其电流的最大波动也比双极性工作制的小,所 以我们采用了单极性工作制。 二、PWM 调脉宽方式: 调脉宽的方式有三种:定频调宽、定宽调频和调宽调频。我们采用了定频调宽方式,因 为采用这种方式,电动机在运转时比较稳定;并且在采用单片机产生 PWM 脉冲的软件实现 调制脉冲 555 定时器同步信号 (中断)路面检测检测信号 整形电路89C2051方波信号 黑线检测信号(中断)整形电路方波 信号 信号 检测信号89C52时间距离显示LED 数码管速度方向控制速转检测PWM 电动机驱动 图3前进/后退指示上比较方便。 三、PWM 软件实现方式: (1)采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只 在几个 us。 (2)采用软件延时方式,这一方式在精度上不及方案一,特别是在引入中断后,将有一 定的误差。但是基于不占用定时器资源,且对于直流电机,采用软件延时所产生的定时误差 在允许范围,故采用第 2 种方式。 3.1.2 PWM 驱动模块的电路设计与实现 PWM 电路由四个大功率晶体管组成 H 型桥式电路构成,四部分晶体管以对角组合分为 两组:根据两个输入端的高低电平决定晶体管的导通和截止。4 个二极管在电路中起防止晶 体管产生反向电压的保护作用。4 个电感在电路中是起防止电动机两端的电流和晶体管上的 电流过大的保护作用。 在实验中的控制系统电压统一为 5v 电源,因此若达林顿管基极由控制系统直接控制,则 控制电压最高为 5V,再加上三极管本身压降,加到电动机两端的电压就只有 4V 左右,严重23 无锡职业技术学院 毕业设计说明书 减弱了电动机的驱动力。基于上述考虑,我们运用了 4N25 光耦集成块,将控制部分与电动 机的驱动部分隔离开来。输入端各通过一个三极管增大光耦的驱动电流;电动机驱动部分通 过外接 12V 电源驱动。这样不仅增加了各系统模块之间的隔离度,也使驱动电流得到了大大 的增强。 在电动机驱动信号方面,我们采用了占空比可调的周期矩形信号控制。脉冲频率对电动 机转速有影响,脉冲频率高连续性好,但带带负载能力差脉冲频率低则反之。经实验发现, 脉冲频率在 40Hz 以上,电动机转动平稳,但加负载后,速度下降明显,低速时甚至会停转; 脉冲频率在 10Hz 以下,电动机转动有明显跳动现象。实验证明,脉冲频率在 15Hz-30Hz 时 效果最佳。而具体采用的频率可根据个别电动机性能在此范围内调节。通过 N1 输入信号, N2 输入低电平与 N1 输入低电平, 输入信号分别实现电动机的正转与反转功能。 N2 通过对信 号占空比的调整来对车速进行调节。速度分 7 档控制,从高电平(第 6 档)到低电平(第 0 档)中间占空比以 20%逐极递减。速度微调方面,可以通过对占空比以 1%的跨度逐增或逐 减分别实现对速度的逐加或逐减。 即利用微处理器的数字输出来对模拟电路进行控制的一种技术 PWM,常取代 DAC 数模转 换用于功率输出控制,其中直流电机与交流电机速度控制是最常见的应用。 具体电路见图 4。本电路采用的是基于 PWM 原理的 H 型驱动电路。该电路采用 11P132 大 功率达林顿管,以保证电动机启动瞬间的 8A 电流要求。图4 当 Ug1 为高电平 ,Ug2 为低电平时,Q3、Q6 管导通,Q4、Q5 管截止,电动机正转。当 Ug1 为低电平,Ug2 为高电平时,Q3、Q6 管截止,Q4、 Q5 管导通,电动机反转。另外四个二极 管可以在 Ug1 由高变低时,通过 D2、D4 两个二极管形成电动机电圈感应电压的回路,起到 了保护电动机的作用。 在实验中的控制系统电压统一为 5V 电源,因此若达林顿管基极由控制系统直接控制,则 控制电压最高为 5V,再加上三极管本身的压降,加到电动机两端的电压就只有 4V 左右,减 弱了电动机的驱动力。基于上述考虑,我们运用了 4N25 光藕集成块,将控制部分与电动机的24 无锡职业技术学院 毕业设计说明书 驱动部分隔离开来,这样不仅增加了各系统模块之间的隔离度,也使驱动电流得到了大大的 增强。 光电耦合器 4N25 芯片内发光器由发光二极管构成, 受光器由光电三极管构成, 采用 DIP-6 封装,外引线 6 条。其中,1 脚是阳极,2 脚是阴极,3 脚是空脚,4 脚是发射极,5 脚是集 电极,6 脚是基极。由于光电耦合器在结构上,输入与输出端彼此隔离,应用时输入电路与 输出电路不共地,因此信号单向传输,输出对输入无影响,抗干扰能力强。 至于 Ug1 与 Ug2 这对控制电压,我们采用了 200Hz 的周期信号控制,通过对其占空比的 调整,对车速进行调节。最小脉宽为 0.2ms,速度共分 25 挡,可以满足车速调整的精度要求。 同时,可以通过 Ug1 与 Ug2 的切换来控制电动机的正转与反转。 3.2 黑色标志线检测模块的电路设计与实现 由于路面是白色的,在某些规定区域贴有黑色线条标志(1~5),根据颜色对光的吸收 和反射特性,光接收管在黑白区域的导通状态不相同。当小车起点出发后,安装在车底的前 部和中部安装的反射式光电检测器就会作出不同的反应;对线区的数据进行采集,把变化的 光信号转换为电信号,再经过处理,送入单片机中。 由 555 组成的脉冲发生器,如图 5 所示,其占空比可调,接入两只二极管 D1,D2 后, 电容 C1 的充放回路分开,放电回路为 D2、RB 内部三极管 T 以及电容 C1,放电时间 t1≈07RBC1 充电回路为 RA、D1、C1,充电时间: t2≈07 RAC1图5 1.43 输出脉冲的频率:F = (R +R )*C A B 1 通过电位器 R P 可以改变输出脉冲的占空比,但频率不变,假如使 RA = RB,则可以获得 对称方波。 为了检测路面上的黑色标志条,在小车的底部安装了 1 对红外发射-接收器,为了减少环 境光源的干扰,增加信噪比,采用脉冲的发射与接受电路。 发射、接收的具体电路见图 6 所示,发射部分采用 555 定时器产生 9KHZ、占空比为 1 : 5 的方形脉冲信号,通过三极管 Q1 的放大来驱动红外发射管,实 现检测信号的调制。占空比为 1 :5 的方形脉冲信号,通过三极管 Q1 的放大来驱动红外发射 管,实现检测信号的调制。25 无锡职业技术学院 毕业设计说明书图图 图6 接收部分的光敏二极管在不同的光照强度下,电阻值会大幅度改变,因此可以通过改变 R2 的大小,调整输出对路面的灵敏程度。本实验中,我们把电路的参数设置只对黑色敏感, 这样对可以更好的排除外界环境的干扰,输出的交流信号,经过隔直电容,整形后输出。图7 由于一般的解调方法(通过频率解码器) ,无法充分利用瞬时信噪比大的优势,而且无法 方便的调节接收敏感度;所以,我们使用单片机同步检测的方法,接收器产生的信号经过信 号识别整形电路向 89C52 分别指示两个探测信号。同时,发射电路的 555 定时器产生的调制 信号作为同步信号输入给 89C52 中断,当 89C52 接收到中断时,便去检测信号,等连续检测 到几个信号以后,再发送中断通知 89C52。 这样的优点在于,可以充分利用单片机编程,等连续检测的到多个信号后才认为是黑条,26 无锡职业技术学院 毕业设计说明书 避免将其他东西误判为黑色标志条的情况,提高了纠错的能力。 3.3 速度检测模块的电路设计与实现 在车轴上固定有一个沟槽状的断式红外光电开关,而在车轮侧壁则伸出一圈遮光板,圆 周上均匀分布 15 个输出方孔。车轮转动时,方孔依次通过沟槽, 光电开关便得到通断相间的高低电平信号。得到的信号经过整形,发送至单片机,以实现车 速检测和路程计算。具体电路如图 7。 在物理结构上,我们将该检测装置安装在前车轮上。因为后轮在刹车时容易打滑、反转, 故安装在前轮才能测得实际的车速和路程。 3.4 电源模块 由于该系统用电池供电,对电路功耗的要求比较严格。该电路中耗电量较大的是电 动机和 CPU。电动机的功耗是无法削减的;对于 CPU,比较可行的办法是使用 CMOS 型 CPU AT89C52 和,尽量降低时钟频率。另一方面,该系统为数字与模拟混合系统,要求 使用多档不同的电压供电,比较理想的办法是使用 DC-DC 变换起来产生系统所需要的各 种电压。但考虑到成本、体积、效率、噪声干扰等一系列随之而来的问题,系统并未采用 DC-DC 变换的方案,而是直接用干电池/蓄电池双电源供电。将电动机驱动电源与单片机 以及其周边电路电源完全隔离,利用光电藕合器传输信号。这样做虽然不如单电源方便灵 活,但可以将电动机驱动所造成的干扰彻底消除,提高了系统稳定性。 3.5 键盘及显示电路 本系统采用共阴极数码管四个进行动态显示,轮流显示时间和路程,这有利于节省 I/O 口。显示时间的精度为 1S,显示路程的精度为 0.01m。用 IOB8―IOB11 口作为位选控制, IOA8―IOA11 口传输要显示的数据,数据线和位选线直接接单片机的 I/O 口即可,因为 I/O 口输出电流很小不会对 LED 造成损坏,它的电压值却足以驱动 LED,这不像别的单片机还要 外接驱动电路和电阻,采用 89C52 单片机大大减化了设计过程和硬件电路,如图 8 所示。图8 为了减少外部锁存器和译码模块,数码管全部使用软件进行动态显示。在限速区内,数 码管显示 8s 倒计时;在行驶过程中,显示已驶路程;在终点停车时和返回起点后,交替显示往 返时间与距离。七段数码管的字形代码如图 9 所示:27 无锡职业技术学院 毕业设计说明书图9 4 系统的软件设计 单片机控制电路主要由一片 89C2051 和一片 89C52 组成。89C2051 主要实现对路面黑线 的软件检测与纠错;89C52 则作为整个控制部分的核心,负责车速检测、电动机驱动、数据显 示等功能。单片机具体电路如图 10 所示。电电 电输 2 电电 输 电电 电输 1 电电 输 路路 路路 路路 1 路路 路路 路路 2P1.7 P1.6 P1.5 INT0 P1.4 80C 21指指 指 路路 黑黑 黑黑 黑黑 车车 黑黑 车车 黑黑P1.2 P1.3 P1.4555定定 CLKP0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 P2.4 P2.0 P2.1 P2.2 P2.3INT0 INT1 P2.5 P2.6 89C 52 D2a b c d e f g dot2 dot1 1 2 3 4R1 1k R2 1k R3 1k R4 1k后后前D1前前前图 10 4.1 89C2051 的路面检测程序流程图28 无锡职业技术学院 毕业设计说明书图 11 4.1.1 89C2051 简介 89C2051 主要特点是采用 Flash 存储存储器技术, 降低了制造成本, 其软件、 硬件与 MCS-51 完全兼容。89C2051 片内含有 2K 字节的 Flash 程序存储器,128 字节的片内 RAM。允许工作 的时钟为 0―24MHz。89C2051 不允许构造外部总线来扩充程序/数据存储器,所以它不需要 ALE、PSEN、RA、WR 一类的引脚。89C2051 共有 20 个引脚,它只继承了 8031 最重要的引脚, 体积小巧。具体的引脚图如图 11 所示。 4.1.2 89C2051 的路面检测程序 程序流程图如图 12 所示。 该检测算法的主要特点是:只有连续检测到几个黑线信号之后, 才发中断信号通知 89C52 到达黑线。这样可以避免其他细小物体的干扰。同样,在到达黑线 之后,只有连续检测不到信号时,才取消中断,避免黑线上的杂物干扰开始连续检测到 N 个信号? Y 89C52 发中断N开中断N 连续 N 次 未检测信等待中断Y 取消向 89C52 发中断记录传感器 1.2 状态Y检测到信 号?N图 12 4.2 89C52 的主控程序 8962 的中断和定时器资源配置29 无锡职业技术学院 毕业设计说明书 资源配置如表所示。 资源名称 外部中断 1INT0(下降沿触发) 外部中断 2INT1(下降沿触发) 定时器 TIMERO(中断方式,5KHZ) 功能 黑线检测中断 车速检测中断 1.电动机 FWM 占空比调节 2.系统时钟 3.LED 数码动态扫描4.3 黑线计数(中断服务程序 0) 流程图: 由于车底前部和中部装有两个传感器,采用中断和查询结合的检测方法。89C2051 在对 黑线信号进行纠错处理后,向 89C52 的 INTO 发出中断请求信号,并通过 89C52 的 P1.4 指明 是哪一个传感器检测到黑线,在 8962 的中断服务程序中进一步查询中断源(见图 13)。进入查询 P1.4Linenum1 加 1Linenum2 加 1返回图 13 为了保证程序的实时性,中断服务程序尽量简洁,故在程序中设置 2 个全局计数变量 Linenum1 和 Linenum2,分别对应两个传感器检测到的黑线数,服务程序仅仅累加计数变量, 而到达黑线后的操作由主程序完成。 4.4 车速检测(中断服务程序 1) 流程图 如前文所述,当车轮转动时,安装在轮胎上的圆形遮光板上的方孔依次通过槽型断续式 光电开关,每通过一个方孔便产生一个脉冲。因此只需记录两个脉冲所间隔的时间,便能得 到实际车速(见图 14)。其中,时间差由定时器的时钟计算得到。 同时,由累计脉冲的总数便可得到行驶的路程。本作品中,车轮周长 18cm, 圆周上方孔 数为 15 个,故一个脉冲对应 1.2cm 路程,即路程测量精度为 1.2cm。 4.5 定时器服务程序流程图 为了提高效率,我们将多个需要定时的模块放在一个定时器服务程序中,其程序流程图 如图 15 所示。通过分频来实现各个不同功能。定时器频率为 5kHz。 电动机 PWM 脉宽调制信号的产生:脉宽调制信号的一个周期为 5000μs。一个最小脉宽的 时间为 200μs 间,则速度可分为
挡。 系统时钟的产生:只需设置一个全局变 量不断累加 ,便能提供一个系统时钟。30 无锡职业技术学院 毕业设计说明书进入计算与上次脉冲相隔的时间保存当前时间脉冲总数加 1返回图 14进入调节 PWM 信号占空比系统时钟加 1扫描 4 位数码管返回图 15 LED 数码管的动态扫描:为了使人眼感觉不到抖动,扫描频率应不低于 60Hz,服务程序中 将时钟经 16 分频后,得到 .5 Hz,则 4 位数码管的每一位平均扫描频率为 312.5/4=78Hz。 4.6 限速子程序流程图 在限速区中为了实现低速行驶的要求,最简单的方法是减小功率。但这种开环系统缺点 十分明显。 首先是对电池电量依赖性强, 电量充足时可能开得过快, 电量不足时则过慢;其次, 当小车碰到挡板时,由于阻力增加,车速也会与正常行驶差异极大,乃至停车。因此,限速 必须采用闭环系统,即通过车速检测的反馈,不断调整电动机的驱动力。如图 16 所示。31 无锡职业技术学院 毕业设计说明书进入检测当前车速增 大功 率亮 红灯减小功率不亮灯开足功率 亮绿灯返回图 16 为了直观地指示当前限速状态,在车尾设有两对红绿指示灯,通过指示灯的状态可清晰观 察该速度反馈系统的运行状态。 另外值得注意的是,判断当前车速是否低于设定值不能通过计算两次脉冲间隔来实现。 因为车速很慢时,等待下一个脉冲的时间将无限变长;一旦车子停驶,程序便永远不能判断当 前车速。故检测车速时设置了一个超时器,一旦超时还没有来脉冲,便认为车速变慢或停止。 4.7 过线返回流程图 题目要求在到达终点线及返回起点线时压线。当车速不快时,只需通过刹车便可解决; 但如果车速太快,刹车后仍超出终点线时,就应该倒退回终点线上。而且此时倒车必须为较 低的速度,保证一次刹车即可压线,否则可能产生来回往返的死循环。算法流程图如图 17 所 示。 4.8 显示和播报程序 时间和路程的显示采用动态显示,显示子程序流程图。如图 18 所示 4.9 主结构流程图 软件系统的主结构流程图如图 19。小车按复位键后,即启动,以最慢的速度向前行驶,当检 测到第一根黑线时,就会全速前进。为了保证小车停车位置正确,在检测到第五和第十一跟 黑线时就开始减速行驶。32 无锡职业技术学院 毕业设计说明书开始过终点/起点线 瞬时速度大于 设定值?NY 倒向调用限速子程序N回到终点/起点 线?Y 刹 车退 回图 17 4.10 系统内存资源的分配 20H―24H 单元:作为里程计数用(23H 为跑道条数存放单元) ,采用十进制计数,最大计 数值为 999m; 70H―73H 单元: 作为时间计数单元, 采用十进制 BCD 码计数, 最大记录时间为 59min59s; 70H―76H 单元:用于显示数据用,其中 74H―76H 单元内为里程显

我要回帖

更多关于 555定时器产生方波 的文章

 

随机推荐