Muutke küpsiste eelistusi

E-raamat: Art of Assembly Language Programming Using PIC(R) Technology: Core Fundamentals

(Vital Innovations LLC)
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 24-Apr-2019
  • Kirjastus: Newnes (an imprint of Butterworth-Heinemann Ltd )
  • Keel: eng
  • ISBN-13: 9780128126189
Teised raamatud teemal:
  • Formaat - EPUB+DRM
  • Hind: 65,45 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 24-Apr-2019
  • Kirjastus: Newnes (an imprint of Butterworth-Heinemann Ltd )
  • Keel: eng
  • ISBN-13: 9780128126189
Teised raamatud teemal:

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

The Art of Assembly Language Programming using PICmicro® Technology: Core Fundamentals thoroughly covers assembly language as used in programming the PIC Microcontroller (MCU.) Using the minimal instruction set characteristic of all PICmicro® products, the author elaborates on how to execute loops, control timing and disassemble code from C mnemonics. Detailed memory maps assist the reader with tricky areas of code. Math routines are carefully dissected to enhance understanding of minute code changes. Appendices are provided on basic math routines to supplement the readers’ background. In depth coverage is further provided on paging techniques, unique to the PICmicro® 16C57 series controller.

This book is written for an audience with a broad range of skill levels, relevant to both the absolute beginner and the skilled C embedded programmer. A supplemental appendix on ‘Working with a Consultant’ provides advice on working with consultants, in general, and on selecting an appropriate consultant within the microchip design consultant program. With this book you will learn: the symbols and terminology used by programmers and engineers in microprocessor applications; how to program using assembly language through examples and applications; how to program a microchip microprocessor, selecting the processor with minimal memory, and therefore minimal cost options; how to locate resources for more in-depth material content; and how to convert higher level language ICs to a lower level language.

  • Teaches how to start writing simple code, e.g., PICmicro® 10FXXX and 12FXXX
  • Offers unique and novel approaches to add your personal touch using PICmicro® ‘bread and butter’ enhanced mid-range 16FXXX and 18FXXX processors
  • Teaches new coding and math knowledge to help build your skill sets
  • Shows how to dramatically reduce product cost by achieving 100% control
  • Demonstrates how to gain optimization over C programming, reduce code space, tighten up timing loops, reduce the size of microcontrollers required and lower overall product cost
