外文翻译8051控制器简介_第1页
外文翻译8051控制器简介_第2页
外文翻译8051控制器简介_第3页
外文翻译8051控制器简介_第4页
外文翻译8051控制器简介_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

英文资料翻译(一)英语文献Ramtron introduces the Versa Mix 8051 family of highly integrated mixed-signal microcontrollers for the embedded data acquisition market。Ramtron also introduces Versa 8051 family of low-cost, drop-in replacement 8051 microcontrollers.Colorado Springs, USA 14th December 2005. Ramtron International Corporation (Nasdaq: RMTR), the leading supplier of non-volatile ferroelectric semiconductor products, has launched the Versa Mix 8051 family (VMX51C1xxx) of mixed-signal microcontrollers - single-chip solutions for a diverse range of signal conditioning, data acquisition, processing and control applications in the industrial, medical, consumer, instrumentation and Autom-otive markets. Ramtron is also introducing its Versa 8051 Family (VRS51x1xxx/5xx) of low-cost, industry standard, 8051-based drop-in MCUs with up to128KB ISP/IAP Flash, designed to simplify device migration.About the Versa Mix 8051 family:The Versa Mix (VMX51C1020/1016) is a highly integrated, high-performance family of mixed-signal 8051 microcontrollers with DSP capabilities, featuring a comprehensive set of on-chip peripherals for a complete data acquisition SoC. The VMX51C1xxx features a single-cycle 8051 processor that provides an average of eight times more processing power than standard 8051s for increased MIPS and efficiency. The device integrates an enhanced MULT/ACCU unit with 32-bit barrel shifter, 56KB of Flash and 1280 bytes of RAM. Peripherals include up to 28 general purpose I/Os, 3 timers/counters, an SPI, 2 UARTs, an IC and an RS-485/RS-422/J1708 compatible transceiver, which enables data transmission over long distances via a twisted pair cable. The VMX51C1xxx operates at 5 volts and is available in QFP-64 (VMX51C1020) and QFP-44 (VMX51C1016) packages.Aimed at control applications that require signal conditioning, the VMX51C1020 also incorporates an array of analog peripherals such as a programmable current source, two digital potentiometers, an analog switch and an uncommitted operational amplifier.The features of the Versa Mix 8051 include:A/D Converter This 5/7-channel, 12-bit A/D converter can operate at up to 10KHz in various modes: automatic, single channel, or sequential conversion.The features of the Versa Mix 8051 include:A/D Converter This 5/7-channel, 12-bit A/D converter can operate at up to 10KHz in various modes: automatic, single channel, or sequential conversion.Complex DSP operations - The enhanced hardware arithmetic unit performs 16-bit x 16-bit multiplication and 32-bit addition in one cycle. This enables major performance gain over typical 8051 devices when executing mathematical and DSP operations - an ideal feature for applications that require digital filtering or other recursive calculations.Serial Port Interface This fully-configurable master/slave interface can automatically address up to four slave devices and can be configured to handle 1 to +32-bit data transactions. UART with Baud Rate Generator UARTs operate at over 460kbps and each incorporate a 10-bit baud rate generator freeing up the timers/counters for other uses. UARTs can be connected to the integrated differential transceiver. Timers/CCU units The VMX51C1xxx includes three 16-bit timers and 4 compare and capture units (CCUs). The CCUs can be configured as PWM outputs with 8-bit or 16-bit resolution. The PWMs, when filtered, can be used as D/A converters. Three of the CCUs provide a capture input that can be used to trigger the Timer 2 Capture. Additionally, the device includes input pins and an interrupt on the Port1 Change. Power-saving features - Power saving features include a clock control unit, individual power controls for each peripheral and processor IDLE and STOP modesAbout the Versa 8051 family:Ramtron has also introduced the Versa 8051 family (VRS51x1xxx/5xxx) of low-cost, drop-in replacement 8051s that are ideal for a diversity of applications that require small to large amounts of program/data memory with nonvolatile data storage and/or code/field based firmware upgrade capability, coupled with streamlined/comprehensive peripheral support. Versa 8051s include up to 128KB Flash memory and 1KB RAM. Devices operate at either 3.3 or 5 volts and are available in 44-pin PLCC/QFP and also 40-pin DIP packages.Development & programming tools:Evaluation and prototype development of Versa Mix 8051 and Versa 8051 MCUs is facilitated through Ramtrons UVK (UniVersaKit) development kit, which ships complete with the Versa Ware programming interface software, C compiler and assembler.About Ramtron:Ramtron International Corporation, headquartered in Colorado Springs, Colorado, is a fabless semiconductor company that designs, develops and markets specialised semiconductor memory, microcontroller and integrated semiconductor solutions used in a wide range of product applications and markets worldwide. Additionally, Ramtron works with various leading-edge licensees and manufacturers to bring its technology to market. AN INTRODUCTION OF 8051An 8051 microcontroller, generally speaking, is any microcontroller that has an instruction set compatible with the MCS-51 standard. Intel made the original 8051 microcontroller back in 1980. Since then, dozens of semiconductor firms have chosen the MCS-51 standard for their lines of microcontrollers. When we speak of 8051 we are not just speaking of the Intel 8051, but also any other microcontroller that is compatible with the 8051 (its faster then writing 8052-compatible every time we make reference to it). A derivative microcontroller (or derivative chip) is a term used to refer to any of the hundreds of 8051-compatible microcontrollers produced by dozens of semiconductor firms such as Dallas Semiconductor, Philips, Atmel, etc. These lines of microcontrollers all use the 8051 core licensed from Intel. The core refers to the instruction set and Special Function Register structure/map. If you have a development toolset that is 8052-compatible, you should be able to use that same toolset with any derivative chip. Most 8051 developers use a PC with some version of Windows (although some use Unix). You will run your development tools on the PC to edit and compile your 8051 software. Once 8051 software has been compiled, will need to transmit your compiled program to the microcontroller. How you do this and what hardware you need depends on the derivative chip youre using and your actual circuit design. Traditionally, programs have been burned into an EPROM using an EPROM programmer. The EPROM is subsequently inserted into your circuit and the program is accessed by the microcontroller. EPROMs may be erased and re-used by clearing them with an EPROM Eraser (the EPROM is erased by exposing the EPROM to ultra-violet light for 5-10 minutes). An EPROM emulator is often used during the testing or development stages to allow the developer to quickly test code without having to constantly burn and erase EPROMs. However, many newer derivative chips include internal EEPROM or Flash memory. These derivatives often include a process of downloading your compiled 8051 program directly into the microcontroller via a serial port. In these cases, the EPROM programmer is unnecessary.In addition to the hardware , youll need an ASCII editor that allows you to create 8052 source code. You may use programs as simple as EDIT in DOS or NOTEPAD in Windows to advanced software development editors. Whats important is that the program save your code as PURE ASCII-this means no word processors such as Word or Works. Once youve created your source code, you need a program to compile or assemble this into an Intel HEX file. This software is called an assembler (if it handles assembly language) or a compiler if it handles anything else (C, Basic, Pascal, etc.). These assemblers and compilers will generally create anoutput file known as a HEX file. This is essentially the 8051 equivalent of an EXE file. This file is then either downloaded directly to the microcontroller (if your derivative has In-System Programming/Serial Port loading support) or is passed to yet another program which transfers the file to an EPROM using an EPROM programmer.All of these products were designed for PC development-that is to say, your final program is executed on your PC. In the case of 8051 development, your final program will be executed by an 8051 microcontroller. The 8051 is not compatible with any common PC development tools. Please refer to the Links page for a list of links to companies that offer 8051-compatible tools including assemblers, C, BASIC, and Pascal compilersProbably not too hard. C compilers exist for the 8051, so if you are familiar with C you shouldnt have too much trouble adapting to an 8051 C compiler. The differences are mostly in handling the special features of the 8051 and thats just a matter of reading to learn the idiosyncracies of the 8051。If all you know is Visual Basic, the 8051 may be a challenge for you. Most of what applies to VB-programming does not apply to 8051 programming. You cant use VB to program the 8051. You cant use VBX or ActiveX controls with the 8051. In fact, there are no textbox, label, listbox or any other kind of control. While you can purchase a BASIC compiler that is compatible with the 8051, you will find it quite primitive compared to VisualBasic. In fact, its even less powerful than Microsofts 80s-era QuickBasic.No C+ compiler exists for the 8051. You must use plain old C. C+ uses dynamic memory handling to create and destroy objects. This is generally handled by DOS or the Operating System. No such OS exists on the 8051. C+ is also usually more memory-hungry, and 8051s normally have less than 64k of program memory available. There is now a C+ precompiler available from Ceibo. This pre-compiler takes C+ code and precompiles it into Keil C where it is actually compiled. The general visitors is that C+ is not an appropriate language for the 8051 architecture。These three terms refer to three different ways of getting your program concept to run a given processor, each with varying levels of ease in programming and efficiency in execution. An interpreted program is one in which the program must be analyzed each time the program is run to determine what actions the processor should execute. Since the program is essentially compiled on the fly, program execution is generally slow in comparsion to other options. Code size is often larger, too, since not only is your program held in code memory but also the kernel which actually interprets and executes your program. Interpreted languages are usually only useful for learning purposes and are seldom used in commercial projects. An example of an interpreted option with the 8051 is 8051-BASIC. An assembler allows you to write your program in assembly language which is one step away from pure machine language. The assembler actually translates your assembly program into machine language. A well-written assembly language program will provide the most speed and smallest code size, but writing a program in assembly language is generally considered to be more advanced and more difficult than writing a similar program in an interpreted or compiled language. Most 8051 programmers work in assembly language (about 52% according to a recent 8052.com survey). Using assembly language also gives you complete control over what the processor is doing. A compiler is used when the programmer wishes to write his code in a high-level language, such as C, Pascal, or sometimes Basic. In the 8051 community, C is the most popular compiled language. A compiler translates the source code written in the high-level language to machine language; thus the resulting output is the same as the output of an assembler-pure executable machine code. Most modern compilers are relatively efficient and produce relatively tight code. However, an equivalent C program will almost require more code size than the same program in assembly language-unless the assembly language program was very poorly written. The advantage to using a high-level language is that more programmers are familiar with C, Pascal, and Basic than are familiar with 8051 assembly language. High-level language programs are also, arguably, easier to read and understand than the same program in assembly language and, thus, are often easier to maintain-especially if the program will have to be maintained by someone other than the original programmer(s).Further, modern C compilers often generate highly optimized code that is often more efficient than a typical programmers assembly code, especially if the programmer has little experience in 8051 assembly language. C compilers for the 8051 are often more expensive than assemblers.Timers are useful, but they are fast. With a standard 8052 running at 12MHZ, the 16-bit timer-which takes the most time of any timer to overflow-will still overflow about 15.26 times per second; thats about .06 seconds per overflow. To use a timer to count relatively long periods of times-anything over .06 seconds-will require a little extra code. This is the pefect situation for an interrupt. The idea is to cause the timer to overflow at a known rate and then count how many times it overflows. For example, .06 is not a fun number to work with since it is not evenly divisible by a full second. Rather, itd be useful to configure the program such that the timer overflows every .05 seconds. Then, if it has overflowed 20 times you know one second has passed. This can be done in various ways。Technically, T0_INTERRUPT resets TL0 and TH0 in a not-so-safe way. It is generally recommended that when you change the value of TH0 and/or TL0 that you first stop the timer by clearing TR0. After youve set the two SFRs, you then restart the timer by setting TR0. In this case, it is not absolutely necessary because the value were setting, is such that there will be no nasty side effects. However, if you were resetting the timer to it would be absolutely necessary to stop the timer. Otherwise, youd first write TL0 to FFh, it would immedaitely overflow back to 00h and youd write TH0 。 It is depending on the oscillator you are using and the baud rate that you desire, that the formula will give you a fractional answer. For example, if you were using a 12.000MHZ crystal 。Obviously, you cant use a fractional value-youd either have to use 3 or 4. Using 3 would produce a baud rate of 10416, and 4 would produce a baud rate of 7812-neither of which is anything close to 9600. In this case, you could try taking advantage of the SMOD bit. That is, set SMOD and look for a baud rate of about 4800 (which would be doubled to 9600 by setting SMOD). Plugging in 4800 into the above formula we get a TH1 value of 6.5, so wed either have to use 6 or 7. If we use 6, we get a baud rate of 5208 (which, when doubled, is still 10416), but if we use a value of 7 we get a baud rate of 4464 which, when doubled, is 8298-which is a little closer to 9600 then either 10416 or 7812. Unfortunately, its probably not close enough. A baud rate error of +/-3% is usually considered acceptable. However, our 8928 baud rate is 7% slower than 9600-not close enough. Thus, when you get a fractional answer for TH1, try to see if you can get close enough by using SMOD to double the baud rate. If you cant, its entirely possible that you cant obtain the baud rate you want with the oscillator crystal you have. Consider using another crystal, and choose your crystal taking into account the baud rate you want to achieve.Interrupts, as the name implies, are processes that interrupt normal program execution. Normally, a program will start executing at address 0000h and execute consecutively, unless program flow is altered by some branching or jump instruction. Interrupts are used to interrupt normal program flow to handle some special task, then return to continue executing the program as if nothing had happened. For example, you may have an interrupt programmed to interrupt every milisecond. Most of the time your program will execute normally. Once every milisecond, however, an interrupt will occur that will cause your main program to be temporarily suspended. Execution will jump automatically to an interrupt service routine which you write to handle the interrupt condition. Once youve done everything you need to during the interrupt, you return from the interrupt A standard 8052 lets you assign a level to each interrupt. By default, all interrupts are low level. When your program is executing, it may be interrupted by any interrupt-both low or high level. If a low-level interrupt is executing, it may ONLY be interrupted by a high level interrupt; it may NOT be interrupted by another low-level interrupt. If a high-level interrupt is executing, NOTHING may interrupt it until it finishes-not even another high-level interrupt. If multiple interrupts of the same level are triggered simultaneously, they will be executed one by one as the previous interrupt finishes. with a RETI instruction. Your program then continues as if nothing had ever happened and unaware that it has been interrupted.You may read a value by reading the corresponding SFR or bit. For example, if you wish to read the value on P1.3, you may either use the assembly instruction MOV A,P1 (which reads the value of all bits on P1) or you may read just the bit itself with the MOV C,P1.3. Either way, make sure youve previously written a 1 to the bit(s) you wish to read. That is, if you want to be able to read all lines of P1, you must first be sure that P1 has been initialized to FFh (MOV P1,#0FFh). This is the default condition, so unless youve changed the value of the port lines you should be able

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论