1976, it has an on-board clock generator and requires only a single power [1] Noyce, R N and Marcian, E H ; A History of Microprocessor Development at
View & Download This PDF
The project was supported by a generous grant from Colorado College for faculty research and development Reprint requests and other correspondence should
based on the 6809 micro, have recently simply-titled 6809 second processor boards Therefore, using either 6809 system, applications can be developed
1976, it has an on-board clock generator and requires only a single power [1] Noyce, R N and Marcian, E H ; A History of Microprocessor Development at
development costs are not as important as memory costs that are part of each C W Gear, Computer Organization and Programming, McGraw-Hill, New York,
development of batch mode multiprocessing The used by logic designers to develop flowcharts of internal operations on a Photo 3: 6809 emulator board
1 sept 1981 · of Synertek Systems' SYM single board com puter — the versatile, universal evaluation board O ve r 20,000 SYM-1 boards have been used
dealt with by the computer and are a development from the structure charts different state each time a program is run - such as an on-board, real-time clock
the 6809D4 evaluation unit Since this The 6809 /xP, developed by Motorola and second sourced by American the selection of various on-board registers
which runs under UDOS on FutureData I s Advanced Development System Motorola's MC6809 Preliminary Programming Manual describes the processor in physical blocks are of fixed size, dependent upon the type of memory board
[PDF] 6809 disassembler
[PDF] 6809 indexed mode
[PDF] 6809 instruction set pdf
[PDF] 6809 instructions
[PDF] 6809 microcode
[PDF] 6809 pinout
[PDF] 6809 processor datasheet
[PDF] 6809 programming manual
[PDF] 6809 pshu
[PDF] 6809e datasheet
[PDF] 687 area code
[PDF] 68hc11 example code
[PDF] 68hc11 instruction set
[PDF] 69 co defendants
[PDF] 69 cours de verdun oyonnax
Contents Part I Target Processors1 1 The 6809 Microprocessor: Its Hardware2 1.1 Architecture3 1.2 Outside the 68096 1.3 Making the Connection9 2 The 6809 Microprocessor: Its Software19 2.1 Its Instruction Set19 2.2 Address Modes30 2.3 Example Programs41 3 The 68000/8 Microprocessor : Its Hardware56 3.1 Inside the 68000/857 3.2 Outside the 68000/864 3.3 Making the Connection71 4 The 68000/8 Microprocessor: Its Software86 4.1 Its Instruction Set86 4.2 Address Modes106 4.3 Example Programs114 5 Subroutines, Procedures and Functions122 5.1 The Call-Return Mechanism123 5.2 Passing Parameters129 6 Interrupts plus Traps equals Exceptions141 6.1 Hardware Initiated Interrupts143 6.2 Interrupts in Software161 Part II C167 7 Source to Executable Code168 7.1 The Assembly Process170 7.2 Linking and Loading178 7.3 The High-Level Process189 v vi Contents
8 Naked C199 8.1 A Tutorial Introduction200 8.2 Variables and Constants202 8.3 Operators, Expressions and Statements213 8.4 Program Flow Control224 9 More Naked C236 9.1 Functions236 9.2 Arrays and Pointers245 9.3 Structures258 9.4 Headers and Libraries271 10 ROMable C278 10.1 Mixing Assembly Code and Starting Up278 10.2 Exception Handling286 10.3 Initializing Variables291 10.4 Portability297 Part III Project in C309 11 Preliminaries310 11.1 Specification313 11.2 System Design315 12 The Analog World323 12.1 Signals323 12.2 Digital to Analog Conversion329 12.3 Analog to Digital Conversion337 13 The Target Microcomputer345 13.1 6809 - Target Hardware345 13.2 68008 - Target Hardware350 14 Software inC355 14.1 Data Structure and Program355 14.2 6809 - Target Code359 14.3 68008 - Target Code370 15 Looking For Trouble383 15.1 Simulation384 15.2 Resident Diagnostics397 15.3 In-Circuit Emulation408 16 C"est la Fin416 16.1 Results416 16.2 More Ideas420 Contents vii A Acronyms and Abbreviations423 List of Figures 1.1 Internal 6809/6309 structure.4 1.2 6809 pinout.7 1.3 A snapshot of the 6809 MPU reading data from a peripheral device.10 1.4 Sending data to the outside world.11 1.5 The structure of a synchronous common-bus microcomputer.12 1.6 An elementary address decoding scheme.14 1.7 A simple byte-sized output port.15 1.8 Talking to a 6116 2kbyte static RAM chip.15 1.9 Interfacing a 6821 Peripheral Interface Adapter to the 6809.17 2.1 Postbyte for pushing and pulling.20 2.2 Moving 16-bit data at òne go".22 2.3 Stacking registers in memory.23 2.4 16-bit binary to decimal string conversion.48 2.5 Evaluating factorialn.51 2.6 A memory mapof the factorial process.52 3.1 Internal structure pf the 68000.58 3.2 Internal 68008 structure.63 3.3 68000 and 68008 DIL packages.65 3.4 Memory Organization for the 68000.67 3.5 The structure of an asynchronous common-bus micro-computer.72 3.6 The 68000/8 Read cycle.73 3.7 The 68000/8 Write cycle.75 3.8 A simple address decoder with no-wait feedback circuitry.77 3.9 A DTACK generator for slow devices.78 3.10 A simple word-sized output port.80 3.11 Interfacing 6264 RAM ICs to the 68000 MPU.81 3.12 Fast EPROM interface.82 3.13 Interfacing the 68230 PI/T to the 68000"s buses.83 3.14 Interfacing a 6821 Peripheral Interface Adapter to the 68000.84 4.1 Multiple moves to and from memory.90 4.2 Multiple precision addition.93 4.3 UsingDBccto implement a loop structure.101 4.4 Two examples of machine coding.114 5.1 Subroutine calling.124 5.2 Saving the return address on the Stack.126 5.3 The stack when executing the code of Table 5.3(b), viewed as word-oriented.128 viii
LIST OF FIGURES ix 5.4 The Stack corresponding to Table 5.6.132 5.5 The Stack used for theBLOCK_COPYsubroutine.134 5.6 The 6809 System stack organized by the array averaging subroutine.136 5.7 The 68000 System stack organized by the array-averaging subroutine.138 6.1 Detecting and measuring an asynchronous external event.142 6.2 Interrupt logic for the 6809 and 68000 processors.145 6.3 Using a priority encoder to compress 7 lines to 3-line code.146 6.4 How the 6809 responds to an interrupt request149 6.5 How the 68000 responds to an interrupt request151 6.6 Using an external interrupt flag to drive a level-sensitive interrupt line.153 6.7 Servicing four peripherals with one interrupt.157 6.8 External interrupt hardware for the 68000 MPU.158 7.1 Onion skin view of the steps leading to an executable program.170 7.2 Assembly-level machine code translation.172 7.3 Assembly environment.188 7.4 Syntax tree forsum = (n+1) * n/2;191 7.5 The WhitesmithsCcompiler process.194 8.1 Structure ofCprograms.203 8.2 Properties of simple object types.204 8.3 Basic set ofCdata types.205 8.4 Type promotions.222 8.5 Simple 2-way decisions.224 8.6 Usingelse-ifto make a multi-way decision.227 8.7switch-casemulti-way decision.229 8.8 Loopconstructs.231 9.1 Layout ofCprograms.237 9.2 The System stack as seen from withinpower(), lines 21-38.243 9.3 Array storage in memory.249 9.4 A simple write-only port at0x9000.255 9.5 Register structure of a 6821 PIA.262 11.1 A typical long-persistence display.311 11.2 Characteristic scrolling display of a time-compressed memory.312 11.3 Block diagram of the electrocardiograph time compressed memory.316 11.4 A broad outline of system development.318 11.5 Fundamental chip-level design.320 11.6 A cost versus production comparison.322 12.1 The quantization process.325 12.2 The analog-digital process.328 12.3 Illustrating aliasing.329 12.4 A 4th-order anti-aliasing filter.330 12.5 The R-2R current D/A converter.331 12.6 Conversion relationships for the network of Fig. 12.5.333 12.7 A real-world transfer characteristic.334 x LIST OF FIGURES
12.8 The AD7528 dual D/A converter.335 12.9 Interfacing the AD7528 to a microprocessor.336 12.10 A 3-bit flash A/D converter.338 12.11 A software controlled successive approximation D/A converter.339 12.12 Functional diagram of the AD7576 A/D converter.340 12.13 Interfacing the AD7576 to a microprocessor.342 12.14 Aperture error.343 13.1 The 6809-based embedded microprocessor implementation.347 13.2 A PAL-based 6809 address decoder implementation.349 13.3 The 68008-based embedded microprocessor implementation.352 13.4 A PAL-based 68008 address decoder implementation.353 14.1 Data stored as a circular array.356 15.1 Tracing functionsum_of_n().392 15.2 Illustrating the function path in reaching line 27.393 15.3 Simulating the time-compressed memory software.394 15.4 Simulating an interrupt entry intoupdate().395 15.5 Mixed-mode simulation using XRAY68K.396 15.6 Free-running your microprocessor.398 15.7 One free-run cycle, showingRAM,A/DandDIG_O/PEnables.399 15.8 Theoutput_test()traces.404 15.9 A typical PC-based ICE configuration.410 16.1 Typical X and Y waveforms, showing two ECG traces covering 2s.420 List of Tables 2.1 Move instructions.21 2.2 Arithmetic operations24 2.3 Shifting Instructions.26 2.4 Logic instructions.27 2.5 Data test operations.28 2.6 Operations which affect the Program Counter.29 2.7 The M6809 instruction set33 2.8 Initializing a 256-byte array.34 2.9 Source code for sum ofnintegers program.45 2.10 Object code generated from Table 2.9.46 2.11 A superior implementation.47 2.12 16-bit binary to an equivalent ASCII-coded decimal string.49 2.13 Fundamental factorial-ncode.53 2.14 Factorial using a look-uptable.54 4.1 Move instructions.88 4.2 Arithmetic operations.91 4.3 Shifting instructions.95 4.4 Logic Instructions.97 4.5 Bit-level instructions.98 4.6 Data testing instructions.99 4.7 Instructions which affect the Program Counter.100 4.8 Summary of 68000 instructions.105 4.9 A summary of 68000 address modes.113 4.10 Object code for sum ofnintegers program.115 4.11 A superior implementation.116 4.12 Binary to decimal string conversion.118 4.13 Mathematical evaluation of factorialn.119 4.14 Factorial using a look-uptable.120 5.1 Subroutine instructions.125 5.2 A simple subroutine giving a fixed delay of 100ms when called.127 5.3 Transparent 100ms delay subroutine.129 5.4 Using a register to pass the delay parameter.130 5.5 Using a static memory location to pass the delay parameter.131 5.6 Using the stack to pass the delay parameter.132 5.7 Making a copy of a block of data of arbitrary length.133 5.8 Using a frame to acquire temporary data; 6809 code.137 5.9 Using a Frame to acquire temporary data; 68000 code.139 xi xii LIST OF TABLES
6.1 6809 code displaying heart rate on an oscilloscope.155 6.2 68000 code displaying heart rate on an oscilloscope.160 6.3 Exception related instructions.162 7.1 Source code for the absolute assembler.173 7.2 A typical error file.173 7.3 Listing file produced from the source code in Table 7.1.174 7.4 Symbol file produced from the absolute source of Table 7.1.174 7.5 Some common absolute object file formats.176 7.6 A simple macro creating the modulus of the target operand.177 7.7 Assembling the Display module with the Microtec Relocatable assembler.181 quotesdbs_dbs5.pdfusesText_9
×
if you Get
No preview available Click on (Next PDF)
Next PDF