ECE 541: Microprocessor and Embedded Systems Design Flashcards
What is an embedded system?
Specialized computing systems designed to perform specific dedicated functions within a larger mechanical or electrical system.
What is the primary component of an embedded system?
Processor/CPU
Name two types of memory used in embedded systems.
- RAM (volatile memory)
- ROM/Flash memory (non-volatile)
What is the role of input devices in an embedded system?
Collect data or receive commands.
List two characteristics of embedded systems.
- Real-time Operation
- Low Power Consumption
Give an example of an application for embedded systems in consumer electronics.
Smartphones
What is the main difference between the Intel 8051 and 8031 microcontrollers?
The amount of on-chip memory; 8051 has ROM, while 8031 requires external ROM.
What type of CPU architecture do the Intel 8051 and 8031 microcontrollers use?
8-bit CPU architecture
List the types of on-chip memory in the 8051 microcontroller.
- 128 bytes of RAM
- 4 KB of ROM
What are the pin functions of VCC and GND in the 8051 microcontroller?
Power supply pins.
What does ALE stand for, and what is its function?
Address Latch Enable; used to latch the address into external latch for interfacing with external memory.
Fill in the blank: The 8051 uses a _______ architecture, which means it separates program memory and data memory.
Harvard
What is the purpose of the stack pointer register in the 8051?
To point to the stack section of RAM for temporary storage.
How many register banks are available in the 8051, and how many registers does each bank contain?
4 register banks, each containing 8 registers.
True or False: The default register bank for the 8051 when powered up is register bank 1.
False
What is the initial value of the stack pointer (SP) register in the 8051 after initialization?
07H
What types of devices can be interfaced with the I/O ports of the 8051 microcontroller?
- Sensors
- Other systems
What type of communication does the 8051 support for serial communication?
UART (Universal Asynchronous Receiver-Transmitter)
List two applications of the Intel 8051 microcontroller.
- Industrial Automation
- Automotive Electronics
What does the PSW register control in the 8051 microcontroller?
The selection of the desired register bank.
Fill in the blank: The 8051 microcontroller has a _______ address bus, allowing it to address up to 64 KB of memory.
16-bit
What are Special Function Registers (SFRs) in the context of the 8051 microcontroller?
Memory-mapped registers that control the functioning of various peripherals.
How is the memory in the 8051 divided?
- Code Memory (ROM)
- Data Memory (RAM)
What is the register used to access the stack in the 8051?
Stack pointer register (SP)
What is the initial value of the stack pointer (SP) in the 8051 after initialization?
07H
What does the operation of storing a CPU register in the stack called?
PUSH
What is the process of retrieving contents from the stack back into a CPU register called?
POP
What is the address range for Code Memory (ROM) in the 8051?
0000H to 0FFFH (4 KB)
What is the address range for Data Memory (RAM) in the 8051?
00H to 7FH (128 bytes)
What are Special Function Registers (SFRs) in the 8051?
Mapped to specific memory locations for controlling peripherals and special functions
What type of memory is the General-Purpose RAM in the 8051?
Volatile memory
What is the main use of the 128 bytes of RAM in the 8051?
Workspace for the processor during program execution
Which addressing mode allows accessing memory locations directly using their physical addresses?
Direct Addressing
What is the key feature of Indirect Addressing in the 8051?
Using pointers to access memory indirectly
In Immediate Addressing mode, how is data presented in instructions?
Data is given directly to instructions with a special character ‘#
What is an example of an instruction in Immediate Addressing mode?
MOV A, #16H
What does Register Addressing mode involve?
Moving data from one register to another without erasing data from the first register
What is the syntax for Direct Addressing mode in the 8051?
MOV A, 25H
What is the purpose of the MOVX instruction?
Used for external RAM access
What does the Index Addressing mode do in the 8051?
Uses the sum of two registers to access data
What is the function of the assembler in the context of the 8051?
Translates assembly language code into machine code
What does the directive ORG do in assembly language?
Specifies the origin (starting) address of the program in memory
What is the purpose of the END directive?
Marks the end of the assembly code
What does the EQU directive do?
Defines a constant value for a label
What is the purpose of the DB directive?
Reserves memory space and initializes it with byte values
What does the MOV instruction do?
Moves data from one location to another
What is the purpose of the CALL instruction in assembly language?
Calls a subroutine
What does the RET instruction do in assembly language?
Returns from a subroutine
What is the function of the SJMP instruction?
Unconditional short jump to a label
What does the INC instruction do?
Increments the content of a register
In the context of the 8051, what does the ANL instruction perform?
Bitwise AND operation
What is the significance of comments in assembly language?
Used to explain the code and ignored by the assembler
What type of instructions are included in the 8051 assembly language?
Data Movement, Arithmetic, Logical, Jump and Branch, Loop, Subroutine, Bit-Level, Stack, and I/O Port Instructions
What is the purpose of the XDATA syntax in the 8051 microcontroller?
Declares variables to be stored in the external RAM (extended data memory).
What does the assembler do in the assembly process for the 8051 microcontroller?
Translates assembly language code into machine code (binary) that the 8051 microcontrollers can execute.
What is an Assembly File in the context of the 8051 microcontroller?
The source code written in assembly language with a file extension like .asm.
What is the purpose of syntax checking by the assembler?
Ensures that the assembly code follows the correct syntax for the 8051 architectures.
What is Symbol Resolution in the assembly process?
Resolves symbols and assigns memory addresses to variables and labels.
What command is used to assemble the code using an assembler in 8051?
assembler8051 example.asm -o example.obj
What is the function of a Linker in the 8051 microcontroller?
Combines multiple object files, resolves addresses, and creates the final executable file.
What does the Linker Script specify?
The memory layout and segment placement for the final executable.
What is the command to link an object file in 8051?
linker8051 example.obj -o example.hex
What is the purpose of the hex file generated by the linker?
It can be directly programmed into the 8051 microcontroller’s memory.
What does the ORG directive do in an assembly program?
Specifies the starting address for the program.
What is the result of the assembly code ‘ADD A, B’ in the example program?
The accumulator A now holds the sum of the values in A and B.
What is the role of timers in the 8051 microcontroller?
Used for various timing and counting applications.
What are the timer modes available in the 8051 microcontroller?
16-bit mode and 8-bit mode.
What is the purpose of the UART in the 8051 microcontroller?
Provides serial communication.
What does the baud rate configure in serial communication?
The speed of data transmission.
What types of devices can be interfaced with the 8051 microcontroller?
External memory, keypad, seven-segment LED display, ADC, DAC, and input/output port expansion.
What is the function of an ADC?
Converts analog signals into digital values.
What is the purpose of a DAC?
Converts digital values into analog signals.
What is the function of a Microcontroller Development Board?
Includes the microcontroller, power supply, and crystal oscillator for prototyping.
What is the Motorola M6811 microcontroller?
An 8-bit microcontroller widely used in embedded systems and control applications.
What is the clock speed of the M6811 microcontroller?
Varies; different versions may have different clock frequencies.
What is the significance of VCC and GND pins in the M6811 microcontroller?
VCC receives the positive power supply voltage, and GND is the ground reference.
What does the RESET pin do in the M6811 microcontroller?
Resets the microcontroller and starts executing code from a predefined location.
What is the function of the Data Direction Register (DDR)?
Configures the direction of each I/O pin.
What does a ‘1’ bit in the DDR indicate?
The corresponding pin is configured as an output.
What are special function pins in the M6811 microcontroller used for?
Dedicated functions like serial communication or clock input.
What types of memory are integrated into the M68HC11 microcontroller?
Program memory (ROM) and data memory (RAM).
What is the purpose of the Data Register (DR) in the M6811?
Holds the actual data for the I/O pins when configured as outputs.
Fill in the blank: The M6811 microcontroller is based on the _______ architecture.
[Motorola 6800 CPU]
True or False: The M6811 microcontroller is capable of interfacing with external memory.
True
What does the instruction set of the M6811 include?
Enhancements and additional instructions tailored for embedded control applications.
What types of memory are typically integrated in the M68HC11 microcontroller?
Program Memory (ROM), Data Memory (RAM), Stack Memory, Bit-Addressable Memory, Registers, Memory-Mapped I/O, External Memory Interface, Memory Space Mapping, Memory Decoding
Each type serves a specific purpose in program execution and data storage.
What is the purpose of Program Memory (ROM) in the M68HC11?
Stores machine code instructions and is non-volatile
Retains contents even when power is turned off.
What is the function of Data Memory (RAM) in the M68HC11?
Used for temporary storage of variables and data during program execution
Volatile memory, contents lost when power is turned off.
What is Stack Memory used for in the M68HC11?
Stores subroutine return addresses, local variables, and temporary data
Crucial for managing function calls and interrupts.
What is Bit-Addressable Memory in the M68HC11?
Regions of RAM that allow individual bits within a byte to be directly addressed and manipulated
Useful for setting or clearing specific flags.
What are Registers in the M68HC11?
Storage locations within the microcontroller for arithmetic and data manipulation
Includes general-purpose registers and special function registers (SFRs).
What does Memory-Mapped I/O allow in the M68HC11?
Enables communication with peripherals through specific memory addresses
Facilitates interaction with devices like timers and communication modules.
What is the role of the External Memory Interface in the M68HC11?
Supports interfacing with external memory devices such as additional ROM or RAM
Extends available storage space for program code or data.
Define Memory Space Mapping in the context of the M68HC11.
Organization of the memory space into different regions for specific purposes
Includes program memory, data memory, and I/O space.
What is the purpose of Memory Decoding in the M68HC11?
Determines which memory region corresponds to a specific address during memory access
Helps route data and control signals to the correct memory location.
What is the instruction set architecture (ISA) of the M6811?
Defines the set of instructions the processor can execute, including data movement, arithmetic, and control flow
Assembly language programming corresponds directly to these instructions.
What are Data Movement Instructions in the M6811?
LDAA, LDAB, STAA, STAB, LDA, STA
Instructions for loading and storing values in accumulators.
What are Arithmetic and Logic Instructions in the M6811?
ADDA, ADDB, SUBA, SUBB, ANDA, ANDB, ORA, ORB, EORA, EORB
Instructions for performing arithmetic and logical operations.
What is the function of Branching and Control Flow Instructions in the M6811?
Control the flow of execution in a program with instructions like BRA, BEQ, BNE
Enables conditional and unconditional branching.
What does the Hello World program for M6811 do?
Stores ASCII codes for ‘H’, ‘E’, ‘L’, ‘L’, ‘O’ in memory starting at address $1000
Uses software interrupt to halt the program.
Describe the architecture of PIC microcontrollers.
Typically have Harvard architecture with separate program and data memory spaces
Allows simultaneous access to both memory types.
What is the purpose of Program Memory (Flash) in PIC microcontrollers?
Stores the program code and is non-volatile
Code persists even when power is removed.
What does EEPROM stand for and what is its use in PIC microcontrollers?
Electrically Erasable Programmable Read-Only Memory, used for non-volatile data storage
Data may need to be preserved across power cycles.
What is the significance of the instruction set in PIC microcontrollers?
Follows RISC architecture with a small, optimized set of instructions for fast execution
Includes arithmetic, logic operations, and control flow instructions.
List some common peripherals found in PIC microcontrollers.
- Timers
- Counters
- USART
- SPI
- I2C
- ADC
These peripherals enhance interfacing capabilities.
What are the selection criteria for choosing a microcontroller?
- Application Requirements
- Power Consumption
- Peripherals and Interfaces
- Cost
- Development Tools and Support
- Package and Size
Considerations vary based on specific project needs.
What advantages do PIC microcontrollers offer?
- Versatility
- Rich Peripheral Set
- Low Power Options
- Development Tools
- Community Support
Suitable for a wide range of applications.
What distinguishes low-end and high-performance PIC microcontrollers?
- Low-End: PIC10, PIC12 - Simple control applications, limited resources
- High-Performance: PIC18, PIC32 - Complex applications, advanced features
Different families are designed for varying application requirements.