Appendix C Glossary Introduction Microcontroller I/O pin Software Hardware Simulator ICE EPROM Emulator HEX file List file Source File Debugging ROM, EPROM, EEPROM, FLASH, RAM Addressing ASCII Carry Code Byte, Kilobyte, Megabyte Flag Interrupt vector or interrupts Programmer Product Introduction Since all the fields of man's activity are regularly based on adequate and already adopted terms (through which other notions and definitions become), so in the field of microcontrollers we can single out some frequently used terms. Ideas are often connected so that correct understanding of one notion is needed in order to get acquainted with one or more of the other ideas. Microcontroller Microprocessor with peripherals in one electronic component. I/O pin External microcontroller's connector pin which can be configured as input or output. In most cases I/O pin enables a microcontroller to communicate, control or read information. Software Information that microcontroller needs in order to be able to function. Software can not have any errors if we want the program and a device to function properly. Software can be written in different languages such as: Basic, C, pascal or assembler. Physically, that is a file on computer disc. Hardware Microcontroller, memory, supply, signal circuits and all components connected with microcontroller. The other way of viewing this (especially if it's not working) is, that, hardware is something you can kick. Simulator Software package for PC which simulates the internal function of microcontroller. It is ideal for checking software routines and all the parts of the code which do not have over demanding connections with an outside world. Options are installed to watch the code, movement around the program back and forth step by step, and debugging. ICE ICE (In Circuit Emulator), internal emulator, very useful part of the equipment which connects a PC instead of microcontroller on a device that is being developed. It enables software to function on the PC computer, but to appear as if a real microcontroller exists in the device. ICE enables you to move through program in real time, to see what is going on in the microcontroller and how it communicates with an outside world. EPROM Emulator EPROM Emulator is a device which does not emulate the entire microcontroller like ICE emulator, but it only emulates its memory. It is mostly used in microcontrollers that have external memory. By using it we avoid constant erasing and writing of EPROM memory. Assembler Software package which translates source code into a code which microcontroller can understand. It contains a section for discovering errors. This part is used when we debug a program from errors made when program was written. HEX file This is a file made by assembler translator when translating a source file, and has a form "understood" by microcontrollers. A continuation of the file is usually File_name.HEX where the name HEX file comes from. List file This is a file made by assembler translator and it contains all instructions from source file with addresses and comments programmer has written. This is a very useful file for keeping track of errors in the program. File extension is LST which is where its name comes from. Source File File written in the language understood by man and assembler translator. By translating the source file, we get HEX and LIST files. Debugging Error made in writing a program, which error we are not aware of. Errors can be quite simple such as typing errors, and quite complex such as incorrect use of program language. Assembler will find most of these errors and report them to '.LST' file. Other errors will need to be searched for by trying it out and watching how device functions. ROM, EPROM, EEPROM, FLASH, RAM Types of memories we meet with microcontroller use. First one can not be erased, what you write in it once, stays forever, and can not be erased. The second is erasable electrically with supply brought in separately, and voltage above that on which microcontroller is operating. Third one can also be erased electrically, but uses voltage which microcontroller operates on. Fourth one is electrically erasable, but unlike EEPROM memory it does not have such a great number of cycles of writing and erasing at memory locations. Fifth one is fast, but it does not hold back the contents as the previous when there is supply shortage. Thus, program is not stored in it, but it serves for different variables and inter-results. Addressing Determines and designates certain memory locations. ASCII Short for "American Standard Code for Information Interchange". It is widely accepted type of coding where each number and letter have their eight-bit code. Carry Transfer bit connected with arithmetic operations Code File, or section of a file which contains program instructions. Byte, Kilobyte, Megabyte Terms designating amounts of information. The basic unit is a byte, and it has 8 bits. Kilobyte has 1024 bytes, and mega byte has 1024 kilobytes. Flag Bits from a status register. By their activation, programmer is informed about certain actions. Program activates its response if necessary. Interrupt vector or interrupts Location in microcontroller memory. Microcontroller takes from this location information about a section of the program that is to be executed as an answer to some event of interest to programmer and device. Programmer Device which makes it possible to write software in microcontroller memory, thus enabling the microcontroller to work independently. It consists of the hardware section usually connected with one of the ports and software section used on the computer as a program. Product Product development is a combination of luck and experience. Short terms, or time-limits for production should be avoided because even with most simple assignments, much time is needed to develop and improve. When creating a project, we need time, quiet, logical mind and most importantly, a thorough understanding of consumer's needs. Typical course in creating a product would have the following algorithm.