MC68705U3 Bootstrap ROM
|
|
- Warren Horn
- 5 years ago
- Views:
Transcription
1 MC68705U3 Bootstrap ROM ;This is a listing of the Bootstrap ROM which resides in Motorola's MC68705U3 single chip ;micros. Its sole purpose is to program its own EPROM by copying the data from an external ;EPROM (2732) which has been programmed with an exact duplicate of the required information ;(refer to the MC68705U3/R3 data sheets for more info). ;I obtained the listing by dumping the contents of the ROM and disassembling it. ;I believe the ROM in the MC68705R3 is identical but I haven't checked it however ROM size ;is 120 bytes in both devices. ;Peter Ihnat, Oct pihnat@uow.edu.au ;In Motorola's suggested Programmer, PortA is used to read data from the external EPROM. ;The 4 lower bits of PortB are used as outputs with the following functions: ; PB4 = reset the 4040 counter (1 = reset) ; PB3 = clock the 4040 counter (clks on falling edge) ; PB2 = 'verified' LED (0 = ON) ; PB1 = 'programmed' LED (0 = ON) ; PB0 = 0 applies +21V to the micro's Vpp input (pin 7). PB0 = 1 applies +5V. ; +21V is used when programming and +5V is used when verifying. ;In this listing the code appears twice. That's because even though the Bootstrap ROM is the ;120 bytes starting from address 0F80H the first thing it does when it runs is to copy itself ;into RAM. This is so it can modify itself during execution. ;The first listing is the Bootstrap ROM exactly as it appears in the 68705U3 memory map. ;I've disassembled the first 14 bytes which is the part that does the block move. ;The second listing is the Bootstrap ROM located in its new position in RAM. ;This is fully disassembled.
2 ;Basic operation is as follows: ;When powered up, 12V on the TIMER input (pin 8) forces the micro to fetch the vector at ;0FF6H & 0FF7H and to start executing the code from that address (0F80H). ;First it copies itself to RAM then continues executing from address 0019H. ;It sets up PortB & removes the reset to the 4040 counter. It pulses the counter 128 times ;to skip the first 128 bytes (remember, the internal EPROM starts at 0080H). ;It then starts the programming loop: ; read the external EPROM, clock the 4040 counter, ; increment the address pointer to the internal EPROM, store the data at that address, ; apply the programming voltage for the correct length of time ;It loops until the whole external EPROM has been copied. ;Then it modifies some instructions so that the programming part of the code does a verify ;instead and then lights the 'programmed' LED. ;The same loop runs again until the whole EPROM has been verified. ;The 'verified' LED is lit if there were no errors. ;Notes: ;1. The Bootstrap program changes the address pointer to the internal EPROM by incrementing ; the 2 address bytes in the 'sta 0F07FH' command. ;2. The internal EPROM address in the 'sta 0F07FH' command has an 'F' in the high nibble ; of the high byte (F0). This is ignored by the micro but helps by making it easier to ; skip non-eprom locations and easier to stop the programming/verify loop. ;3. Any data bytes which are 00H are skipped (ie not programmed). ;4. In the programming and verification loops non-eprom addresses are skipped ie 0000H to 007FH inc and 0F3FH to 0FF7H inc. ;5. Just before the program reads the external EPROM it checks the INT input (pin 3). If ; this pin is high, it skips the EPROM read. In Motorola's suggested Programmer the INT ; pin is connected to 0V so it always reads the external EPROM. ;6. The command to turn on the 'verified' LED is 'bclr 2,PortB' and is executed ; at the end of the whole verification procedure. If verification fails at any ; point the Bootstrap program modifies this command to become 'bset 2,PortB'.
3 ; So at the end of the verification procedure when the command executes, the LED is ; lit if the command is 'bclr' and not lit if it's 'bset'. ;7. The Bootstrap code does NOT check to see if the programming voltage (+21V) is correct ; before it runs. ;8. The length of the programming pulse is calculated as follows: ; "clr PCR" at address 0048H applies the programming voltage to the internal EPROM ; "bsr Delay" takes cycles ; "bra Loop" takes 4 cycles ; "ldx #0FEH" takes 2 cycles ; "stx PCR" (removes the programming voltage from the internal EPROM) takes 5 cycles ; So the total delay is cycles. ; With a 1M clock the programming pulse length is X 4 / = 51.3mS ;******************************************************************************* ;The Bootstrap ROM starts here (0F80H). The first thing it does is copy itself to RAM. ;Contents of address 0FF4H (ie 0F8CH + 68H) are copied to address 0076H (ie 000EH + 68H), etc. ;It finishes with contents of address 0F8DH copied to address 000FH. ;36H is left in the accumulator after the block move. ;******************************************************************************* org 0F80H 0F80 9C rsp 0F81 AE68 ldx #68H 0F83 D60F8C BM0: lda 0F8CH,X 0F86 E70E sta 0EH,X 0F88 5A decx 0F89 26F8 bne BM0 0F8B BC19 jmp 19H ;Continue running the program in RAM from address 0019H. 0F8D 36 db 36H ;This byte is left in the accumulator when the jump occurs.
4 0F8E F90 2FFE 0F92 B600 0F F F97 B701 0F99 A61F 0F9B B705 0F9D F9F ADED 0FA1 5C 0FA2 2AFB 0FA4 AEFE 0FA6 BF0B 0FA8 3C45 0FAA FAC 3C44 0FAE 271C 0FB0 ADDC 0FB2 BE44 0FB4 5C 0FB5 260A 0FB7 BE45 0FB9 A33F 0FBB FBD A3F8 0FBF 25E3 0FC1 C7F07F 0FC FC6 3F0B 0FC8 AD1E
5 0FCA 20D8 0FCC 03010D 0FCF 5F 0FD0 E662 0FD2 E743 0FD4 5C 0FD5 A308 0FD7 26F7 0FD9 5F 0FDA 20BB 0FDC FDE 20FE 0FE0 C1F07F 0FE3 262B 0FE5 BC26 0FE7 15 0FE8 5F 0FE9 ADA9 0FEB ADA7 0FED 5A 0FEE 26F9 0FF0 81 0FF1 115E 0FF3 BC26 ;Last instruction of Bootstrap ROM 0FF5 00 ;00H is not used 0FF6 0F80 dw 0F80H ;Vector to the start of Bootstrap ROM. When powered up, ;the 12V applied to the TIMER input makes the micro ;fetch this vector.
6 ;************************************************************************ ;The following code is the Bootstrap ROM after having been copied to RAM. ;Execution continues at address 0019H. ;************************************************************************ ;The following routine reads a byte from the external EPROM & then increments the 4040 counter GetByte: bset 3,PortB ;Bit 3 is connected to the 4040 CLK input FFE bih ClrCLK ;Don't read ext EPROM if INT input is HIGH 0014 B600 lda PortA ;Read ext EPROM value ClrCLK: bclr 3,PortB ;4040 counter increments on falling edge of CLK rts ;************************* ;Main program starts here ;************************* 0019 B701 START: sta PortB ;36H was left in ACC after block move. Writing this to ;PortB results in the following: ;reset is true, CLK is low, LEDs are off & Vpp = 21V ;After the EPROM is programmed, 3 lines of code are ;overwritten to change the code into a verify procedure and ;then the whole program runs again from here (ie START). ;The value 1BH is left in ACC so when "sta PortB" executes ;the second time it sets PortB as follows: ;reset is true, CLK is low, Prog LED is ON, Ver LED is OFF ;and Vpp = 5V
7 001B A61F lda #1FH 001D B705 sta DDRB ;Set PortB bits 4 to 0 as outputs 001F 1901 bclr 4,PortB ;Remove RESET to 4040 counter ;Skip the first 128 bytes since the MC68705U3 EPROM starts at 0080H 0021 ADED L0: bsr GetByte C incx AFB bpl L0 ;This is the programming/verify loop. ;After programming finishes, addresses 0043H to 004AH (8 bytes) are overwritten with the values ;from addresses 0062H to 0069H. This changes the loop from a programming routine to a verify one. ;I've added the replacement code in the comment part of the 4 affected lines AEFE Loop: ldx #0FEH 0028 BF0B stx PCR ;Remove program voltage from EPROM 002A 3C45 inc 45H ;Increment address pointer to internal EPROM. It s the ; 0F07FH part of the sta 0F07FH instruction at ;address 0043H. 002C 2604 bne L1 002E 3C44 inc 44H C beq L ADDC L1: bsr GetByte 0034 BE44 ldx 44H ;The following 8 lines skip non-eprom addresses C incx ;Skipped addresses are FF3FH to FFF7H inc. Note that ;the micro ignores the upper 4 bits of the address so the ;addresses actually skipped are 0F3FH to 0FF7H inc A bne L2
8 0039 BE45 ldx 45H 003B A33F cpx #3FH 003D 2504 bcs L2 003F A3F8 cpx #0F8H E3 bcs Loop 0043 C7F07F L2: sta 0F07FH ;Write data to internal EPROM cmp 0F07FH beq L3 ;Don't program if Byte = 0 bne Change F0B clr PCR ;Apply program voltage to EPROM jmp Loop 004A AD1E bsr Delay db 15H 004C 20D8 L3: bra Loop 004E 03010D L4: brclr 1,PortB,FIN ;Check if this is the first or second time around. ;If first time (ie 'programmed' LED is off) then continue ;by changing the code which does the programming to one ;which does a verify. ;If second time then all done so go to FIN. ;Change 8 bytes in the programming loop to make it verify instead ;ie overwrite addresses 0043H to 004AH with the values from addresses 0062H to 0069H F clrx 0052 E662 L5: lda 62H,X 0054 E743 sta 43H,X C incx 0057 A308 cpx #08H F7 bne L5 005B 5F clrx 005C 20BB bra START ;Repeat the whole program to perform verification of data
9 ;Come here at the end of everything. If data verified OK then "bclr" switches on the ;'verified' LED. If verification failed, the code at address 0073H changed "bclr" to ;"bset" so the 'verified' LED stays OFF. 005E 1501 FIN: bclr 2,PortB ;Turn on 'ver' LED if op is "bclr" or turn off if "bset" FE bra * ;FINISHED so stop here with infinite loop. ;These 3 lines get copied to addresses 0043H - 004AH thereby changing the program ;from a programmer to one that verifies C1F07F cmp 0F07FH B bne BC26 jmp 0026H db 15H ;This byte (15H) is used to set PortB differently ;The following delay time is: ; * ( ) + 6 = cycles ;With a 1M clock it's X 4 / = 51.24mS 006A 5F Delay: clrx ;4 cycles 006B ADA9 del: bsr ClrCLK ; = 21 cycles 006D ADA7 bsr ClrCLK ; = 21 cycles 006F 5A decx ;4 cycles F9 bne del ;4 cycles rts ;6 cycles ;This changes the 'bclr' command at address 005EH to a 'bset' since the verify failed. ;To change code for 'bclr 2' (15H) to 'bset 2' (14H) just clear bit E Change: bclr 0,FIN 0075 BC26 jmp Loop
MC68705P3 Bootstrap ROM
MC68705P3 Bootstrap ROM ;This is a listing of the Bootstrap ROM which resides in Motorola's MC68705P3 single chip ;micros. Its sole purpose is to program its own EPROM by copying the data from an external
More informationinstruction 1 Fri Oct 13 13:05:
instruction Fri Oct :0:0. Introduction SECTION INSTRUCTION SET This section describes the aressing modes and instruction types.. Aressing Modes The CPU uses eight aressing modes for flexibility in accessing
More informationAN1745. Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas. Introduction
Order this document by /D Interfacing the HC705C8A to an LCD Module By Mark Glenewinkel Consumer Systems Group Austin, Texas Introduction More and more applications are requiring liquid crystal displays
More informationAN1742. Programming the 68HC705J1A In-Circuit By Chris Falk CSG Product Engineering Austin, Texas. Introduction. Overview
Order this document by /D Programming the 68HC705J1A In-Circuit By Chris Falk CSG Product Engineering Austin, Texas Introduction Overview This application note describes how a user can program the 68HC705J1A
More informationRyerson University Department of Electrical and Computer Engineering ELE 538 Microprocessor Systems Final Examination December 8, 2003
Ryerson University Department of Electrical and Computer Engineering ELE 538 Microprocessor Systems Final Examination December 8, 23 Name: Student Number: Time limit: 3 hours Section: Examiners: K Clowes,
More informationAN1239. HC05 MCU Keypad Decoding Techniques Using the MC68HC705J1A. Introduction
Order this document by /D Rev. 1.0 HC05 MCU Keypad Decoding Techniques Using the MC68HC705J1A By David Yoder CSIC Applications Introduction This application note demonstrates the use of a matrix keypad
More informationAN-HK-32. In-Circuit Programming of FLASH Memory in the MC68HC908GP32. nc... Freescale Semiconductor, I. PART 1 Introduction
Order this document by AN-HK-32/H Rev. 2.0 AN-HK-32 In-Circuit Programming of FLASH Memory in the MC68HC908GP32 By T.C. Lun Applications Engineering Microcontroller Division Hong Kong PART 1 Introduction
More informationFreescale Semiconductor, Inc.
Order this document by /D Software I 2 C Communications By Brad Bierschenk MMD Applications Engineering Austin, Texas Introduction I 2 C Overview The I 2 C (inter-integrated circuit) protocol is a 2-wire
More information*********************************************** * MOR Byte Definition * *********************************************** org MOR fcb $20
* PULSE_V2.ASM - Pulse Generator * * Version 2.0 97-09-17 * * Real-Time version * * Problems: * * 1- wrong timing cause step > 1 for value * * encoder * * 2- Delay initialize to 0002 with InitDelay * *
More informationAN-HK-33. In-Circuit Programming of FLASH Memory in the MC68HC908JL3. Roger Fan Applications Engineering Microcontroller Division Hong Kong
Order this document by AN-HK-33/H Rev. 1 AN-HK-33 In-Circuit Programming of FLASH Memory in the MC68HC908JL3 By Roger Fan Applications Engineering Microcontroller Division Hong Kong This application note
More informationFreescale Semiconductor, I
Application Note Rev. 1, 11/2001 Interfacing the MC68HC05C5 SIOP to an I 2 C Peripheral By Naji Naufel Introduction SIOP Definition When designing a system based on a standard, non-custom designed, microcontroller
More informationCOSC 243. Instruction Sets And Addressing Modes. Lecture 7&8 Instruction Sets and Addressing Modes. COSC 243 (Computer Architecture)
COSC 243 Instruction Sets And Addressing Modes 1 Overview This Lecture Source Chapters 12 & 13 (10 th editition) Textbook uses x86 and ARM (we use 6502) Next 2 Lectures Assembly language programming 2
More informationINTRODUCTION HARDWARE INTERFACE
Order this document by AN1241 Interfacing the MC68HC705J1A to 9356/9366 EEPROMs By Mark Glenewinkel CSIC Applications INTRODUCTION This application note describes the hardware and software interface used
More informationBINARY LOAD AND PUNCH
BINARY LOAD AND PUNCH To easily decrease the amount of time it takes to load a long tape (Cassette or paper) a BINARY formatting technique can be used instead of the conventional ASCII format used by the
More informationAN1287. MC68HC708LN56 LCD Utilities. Introduction. LCD Hardware General Information
Order this document by /D MC68HC708LN56 LCD Utilities By Rick Cramer CSIC Product Engineering Austin, Texas Introduction LCD Hardware General Information A set of software utilities that causes the LCD
More informationFreescale Semiconductor, I
nc. 11/2003 I 2 C Slave on the HC908QT/QY Family MCU By Stanislav Arendarik Freescale Czech System Application Laboratory Roznov pod Radhostem, Czech Republic Introduction I 2 C Overview The I 2 C (inter-integrated
More informationAN-HK-32. Motorola Semiconductor Application Note. In-Circuit Programming of FLASH Memory in the MC68HC908GP32. PART 1 Introduction
Motorola Semiconductor Application Note Order this document by AN-HK-32/H Rev. 2.0 AN-HK-32 In-Circuit Programming of FLASH Memory in the MC68HC908GP32 By T.C. Lun Applications Engineering Microcontroller
More information; Once Initialized, monitor character in calls to CN05 ; set carry for input, to be tested CN35 C SEC
// // Serialcode.s // 256 Byte Prom P8 and 512 Byte PROM P9A (second version) for Apple II Serial Card // P9A differs from P9 by adding RTS/ACK software flow control to output and // by removing batch
More informationAN-HK-33. Motorola Semiconductor Application Note. In-Circuit Programming of FLASH Memory in the MC68HC908JL3. PART 1 Introduction
Motorola Semiconductor Application Note Order this document by AN-HK-33/H Rev. 1 AN-HK-33 In-Circuit Programming of FLASH Memory in the MC68HC908JL3 By Roger Fan Applications Engineering Microcontroller
More informationAN1742. Motorola Semiconductor Application Note. Programming the 68HC705J1A In-Circuit By Chris Falk CSG Product Engineering Austin, Texas
Order this document by /D Motorola Semiconductor Application Note Programming the 68HC705J1A In-Circuit By Chris Falk CSG Product Engineering Austin, Texas Introduction This application note describes
More informationUsing the stack and the stack pointer
Using the stack and the stack pointer o The Stack and Stack Pointer o The stack is a memory area for temporary storage o The stack pointer points to the last byte in the stack o Some instructions which
More information0b) [2] Can you name 2 people form technical support services (stockroom)?
ECE 372 1 st Midterm ECE 372 Midterm Exam Fall 2004 In this exam only pencil/pen are allowed. Please write your name on the front page. If you unstaple the papers write your name on the loose papers also.
More informationUNIVERSITY OF MANITOBA DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING. Term Test #2 Solution ECE 3610 MICROPROCESSING SYSTEMS
ECE 3610 Test 2 Solution 1 of 7 PRINT LAST NAME: STUDENT NUMBER PRINT FIRST NAME: UNIVERSITY OF MANITOBA DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING DATE: Feb. 28, 11; TIME: 6:00-8:00 P.M. Term Test
More informationUNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING. Principles of Computer Operation
UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING Experiment PCO: Principles of Computer Operation Location: Part I Lab., CYC 102. Objective: The objective is to learn the basic
More informationIntroduction to Programming the 9S12 in C Huang Sections 5.2 and 5.3. You will be able to use all of the Motorola data manuals on the exam.
Introduction to Programming the 9S12 in C Huang Sections 5.2 and 5.3 o Comparison of C and Assembly programs for the HC12 o How to compile a C program using the GNU-C compiler o Using pointers to access
More informationUNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
UNIVERSITY OF HONG KONG DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING Experiment PCO: Principles of Computer Operation Location: Part I Lab., CYC 102. Objective: The objective is to learn the basic
More informationINTRODUCTION WHY USE A REAL-TIME KERNEL?
Order this document by AN1262 Simple Real-Time Kernels for M68HC05 Microcontrollers By Joanne Field CSIC Applications Freescale Ltd. East Kilbride, Scotland INTRODUCTION This application note demonstrates
More informationProgramming the Motorola MC68HC11 Microcontroller
Programming the Motorola MC68HC11 Microcontroller COMMON PROGRAM INSTRUCTIONS WITH EXAMPLES aba Add register B to register A Similar commands are abx aby aba add the value in register B to the value in
More informationProgramming Book for 6809 Microprocessor Kit
Programming Book for 6809 Microprocessor Kit Wichit Sirichote, wichit.sirichote@gmail.com Image By Konstantin Lanzet - CPU collection Konstantin Lanzet, CC BY-SA 3.0, Rev1.2 March 2018 1 Contents Lab 1
More informationSubject Code: Model Answer Page No: /25
Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model answer and the answer written by candidate
More informationFreescale Semiconductor, I
Rev. 0, 9/2002 EEPROM Emulation Using FLASH in MC68HC908QY/QT MCUs by Peter Topping Applications Engineering Freescale, East Kilbride Introduction As versatile, low pin-count and low cost variants of the
More informationComparison of C and Assembly How to compile a C program using CodeWarrior
Comparison of C and Assembly How to compile a C program using CodeWarrior o Using pointers to access contents of specific addresses in C o Including and using derivative.h or hcs12.h to use in MC9S12 port
More informationCPU08RM/AD REV 3 8M68HC08M. CPU08 Central Processor Unit. Reference Manual
CPU08RM/AD REV 3 68HC08M6 HC08M68HC 8M68HC08M CPU08 Central Processor Unit Reference Manual blank CPU08 Central Processor Unit Reference Manual Motorola reserves the right to make changes without further
More informationExample Programs for 6502 Microprocessor Kit
Example Programs for 6502 Microprocessor Kit 0001 0000 0002 0000 GPIO1.EQU $8000 0003 0000 0004 0000 0005 0200.ORG $200 0006 0200 0007 0200 A5 00 LDA $0 0008 0202 8D 00 80 STA $GPIO1 0009 0205 00 BRK 0010
More informationAN Kbyte Addressing with the M68HC11. Overview
Order this document by /D 128-Kbyte Addressing with the M68HC11 By Ross Mitchell MCU Applications Engineering Freescale Ltd. East Kilbride, Scotland Overview The maximum direct addressing capability of
More informationEB301. Motorola Semiconductor Engineering Bulletin. Programming EEPROM on the MC68HC811E2 during Program Execution. Freescale Semiconductor, I
Order this document by /D Motorola Semiconductor Programming EEPROM on the MC68HC811E2 during Program Execution By Brian Scott Crow Austin, Texas Introduction The Problem The MC68HC811E2 microcontroller
More informationApplication Note. Interfacing the CS5525/6/9 to the 68HC05. By Keith Coffey MOSI (PD3) SDO MISO (PD2) SCLK. Figure 1. 3-Wire and 4-Wire Interfaces
Application Note Interfacing the CS5525/6/9 to the 68HC05 By Keith Coffey INTRODUCTION This application note details the interface of Crystal Semiconductor s CS5525/6/9 Analog-to-Digital Converter (ADC)
More information1. Memory Mapped Systems 2. Adding Unsigned Numbers
1 Memory Mapped Systems 2 Adding Unsigned Numbers 1 1 Memory Mapped Systems Our system uses a memory space Address bus is 16-bit locations Data bus is 8-bit 2 Adding Unsigned Numbers 2 Our system uses
More informationECE 3610 MICROPROCESSING SYSTEMS AN ENCRYPTED ASCII CODE DECODER
ECE 3610 MICROPROCESSIG SYSTEMS A ECRYPTED ASCII CODE DECODER 1 PROBLEM SPECIFICATIO Design a microprocessing system to decode messages which are encrypted. Each byte of the message is an encrypted ASCII
More informationIn-circuit Programming of the C166 Family Flash Devices
Microcontrollers ApNote AP1608 þ additional file APXXXX01.EXE available In-circuit Programming The Siemens 16-bit Microcontroller family comprises two flash devices, the SAB 88C166 with 32 Kbytes on chip
More informationMC68HC05J1A/D Rev. 1.0 HC 5 MC68HC05J1A MC68HCL05J1A MC68HSC05J1A. HCMOS Microcontroller Units TECHNICAL DATA
MC68HC0J1A/D Rev. 1.0 HC MC68HC0J1A MC68HCL0J1A MC68HSC0J1A HCMOS Microcontroller Units TECHNICAL DATA Technical Data Motorola reserves the right to make changes without further notice to any products
More informationEE 308 Spring A software delay. To enter a software delay, put in a nested loop, just like in assembly.
More on Programming the 9S12 in C Huang Sections 5.2 through 5.4 Introduction to the MC9S12 Hardware Subsystems Huang Sections 8.2-8.6 ECT_16B8C Block User Guide A summary of MC9S12 hardware subsystems
More information538 Lecture Notes Week 5
538 Lecture Notes Week 5 (October 4, 2017) 1/18 538 Lecture Notes Week 5 Announements Midterm: Tuesday, October 25 Answers to last week's questions 1. With the diagram shown for a port (single bit), what
More informationSWTPC 6800/CT-1024/AC-30 Cassette Tape
SWTPC 6800/CT-1024/AC-30 Cassette Tape Diagnostic Programs These two diagnostic programs have been written to generate and verify respectively cassette tapes generated on the SWTPC 6800 Computer System
More informationThe PC's keyboard. PC Keyboard Theory. Quality Information in one Place...
Interfacing the PC / Beyond Logic Quality Information in one Place... Parallel Ports Serial Ports Interrupts AT Keyboard Ports USB The PC's keyboard. Why would you want to interface the Keyboard? The IBM
More information538 Lecture Notes Week 5
538 Lecture Notes Week 5 (Sept. 30, 2013) 1/15 538 Lecture Notes Week 5 Answers to last week's questions 1. With the diagram shown for a port (single bit), what happens if the Direction Register is read?
More informationIntroduction to Microcontrollers II
Introduction to Microcontrollers II brset, brclr Indexed Addressing Example µp Laboratory #2 BUFFALO Assembling Code EECE 143 Digital Design Project Purpose: To allow students to design their own digital
More informationGATE Exercises on Microprocessors
1 GATE Exercises on Microprocessors Abstract This problem set has questions taken from GATE papers over the last twenty years. Teachers can use the problem set for courses tutorials. 1) The clock frequency
More informationAdd a Non-Volatile Clock to the MC68HC705J1A. Some applications of using the DS1307 are:
Order this document by /D Add a Non-Volatile Clock to the MC68HC705J1A By Mark Glenewinkel Field Applications Engineering Consumer Systems Group Austin, Texas Introduction Many embedded systems require
More informationSN8F5000 Family Instruction Set
SONiX Technology Co., Ltd. 8051-based Microcontroller 1 Overview SN8F5000 is 8051 Flash Type microcontroller supports comprehensive assembly instructions and which are fully compatible with standard 8051.
More informationComputer Organization I. Lecture 28: Architecture of M68HC11
Computer Organization I Lecture 28: Architecture of M68HC11 Overview Architecture of HC11 Microprocessor Format of HC11 Assembly Code Objectives To understand the simplified architecture of HC11 To know
More information8051 Microcontroller
8051 Microcontroller The 8051, Motorola and PIC families are the 3 leading sellers in the microcontroller market. The 8051 microcontroller was originally developed by Intel in the late 1970 s. Today many
More informationDC5 Floppy Disk Controller Introduction
DC5 Floppy Disk Controller Introduction The DC5 Floppy Disk Controller is an all-new design for the Southwest Technical Products Corp. 6800 and 6809 computers. It plugs into the SS-30 I/O bus and fully
More informationME 6405 Introduction to Mechatronics
ME 6405 Introduction to Mechatronics Fall 2005 Instructor: Professor Charles Ume LECTURE 9 Homework 1 Solution 1. Write an assembly language program to clear the usable internal RAM in the M68HC11E9. Solution:
More informationAN2093. Motorola Semiconductor Application Note. Creating Efficient C Code for the MC68HC08. Freescale Semiconductor, I.
nc. Motorola Semiconductor Application Note Order this document by /D Creating Efficient C Code for the MC68HC08 by Stuart Robb East Kilbride, Scotland 1 Introduction The C programming language is a powerful,
More informationA Technical Overview of Commodore Copy Protection. Glenn Holmer ( ShadowM ) World of Commodore Expo, 12/01/2007
A Technical Overview of Commodore Copy Protection Glenn Holmer ( ShadowM ) www.lyonlabs.org/commodore/c64.html World of Commodore Expo, 12/01/2007 Why Talk About This? These skills were a black art to
More informationPIC24FXXKAXXX. PIC24FXXKAXXX Flash Programming Specifications 1.0 DEVICE OVERVIEW 2.0 PROGRAMMING OVERVIEW OF THE PIC24FXXKAXXX FAMILY
PIC24FXXKAXXX Flash Programming Specifications 1.0 DEVICE OVERVIEW This document defines the programming specifications for the PIC24FXXKAXXX family of 16-bit microcontroller devices. This is required
More informationExam 1 Feb. 23, 25, 27?
Exam 1 Feb. 23, 25, 27? You will be able to use all of the Motorola data manuals on the exam. No calculators will be allowed for the exam. Numbers Decimal to Hex (signed and unsigned) Hex to Decimal (signed
More informationAN1292. Adding a Voice User Interface to M68HC05 Applications. nc... Freescale Semiconductor, I. Introduction
Order this document by /D Adding a Voice User Interface to M68HC05 Applications By Derrick B. Forte and Hai T. Nguyen CSIC Development Tools Austin, Texas Introduction As embedded microcontroller-based
More informationECE/CE 3720: Embedded System Design
Sequence of Events During Interrupt 1. Hardwere needs service (busy-to-done) transition. 2. Flag is set in one of the I/O status registers. (a) Interrupting event sets the flag (ex., STAF=1). Slide 1 ECE/CE
More informationECE/CS 3720: Embedded System Design (ECE 6960/2 and CS 6968)
Sequence of Events During Interrupt 1. Hardwere needs service (busy-to-done) transition. 2. Flag is set in one of the I/O status registers. (a) Interrupting event sets the flag (ex., STAF=1). Slide 1 ECE/CS
More informationAN1818. Motorola Semiconductor Application Note
Order this document by /D Motorola Semiconductor Application Note Software SCI Routines with the 16-Bit Timer Module By Brad Bierschenk MMD Applications Engineering Austin, Texas Introduction Many applications
More informationNAM M6800 DISK-BUG DS VER 3.5 OPT PAG
NAM M6800 DISK-BUG DS VER 3.5 OPT PAG Floppy Disk Controller Debug Monitor Written 27 Aug 1980 Michael Holley Record of modifications 18 OCT 1981 Disk routines DC-1 23 JAN 1982 Command Table 8 MAY 1982
More informationINTRODUCTION HARDWARE INTERFACE
SEMICONDUCTOR APPLICATION NOTE Order this document by AN1241 Interfacing the MC68HC705J1A to 9356/9366 EEPROMs By Mark Glenewinkel CSIC Applications INTRODUCTION This application note describes the hardware
More informationCONTENTS. 1.0 Introduction Description of the Circuit Installation Demonstration Examples 3
1 CONTENTS PAGE NO 1.0 Introduction 2 2.0 Description of the Circuit 2 3.0 Installation 2 4.0 Demonstration Examples 3 4.1 Demonstration Program for MPS 85-3 Trainer 4 4.2 Demonstration Program for ESA
More informationAN1060. Motorola Semiconductor Application Note. M68HC11 Bootstrap Mode By Jim Sibigtroth, Mike Rhoades, and John Langan Austin, Texas.
Order this document by AN1060/D Rev. 1.0 Motorola Semiconductor Application Note AN1060 M68HC11 Bootstrap Mode By Jim Sibigtroth, Mike Rhoades, and John Langan Austin, Texas Introduction The M68HC11 Family
More informationIntroduction to Microcontrollers II
Introduction to Microcontrollers II brset, brclr Indexed Addressing Example µp Laboratory #2 BUFFALO Assembling Code EECE 143 Digital Design Project Purpose:To allow students to design their own digital
More informationTest ROM V2 for MPU boards System 3, 4, 6, 7 and corresponding driver boards. Author: André Boot corrections in this document by coinop
Test ROM V2 for MPU boards System 3, 4, 6, 7 and corresponding driver boards Author: André Boot corrections in this document by coinop 1. INTRODUCTION... 2 2. INSTALLATION OF THE BOOT TEST ROM... 3 3.
More informationA. CPU INSTRUCTION SET SUMMARY
A. CPU INSTRUCTION SET SUMMARY This appendix summarizes the CPU instruction set. Table A-1 is a matrix of CPU instructions and addressing modes arranged by operation code. Table A-2 lists the CPU instruction
More informationApplication Note. Interfacing the CS5521/22/23/24/28 to the 68HC05. Figure 1. 3-Wire and 4-Wire Interfaces
Application Note Interfacing the CS5521/22/23/24/28 to the 68HC05 TABLE OF CONTENTS 1. INTRODUCTION... 1 2. ADC DIGITAL INTERFACE... 1 3. SOFTWARE DESCRIPTION... 2 3.1 Initialize... 2 3.2 Write Channel
More informationAN1228. Motorola Semiconductor Application Note. Interfacing the M68HC05 MCU to the MC A/D Converter. Freescale Semiconductor, I.
nc. Motorola Semiconductor Order this document by AN1228/D Rev. 2.0 AN1228 Interfacing the M68HC05 MCU to the MC145051 A/D Converter By Mark Glenewinkel CSIC Applications Austin, Texas Introduction This
More informationComparison of C and Assembly How to compile a C program using CodeWarrior
Comparison of C and Assembly How to compile a C program using CodeWarrior o Using pointers to access contents of specific addresses in C o Including and using derivative.h or hcs12.h to use in MC9S12 port
More information2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.
DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6502- MICROPROCESSORS AND MICROCONTROLLERS UNIT I: 8085 PROCESSOR PART A 1. What is the need for ALE signal in
More informationWhat is an Addressing Mode?
Addressing Modes 1 2 What is an Addressing Mode? An addressing mode is a way in which an operand is specified in an instruction. There are different ways in which an operand may be specified in an instruction.
More informationIntroduction to Programming the 9S12 in C Huang Sections 5.2 and 5.3
Introduction to Programming the 9S12 in C Huang Sections 5.2 and 5.3 o Comparison of C and Assembly programs for the HC12 o How to compile a C program using the GNU-C compiler o Using pointers to access
More informationEE319 K Lecture 3. Introduction to the 9S12 Lab 1 Discussion Using the TExaS simulator. University of Texas ECE
EE319 K Lecture 3 Introduction to the 9S12 Lab 1 Discussion Using the TExaS simulator University of Texas ECE Introduction (von Neumann architecture) processor Bus Memory Mapped I/O System Input Devices
More informationInterrupts. EE4380 Fall 2001 Class 9. Pari vallal Kannan. Center for Integrated Circuits and Systems University of Texas at Dallas
8051 - Interrupts EE4380 Fall 2001 Class 9 Pari vallal Kannan Center for Integrated Circuits and Systems University of Texas at Dallas Polling Vs Interrupts Polling: MCU monitors all served devices continuously,
More informationThe 6502 Instruction Set
The 6502 Instruction Set Load and Store Group LDA Load Accumulator N,Z LDX Load X Register N,Z LDY Load Y Register N,Z STA Store Accumulator STX Store X Register STY Store Y Register Arithmetic Group ADC
More informationIntroduction to Mechatronics. Fall Instructor: Professor Charles Ume. Interrupts and Resets
ME645 Introduction to Mechatronics Fall 24 Instructor: Professor Charles Ume Interrupts and Resets Reason for Interrupts You might want instructions executed immediately after internal request and/or request
More informationLecture #3 Microcontroller Instruction Set Embedded System Engineering Philip Koopman Wednesday, 20-Jan-2015
Lecture #3 Microcontroller Instruction Set 18-348 Embedded System Engineering Philip Koopman Wednesday, 20-Jan-2015 Electrical& Computer ENGINEERING Copyright 2006-2015, Philip Koopman, All Rights Reserved
More information6800 Programming - Introduction. This section of our manual has been written to help you begin
6800 Programming - Introduction This section of our manual has been written to help you begin programming your 6800 Computer System. Programming is a complicated subject. This manual describes only the
More informationAssembly Language programming (1)
EEE3410 Microcontroller Applications LABORATORY Experiment 1 Assembly Language programming (1) Name Class Date Class No. Marks Familiarisation and use of 8051 Simulation software Objectives To learn how
More informationIntroduction to Microcontrollers
Motorola M68HC11 Specs Assembly Programming Language BUFFALO Topics of Discussion Microcontrollers M68HC11 Package & Pinouts Accumulators Index Registers Special Registers Memory Map I/O Registers Instruction
More informationMCM6830L7 MIKBUG/ MINIBUG ROM
MCM6830L7 MIKBUG/ MINIBUG ROM Prepared by Mike Wiles Computer Systems Andre Felix Support Products Group The MIKBUG/MINIBUG ROM is an MCM6830 ROM of the M8800 Family of parts. This ROM provides an asynchronous
More informationAN1227. Using 9346 Series Serial EEPROMs with 6805 Series Microcontrollers. Abstract
Order this document by AN1227/D Rev. 1.0 AN1227 Using 9346 Series Serial EEPROMs with 6805 Series Microcontrollers using By William G. Grim Abstract This application note describes how the HC05 Family
More informationIntroduction To MCS-51
Introduction To MCS-51 By Charoen Vongchumyen Department of Computer Engineering Faculty of Engineering KMITLadkrabang 8051 Hardware Basic Content Overview Architechture Memory map Register Interrupt Timer/Counter
More informationDepartment of EIE / Pondicherry Engineering College. Timer/Counters. Department of EIE / Pondicherry Engineering College 1
Timer/Counters Department of EIE / Pondicherry Engineering College 1 The 8051 has two internal sixteen bit hardware Timer/Counters. Each Timer/Counter can be configured in various modes, typically based
More informationINSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor
INSTITUTE OF ENGINEERING AND MANAGEMENT, KOLKATA Microprocessor Subject Name: Microprocessor and Microcontroller Year: 3 rd Year Subject Code: CS502 Semester: 5 th Module Day Assignment 1 Microprocessor
More informationEE 308 Spring A software delay
A software delay To enter a software delay, put in a nested loop, just like in assembly. Write a function delay(num) which will delay for num milliseconds void delay(unsigned int num) volatile unsigned
More informationMICROCONTROLLER AND PLC LAB-436 SEMESTER-5
MICROCONTROLLER AND PLC LAB-436 SEMESTER-5 Exp:1 STUDY OF MICROCONTROLLER 8051 To study the microcontroller and familiarize the 8051microcontroller kit Theory:- A Microcontroller consists of a powerful
More informationMC9S12 Assembler Directives A Summary of MC9S12 Instructions Disassembly of MC9S12 op codes. Summary of HCS12 addressing modes ADDRESSING MODES
MC9S12 Assembler Directives A Summary of MC9S12 Instructions Disassembly of MC9S12 op codes o Review of Addressing Modes o Which branch instruction to use (signed vs unsigned) o Using X and Y registers
More informationCIS-331 Exam 2 Fall 2015 Total of 105 Points Version 1
Version 1 1. (20 Points) Given the class A network address 117.0.0.0 will be divided into multiple subnets. a. (5 Points) How many bits will be necessary to address 4,000 subnets? b. (5 Points) What is
More informationME4447/6405. Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics. Instructor: Professor Charles Ume LECTURE 7
ME4447/6405 Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics Instructor: Professor Charles Ume LECTURE 7 Reading Assignments Reading assignments for this week and next
More informationMemory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples.
MICROCONTROLLERS AND APPLICATIONS 1 Module 2 Module-2 Contents: Memory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples. MEMORY
More information8051 Overview and Instruction Set
8051 Overview and Instruction Set Curtis A. Nelson Engr 355 1 Microprocessors vs. Microcontrollers Microprocessors are single-chip CPUs used in microcomputers Microcontrollers and microprocessors are different
More informationData Acquisition Using INS8048
Data Acquisition Using INS8048 Abstract This application note describes techniques for interfacing National Semiconductor s ADC0833 serial I O and ADC0804 parallel I O A D converters to the INS8048 family
More informationPERIPHERAL INTERFACING Rev. 1.0
This work is licensed under the Creative Commons Attribution-NonCommercial-Share Alike 2.5 India License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.5/in/deed.en
More informationLecture #2 January 30, 2004 The 6502 Architecture
Lecture #2 January 30, 2004 The 6502 Architecture In order to understand the more modern computer architectures, it is helpful to examine an older but quite successful processor architecture, the MOS-6502.
More informationThe Microcontroller. Lecture Set 3. Major Microcontroller Families. Example Microcontroller Families Cont. Example Microcontroller Families
The Microcontroller Lecture Set 3 Architecture of the 8051 Microcontroller Microcontrollers can be considered as self-contained systems with a processor, memory and I/O ports. In most cases, all that is
More informationC SC 230 Computer Architecture and Assembly Language April 2000 Exam Sample Solutions
C SC 230 Computer Architecture and Assembly Language April 2000 Exam Sample Solutions 1. (12 marks) Circle the correct answer for each of the following: The 8-bit two's complement representation of -15
More information