Preface xiii
Chapter 1 Introduction
1(12)
Practical Applications
1(1)
Why Assembly?
2(1)
Core Families ("Baseline," "Midrange," "Enhanced Midrange," "High Performance")
3(2)
Baseline
3(1)
Midrange
4(1)
Enhanced Midrange
4(1)
High Performance
4(1)
Data Sheet---Walk Through
5(2)
Straight Line Program Implementation
7(1)
Think of a Number
7(1)
Double It
8(1)
Add 10 (Decimal)
8(1)
Halve It
8(1)
Subtract Original Number
8(1)
Compare Output to 5
8(1)
Looped Code Implementation
8(2)
Microchip Tools
10(1)
Microchip Microcontroller Course Information
10(1)
Jargon Note---Italics
11(1)
Word Search
11(1)
Binary Puzzle
12(1)
Further Reading
12(1)
Chapter 2 Microchip 8-Bit Architecture
13(14)
The Microprocessor
13(1)
System Clock
13(2)
Execution Cycle
15(1)
Instruction Flow Pipelining
16(1)
Bus for Data and Program
16(1)
Hardware Interfaces
16(4)
Input/Output Interface
17(1)
Comparator Interface
18(1)
Timer 0 Interface
18(1)
Flash Programming Interface
18(1)
Oscillator Output
19(1)
Master Clear Reset
20(1)
Hardware Organization of Memory Address Space
20(1)
Data Memory and File Registers
20(1)
Arithmetic Logic Unit (ALU) and the W Register
20(2)
Prototyping
22(1)
Word Search
23(2)
Puzzle: Oscillator
25(1)
Further Reading
25(2)
Chapter 3 Instruction Sets
27(20)
Instruction Set Comparison for PICmicro 10F, 12F, 16F, 18F Controllers
27(1)
Common 33 Instruction Set for PICmicro Controllers
27(13)
Instructions
28(7)
Registers
35(4)
Ports
39(1)
Timers
39(1)
Addressing
40(1)
Direct
40(1)
Indirect
40(1)
Indexed/Relative
41(1)
Code Example
41(1)
Paging Consideration
42(1)
Word Search: Instruction Set
43(1)
Puzzle: Instruction Set
43(2)
Further Reading
45(2)
Chapter 4 Beginning Code
47(12)
Subroutines
47(1)
Macros
48(1)
Elementary Programs
49(5)
ACC Convention
49(1)
8-Bit Data Transfer
49(1)
16-Bit Data Transfer
50(1)
8-Bit Addition
50(1)
8-Bit Subtraction
50(1)
8-Bit Multiply by Two (Rotate Left 1 Bit)
51(1)
8-Bit Multiply by Four (Shift Left 2 Bits)
51(1)
8-Bit Divide by Two (Rotate Right 1 Bit)
52(1)
Mask Off Most Significant 4 Bits
52(1)
Mask Off Least Significant 4 Bits
52(1)
Clear a Memory Location
53(1)
Set a Memory Location to All Ones
53(1)
Find Larger of Two Numbers
53(1)
Find Smaller of Two Numbers
54(1)
Program Counter Addressing
54(1)
Application Notes
54(1)
Interrupts and Jump Tables (AN514)
54(1)
Stacks (AN534)
55(1)
Calculate Timing
56(1)
Word Search: Beginning Code
57(1)
Puzzle: Number Square
57(1)
Further Reading
58(1)
Reference
58(1)
Chapter 5 Looping Code
59(14)
Loops Introduction
59(3)
8-Bit Sum of Data
62(2)
Looped Code Example
64(2)
Partial Straight Line Code Example
66(1)
Macros for Page and Bank Switching (AN586)
67(1)
Long Conditional Branch Vectors (AN581)
68(1)
Word Search: Loops Code
69(1)
Puzzle: Loops Code
70(1)
Further Reading
71(2)
Chapter 6 Embedded Control Fundamentals
73(10)
Embedded Control
73(1)
Electrical Wiring Diagrams
73(1)
Breadboards
74(1)
Basic Input and Output (I/O)
75(3)
Specialized Input/Output
78(1)
Timer Modules and Registers
78(1)
Hardware Alone
79(1)
Hardware and Software
79(1)
Software Alone
79(1)
Development Boards
79(1)
Word Search: Embedded Control
80(1)
Puzzle: Flustered
80(1)
Further Reading
81(2)
Chapter 7 Fundamentals of Good Practice
83(26)
Structured Programming
83(1)
Software Design Patterns
84(1)
Reusable Code Guidelines
84(1)
Ordered Lists
85(2)
Ordered Lists Example
85(2)
Structured Systems Development (SSD): Four Basic Structures
87(1)
Programming Flowcharts
88(17)
Warnier-Orr Diagrams
88(1)
State Machine Diagrams
89(3)
Pseudocode
92(1)
SysML
92(13)
Word Search: Program Design and Development
105(1)
Puzzle: Spiral
106(2)
Further Reading
108(1)
Chapter 8 Data and Control Structures
109(14)
Assembly Language Concepts
109(2)
Config Word
109(1)
Using DEFINE
110(1)
Program Structures
111(1)
Subprograms
111(1)
Subroutines
111(1)
Macros
111(1)
Procedures
111(1)
Functions
112(1)
Recursive Procedures
112(1)
Termination
112(1)
Data Structures
112(6)
Handling Data in ASCII
113(1)
Character Coded Data
113(2)
Character Operations
115(1)
Character Operations
116(2)
Control Structures
118(3)
Function
118(1)
Sequence
119(1)
Alternation (or Multiple Selections)
119(1)
Repetition (or Iteration)
120(1)
Word Search: Data Structures
121(1)
Puzzle: Jigsaw Sudoku 66h
122(1)
Further Reading
122(1)
References
122(1)
Chapter 9 Logic and Numbering Systems
123(18)
Boolean Algebra
123(6)
Logical Operators
124(5)
Polynomial Systems
129(5)
Decimal System
129(1)
Binary, Octal, Hexadecimal, Decimal
129(1)
Binary System
130(1)
Octal System
131(1)
Hexadecimal System
132(1)
Mixed Radix Systems
133(1)
Multibyte Integers
134(1)
Hexadecimal to Binary Conversions
134(1)
Little-Endian vs. Big-Endian
134(1)
Signed and Unsigned Integers
134(3)
Signed and Unsigned
134(3)
Floating Point
137(1)
BCD as a Type
137(1)
Binary Coded Decimal
137(1)
ASCII---Single-Byte Characters
138(1)
ASCII
138(1)
Unicode---Multibyte Characters
138(1)
Unicode
138(1)
Word Search
139(1)
Puzzle: Diamond 22h
140(1)
Further Reading
140(1)
Chapter 10 Mathematical Operations
141(12)
#Include Mathematical Routines
141(1)
Application Notes in Standard and High Performance Microprocessors
141(2)
Single and Double Precision Arithmetic
142(1)
Signed Arithmetic
142(1)
Select Optimization: Speed or Memory
142(1)
Conditional Assembly
143(1)
HI/LO Conventions
143(1)
Specific Math Utility Routines
143(4)
Advanced Macro Features
143(4)
Featured 8-Bit MCU Boards
147(4)
Automotive Networking Development Board
147(1)
Curiosity Development Board
147(1)
Curiosity High Pin Count (HPC) Development Board
148(1)
Explorer 8 Development Kit
149(1)
PICDEM Lab II Development Platform
150(1)
Word Search: Mathematical Operations
151(1)
Puzzle: Number Tower
152(1)
Further Reading
152(1)
Chapter 11 Word Search Solution
153(10)
Chapter 12 Puzzle Solutions
163(10)
Appendix A Instruction Sets 173(22)
Appendix B ASCII Characters 195(8)
Appendix C Decimal-Binary-Hexadecimal Characters 203(8)
Appendix D Best Practices 211(2)
Appendix E 213(88)
Appendix F 301(136)
Index 437
Theresa Schousek has been a Microchip (R) Design Partner for 20 years as President, Chief Engineer, and Owner of Vital Innovations LLC. She began her work with computers in 1983 with a Commodore (R) 64. Prior to working as an independent design consultant, she worked for nearly 10 years in the automotive industry for General Motors Delphi Delco Electronics. She thrives on innovative design and has three process and sensor patented designs, plus one international patent. She is the sole inventor of General Motor's first infant seat and occupant detection system to inhibit airbag deployment. This system, and its derivatives, have 223 citations and is currently in production, 22 years later.

Theresa earned a BSCEE from Purdue University, a dual accredited degree in Electrical Engineering and Computer Engineering. She earned a Master of Business Administration, with a practicum in operational process design, from University of Wisconsin, River Falls, in 2011.