Programming 32-bit microcontrollers in C: exploring the PIC32
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Amsterdam [u.a.]
Elsevier
2008
|
Schriftenreihe: | Embedded technology series
|
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis Klappentext |
Beschreibung: | XXIII, 527 S. Ill., graph. Darst. 1 CD-ROM (12 cm) |
ISBN: | 9780750687096 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV023327283 | ||
003 | DE-604 | ||
005 | 20130228 | ||
007 | t | ||
008 | 080603s2008 ad|| |||| 00||| eng d | ||
020 | |a 9780750687096 |9 978-0-7506-8709-6 | ||
035 | |a (OCoLC)263720263 | ||
035 | |a (DE-599)BVBBV023327283 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
049 | |a DE-83 |a DE-703 | ||
050 | 0 | |a QA76.6 | |
082 | 0 | |a 005.13/3 |2 22 | |
084 | |a ST 170 |0 (DE-625)143602: |2 rvk | ||
084 | |a ZN 4980 |0 (DE-625)157428: |2 rvk | ||
100 | 1 | |a Di Jasio, Lucio |e Verfasser |4 aut | |
245 | 1 | 0 | |a Programming 32-bit microcontrollers in C |b exploring the PIC32 |c Lucio Di Jasio |
264 | 1 | |a Amsterdam [u.a.] |b Elsevier |c 2008 | |
300 | |a XXIII, 527 S. |b Ill., graph. Darst. |e 1 CD-ROM (12 cm) | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a Embedded technology series | |
650 | 4 | |a C (Langage de programmation) | |
650 | 4 | |a Microcontrôleurs - Programmation | |
650 | 4 | |a C (Computer program language) | |
650 | 4 | |a Microcontrollers |x Programming | |
650 | 0 | 7 | |a PICmicro |0 (DE-588)4571742-4 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a C |g Programmiersprache |0 (DE-588)4113195-2 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a PICmicro |0 (DE-588)4571742-4 |D s |
689 | 0 | 1 | |a C |g Programmiersprache |0 (DE-588)4113195-2 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m Digitalisierung UB Bayreuth |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
856 | 4 | 2 | |m Digitalisierung UB Bayreuth |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA |3 Klappentext |
Datensatz im Suchindex
_version_ | 1805075821038141440 |
---|---|
adam_text |
Contents
Introduction
.xix
Part
1:
Exploring
.1
Day
1:
The Adventure Begins
.3
The Plan
.3
Preparation
.3
The Adventure Begins
.6
Compiling and Linking
.8
The Linker Script
.10
Building the First Project
.11
Using the Simulator
.12
Finding a Direction
.14
The JTAG Port
.16
Testing PORTB
.17
Mission Debriefing
.19
Notes for the Assembly Experts
.20
Notes for the PIC MCU Experts
.22
Notes for the
С
Experts
.22
Tips
&
Tricks
.22
Exercises
.23
Books
.24
Links
.24
Day
2: Wallung in
Circles
.25
The Plan
.25
Preparation
.25
The Exploration
.27
While Loops
.28
χ
Contents
An Animated
Simulation.31
Using the Logic Analyzer
.35
Debriefing
.37
Notes for the Assembly Experts
.38
Notes for the 8-Bit PIC Microcontroller Experts
.38
Notes for the 16-Bit PIC Microcontroller Experts
.38
Notes for the
С
Experts
.39
Notes for the MIPS Experts
.39
Tips
&
Tricks
.39
Notes on Using the Peripheral Libraries
.40
Exercises
.42
Books
.42
Links
.42
Day
3:
Message in a Bottle
.43
The Plan
.43
Preparation
.43
The Exploration
.43
Do Loops
.44
Variable Declarations
.45
for Loops
.47
More Loop Examples
.48
Arrays
.49
Sending a Message
.50
Testing with the Logic Analyzer
.53
Testing with the Explorer
16
Demonstration Board
.54
Testing with the PIC32 Starter Kit
.55
Debriefing
.57
Notes for the Assembly Experts
.57
Notes for the PIC Microcontroller Experts
.58
Notes for the
С
Experts
.58
Tips
&
Tricks
.59
Exercises
.60
Books
.".'.'.'.".'.'.60
Links
.60
Day
4:
NUMB3RS
.61
The Plan
.61
Preparation
.61
The Exploration
.61
On Optimizations (or Lack Thereof)
.64
Testing
.64
Contents xi
Going long long
.65
Integer Divisions
.67
Floatingpoint
.69
Measuring Performance
.70
Debriefing
.73
Notes for the Assembly Experts
.73
Notes for the 8-Bit PIC® Microcontroller Experts
.75
Notes for the 16-Bit PIC and dsPIC® Microcontroller Experts
.76
Tips
&
Tricks
.77
Exercises
.78
Books
.79
Links
.79
Day
5:
Interrupts
.81
The Plan
.81
Preparation
.81
The Exploration
.81
Interrupts and Exceptions
.82
Sources of Interrupt
.84
Interrupt Priorities
.85
Interrupt Handlers Declaration
.88
The Interrupt Management Library
.90
Single Vector Interrupt Management
.90
Managing Multiple Interrupts
.95
Multivectored Interrupt Management
.98
A Simple Application
.103
The Secondary Oscillator
.108
The Real-Time Clock Calendar (RTCC)
.109
Debriefing
.111
Notes for the PIC Microcontroller Experts
.111
Tips
&
Tricks
.112
Exercises
.113
Books
.113
Links
.113
Day
6:
Memory
.115
The Plan
.115
Preparation
.115
The Exploration
.116
Memory Space Allocation
.118
Looking at the MAP
.123
Pointers
.127
xii Contents _
The Heap
.
128
The PIC32MX Bus
.129
PIC32MX Memory Mapping
.130
The Embedded-Control Memory Map
.134
Debriefing
.135
Notes for the
С
Experts
.135
Notes for the Assembly Experts
.136
Notes for the PIC Microcontroller Experts
.136
Tips
&
Tricks
.137
Exercises
.137
Books
.138
Links
.138
Part
2:
Experimenting
.139
Day
7:
Running
.141
The Plan
.141
Preparation
.141
The Exploration
.142
Performance vs. Power Consumption
.144
The Primary Oscillator Clock Chain
.146
The Peripheral Bus Clock
.147
Initial Device Configuration
.148
Setting Configuration Bits in Code
.150
Heavy Stuff
.152
Ready, Set, Go!
.158
Fine-Tuning the PIC32: Configuring Rash Wait States
.160
Fine-Tuning the PIC32: Enabling the Instruction and Data Cache
.163
Fine-Tuning the PIC32: Enabling the Instruction Pre-Fetch
.164
Fine-Tuning the PIC32: Final Notes
.165
Debriefing
.167
Notes for the Assembly Experts
.167
Notes for the PIC® Microcontroller Experts
.167
Tips
&
Tricks
.168
Exercises
.171
Books
.171
Links
.171
Day
8:
Communication
.773
The Plan
.173
Preparation
.173
The Exploration
.174
Contents xiii
Synchronous Serial
Interfaces.174
Asynchronous Serial Interfaces
.176
Parallel Interfaces
.177
Synchronous Communication Using the
SPI
Modules
.178
Testing the Read Status Register Command
.182
Writing Data to the
EEPROM
.186
Reading the Memory Contents
.187
A 32-bit Serial
EEPROM
Library
.187
Testing the New SEE Library
.191
Debriefing
.193
Notes for the
С
Experts
.193
Notes for the Explorer
16
Experts
.193
Notes for the PIC24 Experts
.194
Tips
&
Tricks
.194
Exercises
.195
Books
.196
Links
.196
Day
9:
Asynchronous Communication
.197
The Plan
.197
Preparation
.197
The Exploration
.197
UART Configuration
.200
Sending and Receiving Data
.202
Testing the Serial Communication Routines
.204
Building a Simple Console Library
.206
Testing a VT
100
Terminal
.209
The Serial Port as a Debugging Tool
.211
The Matrix Project
.211
Debriefing
.214
Notes for the
С
Experts
.214
Notes for the PIC® Microcontroller Experts
.215
Tips
&
Tricks
.215
Exercises
.216
Books
.216
Links
.217
Day
10:
Class
=
Bliss
.219
The Plan
.219
Preparation
.219
The Exploration
.219
HD44780 Controller Compatibility
.221
xiv Contents
The Parallel Master Port.223
Configuring the PMP for
LCD Module
Control
.224
A Small Library of Functions to Access an LCD Display
.225
Building an LCD Library and Using the PMP Library
.231
Creating the include and lib Directories
.237
Advanced LCD Control
.240
Progress Bar Project
.241
Debriefing
.245
Notes for the PIC24 Experts
.245
Tips
&
Tricks
.246
Exercises
.246
Books
.247
Links
.247
Day
11:
It's an Analog World
.249
The Plan
.249
Preparation
.249
The Exploration
.249
The First Conversion
.253
Automating Sampling Timing
.254
Developing a Demo
.255
Creating Our Own Mini ADC Library
.257
Fun and Games
.258
Sensing Temperature
.261
Debriefing
.266
Notes for the PIC24 Experts
.266
Tips
&
Tricks
.267
Exercises
.267
Books
.268
Links
.268
Part
3:
Expansion
.269
Day
12:
Capturing User Inputs
.271
The Plan
.271
Preparation
.271
Buttons and Mechanical Switches
.272
Button Input Packing
.275
Button Inputs Debouncing
.277
Rotary Encoders
.280
Interrupt-Driven Rotary Encoder Input
.283
Keyboards
.288
PS/2
Physical Interface
.288
Contents xv
The
PS/2
Communication
Protocol
.289
Interfacing the PIC32 to the
PS/2.290
Input Capture
.290
Testing Using a Stimulus Scripts
.296
The Simulator Profiler
.301
Change Notification
.302
Evaluating Cost
.308
I/O Polling
.309
Testing the I/O Polling Method
.314
Cost and Efficiency Considerations
.317
Keyboard Buffering
.319
Key Code Decoding
.324
Debriefing
.328
Notes for the PIC24 Experts
.329
Tips
&
Tricks
.329
Exercises
.330
Books
.330
Links
.331
Day
13:
UTube
.333
The Plan
.333
Preparation
.333
The Exploration
.334
Generating the Composite Video Signal
.337
The Output Compare Modules
.342
Image Buffers
.345
Serialization, DMA, and Synchronization
.346
Completing a Video Library
.353
Testing the Composite Video
.357
Measuring Performance
.360
Seeing the Dark Screen
.360
Test Pattern
.362
Plotting
.364
A Starry Night
.366
Line Drawing
.368
Bresenham
Algorithm
.370
Plotting Math Functions
.373
Two-Dimensional Function Visualization
.376
Fractals
.38
1
Text
.389
Printing Text on Video
.
391
Text Test
.394
xvi Contents
The Matrix
Reloaded
.395
Debriefing
.398
Notes for the PIC24 Experts
.399
Tips
&
Tricks
.399
Exercises
.401
Books
.402
Links
.402
Day
14:
Mass Storage
.403
The Plan
.403
Preparation
.403
The Exploration
.404
The Physical Interface
.405
Interfacing to the Explorer
16
Board
.406
Starting a New Project
.407
Selecting the
SPI
Mode of Operation
.408
Sending Commands in
SPI
Mode
.408
Completing the SD Card Initialization
.411
Reading Data from an SD/MMC Card
.413
Writing Data to an SD/MMC Card
.416
Testing the SD/MMC Interface
.419
Debriefing
.424
Tips
&
Tricks
.425
Exercises
.426
Books
.426
Links
.426
Day
15:
File I/O
.427
The Plan
.427
Preparation
.427
The Exploration
.428
Sectors and Clusters
.428
The File Allocation Table
.429
The Root Directory
.430
The Treasure Hunt
.433
Opening a File
.444
Reading Data from a File
.454
Closing a File
.459
The Fileio Module
.460
Testing
f
openM
( )
and
f
readM
( ) .463
Writing Data to a File
.465
Closing a File, Take Two
.
47I
Contents xvii
Accessory Functions
.473
Testing the Complete Fileio Module
.476
Code Size
.480
Debriefing
.481
Tips
&
Tricks
.481
Exercises
.482
Books
.482
Links
.483
Day
16:
Musica,
Maestro!
.485
The Plan
.485
Preparation
.485
The Exploration
.486
OC
PWM Mode
.488
Testing the PWM as a
D/A
Converter
.490
Producing Analog Waveforms
.492
Reproducing Voice Messages
.497
A Media Player
.498
The WAVE File Format
.500
The PlayO Function
.501
The Audio Routines
.510
A Simple WAVE File Player
.513
Debriefing
.515
Tips
&
Tricks
.516
Exercises
.516
Books
.516
Links
.517
Disclaimer
.517
Final Note for the Experts
.517
Index
.519
Microelectronics / Computer Engineering
Programming 32-bit Microcontrollers in
С
Exploring the PIC32
Lucio Di
Jasio
•
Just months after the introduction of the new generation of 32-bit PIC microcontrollers,
a Microchip insider and acclaimed author takes you by hand in the exploration of the PIC32
•
Free CD-ROM includes source code in
С
and the Microchip MPLAB C32 compiler
•
Includes handy checklists to help readers perform the most common programming and
debugging tasks
The new 32-bit microcontrollers bring the promise of more speed and more performance while
offering an unprecedented level of compatibility with existing 8-and 16-bit PIC microcontrollers.
In sixteen engaging chapters, using a parallel track to his previous title dedicated to 16-bit
programming, the author puts all these claims to the test while offering a gradual introduction to
the development and debugging of embedded control applications in C.
Author
Lucio
Di Jasio,
a PIC and embedded control expert, offers unique insight into the new
32-bit architecture while developing a number of projects of growing complexity.
Experienced PIC users and newcomers to the field alike will benefit from the book's many thor¬
ough examples which demonstrate how to nimbly side-step common obstacles, solve real-world
design problems efficiently, and optimize code using the new PIC32 features and peripheral set.
You will learn about:
•
basic timing and I/O operation
•
debugging methods with the MPLAB SIM simulator and ICD tools
•
multitasking using the PIC32 interrupts
•
all the new hardware peripherals
•
how to control LCD displays
•
experimenting with the Exploreri
6
board and the PIC32 Starter Kit
•
accessing mass-storage media
•
generating audio and video signals
•
and more!
Related titles:
Di Jasio,
Programming 16-bit Microcontrollers in C,
9780750682923
Curtis, Embedded Multitasking with Small Microcontrollers,
9780750679183
Huddleston, Intelligent Sensor Design Using the Microchip dsPIC
9780750677554
Bates, PIC Microcontrollers: An Introduction to Microelectronics, 2e,
9780750662673 |
adam_txt |
Contents
Introduction
.xix
Part
1:
Exploring
.1
Day
1:
The Adventure Begins
.3
The Plan
.3
Preparation
.3
The Adventure Begins
.6
Compiling and Linking
.8
The Linker Script
.10
Building the First Project
.11
Using the Simulator
.12
Finding a Direction
.14
The JTAG Port
.16
Testing PORTB
.17
Mission Debriefing
.19
Notes for the Assembly Experts
.20
Notes for the PIC MCU Experts
.22
Notes for the
С
Experts
.22
Tips
&
Tricks
.22
Exercises
.23
Books
.24
Links
.24
Day
2: Wallung in
Circles
.25
The Plan
.25
Preparation
.25
The Exploration
.27
While Loops
.28
χ
Contents
An Animated
Simulation.31
Using the Logic Analyzer
.35
Debriefing
.37
Notes for the Assembly Experts
.38
Notes for the 8-Bit PIC Microcontroller Experts
.38
Notes for the 16-Bit PIC Microcontroller Experts
.38
Notes for the
С
Experts
.39
Notes for the MIPS Experts
.39
Tips
&
Tricks
.39
Notes on Using the Peripheral Libraries
.40
Exercises
.42
Books
.42
Links
.42
Day
3:
Message in a Bottle
.43
The Plan
.43
Preparation
.43
The Exploration
.43
Do Loops
.44
Variable Declarations
.45
for Loops
.47
More Loop Examples
.48
Arrays
.49
Sending a Message
.50
Testing with the Logic Analyzer
.53
Testing with the Explorer
16
Demonstration Board
.54
Testing with the PIC32 Starter Kit
.55
Debriefing
.57
Notes for the Assembly Experts
.57
Notes for the PIC Microcontroller Experts
.58
Notes for the
С
Experts
.58
Tips
&
Tricks
.59
Exercises
.60
Books
.".'.'.'.".'.'.60
Links
.60
Day
4:
NUMB3RS
.61
The Plan
.61
Preparation
.61
The Exploration
.61
On Optimizations (or Lack Thereof)
.64
Testing
.64
Contents xi
Going long long
.65
Integer Divisions
.67
Floatingpoint
.69
Measuring Performance
.70
Debriefing
.73
Notes for the Assembly Experts
.73
Notes for the 8-Bit PIC® Microcontroller Experts
.75
Notes for the 16-Bit PIC and dsPIC® Microcontroller Experts
.76
Tips
&
Tricks
.77
Exercises
.78
Books
.79
Links
.79
Day
5:
Interrupts
.81
The Plan
.81
Preparation
.81
The Exploration
.81
Interrupts and Exceptions
.82
Sources of Interrupt
.84
Interrupt Priorities
.85
Interrupt Handlers Declaration
.88
The Interrupt Management Library
.90
Single Vector Interrupt Management
.90
Managing Multiple Interrupts
.95
Multivectored Interrupt Management
.98
A Simple Application
.103
The Secondary Oscillator
.108
The Real-Time Clock Calendar (RTCC)
.109
Debriefing
.111
Notes for the PIC Microcontroller Experts
.111
Tips
&
Tricks
.112
Exercises
.113
Books
.113
Links
.113
Day
6:
Memory
.115
The Plan
.115
Preparation
.115
The Exploration
.116
Memory Space Allocation
.118
Looking at the MAP
.123
Pointers
.127
xii Contents _
The Heap
.
128
The PIC32MX Bus
.129
PIC32MX Memory Mapping
.130
The Embedded-Control Memory Map
.134
Debriefing
.135
Notes for the
С
Experts
.135
Notes for the Assembly Experts
.136
Notes for the PIC Microcontroller Experts
.136
Tips
&
Tricks
.137
Exercises
.137
Books
.138
Links
.138
Part
2:
Experimenting
.139
Day
7:
Running
.141
The Plan
.141
Preparation
.141
The Exploration
.142
Performance vs. Power Consumption
.144
The Primary Oscillator Clock Chain
.146
The Peripheral Bus Clock
.147
Initial Device Configuration
.148
Setting Configuration Bits in Code
.150
Heavy Stuff
.152
Ready, Set, Go!
.158
Fine-Tuning the PIC32: Configuring Rash Wait States
.160
Fine-Tuning the PIC32: Enabling the Instruction and Data Cache
.163
Fine-Tuning the PIC32: Enabling the Instruction Pre-Fetch
.164
Fine-Tuning the PIC32: Final Notes
.165
Debriefing
.167
Notes for the Assembly Experts
.167
Notes for the PIC® Microcontroller Experts
.167
Tips
&
Tricks
.168
Exercises
.171
Books
.171
Links
.171
Day
8:
Communication
.773
The Plan
.173
Preparation
.173
The Exploration
.174
Contents xiii
Synchronous Serial
Interfaces.174
Asynchronous Serial Interfaces
.176
Parallel Interfaces
.177
Synchronous Communication Using the
SPI
Modules
.178
Testing the Read Status Register Command
.182
Writing Data to the
EEPROM
.186
Reading the Memory Contents
.187
A 32-bit Serial
EEPROM
Library
.187
Testing the New SEE Library
.191
Debriefing
.193
Notes for the
С
Experts
.193
Notes for the Explorer
16
Experts
.193
Notes for the PIC24 Experts
.194
Tips
&
Tricks
.194
Exercises
.195
Books
.196
Links
.196
Day
9:
Asynchronous Communication
.197
The Plan
.197
Preparation
.197
The Exploration
.197
UART Configuration
.200
Sending and Receiving Data
.202
Testing the Serial Communication Routines
.204
Building a Simple Console Library
.206
Testing a VT
100
Terminal
.209
The Serial Port as a Debugging Tool
.211
The Matrix Project
.211
Debriefing
.214
Notes for the
С
Experts
.214
Notes for the PIC® Microcontroller Experts
.215
Tips
&
Tricks
.215
Exercises
.216
Books
.216
Links
.217
Day
10:
Class
=
Bliss
.219
The Plan
.219
Preparation
.219
The Exploration
.219
HD44780 Controller Compatibility
.221
xiv Contents
The Parallel Master Port.223
Configuring the PMP for
LCD Module
Control
.224
A Small Library of Functions to Access an LCD Display
.225
Building an LCD Library and Using the PMP Library
.231
Creating the include and lib Directories
.237
Advanced LCD Control
.240
Progress Bar Project
.241
Debriefing
.245
Notes for the PIC24 Experts
.245
Tips
&
Tricks
.246
Exercises
.246
Books
.247
Links
.247
Day
11:
It's an Analog World
.249
The Plan
.249
Preparation
.249
The Exploration
.249
The First Conversion
.253
Automating Sampling Timing
.254
Developing a Demo
.255
Creating Our Own Mini ADC Library
.257
Fun and Games
.258
Sensing Temperature
.261
Debriefing
.266
Notes for the PIC24 Experts
.266
Tips
&
Tricks
.267
Exercises
.267
Books
.268
Links
.268
Part
3:
Expansion
.269
Day
12:
Capturing User Inputs
.271
The Plan
.271
Preparation
.271
Buttons and Mechanical Switches
.272
Button Input Packing
.275
Button Inputs Debouncing
.277
Rotary Encoders
.280
Interrupt-Driven Rotary Encoder Input
.283
Keyboards
.288
PS/2
Physical Interface
.288
Contents xv
The
PS/2
Communication
Protocol
.289
Interfacing the PIC32 to the
PS/2.290
Input Capture
.290
Testing Using a Stimulus Scripts
.296
The Simulator Profiler
.301
Change Notification
.302
Evaluating Cost
.308
I/O Polling
.309
Testing the I/O Polling Method
.314
Cost and Efficiency Considerations
.317
Keyboard Buffering
.319
Key Code Decoding
.324
Debriefing
.328
Notes for the PIC24 Experts
.329
Tips
&
Tricks
.329
Exercises
.330
Books
.330
Links
.331
Day
13:
UTube
.333
The Plan
.333
Preparation
.333
The Exploration
.334
Generating the Composite Video Signal
.337
The Output Compare Modules
.342
Image Buffers
.345
Serialization, DMA, and Synchronization
.346
Completing a Video Library
.353
Testing the Composite Video
.357
Measuring Performance
.360
Seeing the Dark Screen
.360
Test Pattern
.362
Plotting
.364
A Starry Night
.366
Line Drawing
.368
Bresenham
Algorithm
.370
Plotting Math Functions
.373
Two-Dimensional Function Visualization
.376
Fractals
.38
1
Text
.389
Printing Text on Video
.
391
Text Test
.394
xvi Contents
The Matrix
Reloaded
.395
Debriefing
.398
Notes for the PIC24 Experts
.399
Tips
&
Tricks
.399
Exercises
.401
Books
.402
Links
.402
Day
14:
Mass Storage
.403
The Plan
.403
Preparation
.403
The Exploration
.404
The Physical Interface
.405
Interfacing to the Explorer
16
Board
.406
Starting a New Project
.407
Selecting the
SPI
Mode of Operation
.408
Sending Commands in
SPI
Mode
.408
Completing the SD Card Initialization
.411
Reading Data from an SD/MMC Card
.413
Writing Data to an SD/MMC Card
.416
Testing the SD/MMC Interface
.419
Debriefing
.424
Tips
&
Tricks
.425
Exercises
.426
Books
.426
Links
.426
Day
15:
File I/O
.427
The Plan
.427
Preparation
.427
The Exploration
.428
Sectors and Clusters
.428
The File Allocation Table
.429
The Root Directory
.430
The Treasure Hunt
.433
Opening a File
.444
Reading Data from a File
.454
Closing a File
.459
The Fileio Module
.460
Testing
f
openM
( )
and
f
readM
( ) .463
Writing Data to a File
.465
Closing a File, Take Two
.
47I
Contents xvii
Accessory Functions
.473
Testing the Complete Fileio Module
.476
Code Size
.480
Debriefing
.481
Tips
&
Tricks
.481
Exercises
.482
Books
.482
Links
.483
Day
16:
Musica,
Maestro!
.485
The Plan
.485
Preparation
.485
The Exploration
.486
OC
PWM Mode
.488
Testing the PWM as a
D/A
Converter
.490
Producing Analog Waveforms
.492
Reproducing Voice Messages
.497
A Media Player
.498
The WAVE File Format
.500
The PlayO Function
.501
The Audio Routines
.510
A Simple WAVE File Player
.513
Debriefing
.515
Tips
&
Tricks
.516
Exercises
.516
Books
.516
Links
.517
Disclaimer
.517
Final Note for the Experts
.517
Index
.519
Microelectronics / Computer Engineering
Programming 32-bit Microcontrollers in
С
Exploring the PIC32
Lucio Di
Jasio
•
Just months after the introduction of the new generation of 32-bit PIC microcontrollers,
a Microchip insider and acclaimed author takes you by hand in the exploration of the PIC32
•
Free CD-ROM includes source code in
С
and the Microchip MPLAB C32 compiler
•
Includes handy checklists to help readers perform the most common programming and
debugging tasks
The new 32-bit microcontrollers bring the promise of more speed and more performance while
offering an unprecedented level of compatibility with existing 8-and 16-bit PIC microcontrollers.
In sixteen engaging chapters, using a parallel track to his previous title dedicated to 16-bit
programming, the author puts all these claims to the test while offering a gradual introduction to
the development and debugging of embedded control applications in C.
Author
Lucio
Di Jasio,
a PIC and embedded control expert, offers unique insight into the new
32-bit architecture while developing a number of projects of growing complexity.
Experienced PIC users and newcomers to the field alike will benefit from the book's many thor¬
ough examples which demonstrate how to nimbly side-step common obstacles, solve real-world
design problems efficiently, and optimize code using the new PIC32 features and peripheral set.
You will learn about:
•
basic timing and I/O operation
•
debugging methods with the MPLAB SIM simulator and ICD tools
•
multitasking using the PIC32 interrupts
•
all the new hardware peripherals
•
how to control LCD displays
•
experimenting with the Exploreri
6
board and the PIC32 Starter Kit
•
accessing mass-storage media
•
generating audio and video signals
•
and more!
Related titles:
Di Jasio,
Programming 16-bit Microcontrollers in C,
9780750682923
Curtis, Embedded Multitasking with Small Microcontrollers,
9780750679183
Huddleston, Intelligent Sensor Design Using the Microchip dsPIC
9780750677554
Bates, PIC Microcontrollers: An Introduction to Microelectronics, 2e,
9780750662673 |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Di Jasio, Lucio |
author_facet | Di Jasio, Lucio |
author_role | aut |
author_sort | Di Jasio, Lucio |
author_variant | j l d jl jld |
building | Verbundindex |
bvnumber | BV023327283 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.6 |
callnumber-search | QA76.6 |
callnumber-sort | QA 276.6 |
callnumber-subject | QA - Mathematics |
classification_rvk | ST 170 ZN 4980 |
ctrlnum | (OCoLC)263720263 (DE-599)BVBBV023327283 |
dewey-full | 005.13/3 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.13/3 |
dewey-search | 005.13/3 |
dewey-sort | 15.13 13 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik Elektrotechnik / Elektronik / Nachrichtentechnik |
discipline_str_mv | Informatik Elektrotechnik / Elektronik / Nachrichtentechnik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV023327283</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20130228</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">080603s2008 ad|| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780750687096</subfield><subfield code="9">978-0-7506-8709-6</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)263720263</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV023327283</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-83</subfield><subfield code="a">DE-703</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.6</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.13/3</subfield><subfield code="2">22</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 170</subfield><subfield code="0">(DE-625)143602:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ZN 4980</subfield><subfield code="0">(DE-625)157428:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Di Jasio, Lucio</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Programming 32-bit microcontrollers in C</subfield><subfield code="b">exploring the PIC32</subfield><subfield code="c">Lucio Di Jasio</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Amsterdam [u.a.]</subfield><subfield code="b">Elsevier</subfield><subfield code="c">2008</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XXIII, 527 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield><subfield code="e">1 CD-ROM (12 cm)</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">Embedded technology series</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">C (Langage de programmation)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Microcontrôleurs - Programmation</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">C (Computer program language)</subfield></datafield><datafield tag="650" ind1=" " ind2="4"><subfield code="a">Microcontrollers</subfield><subfield code="x">Programming</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">PICmicro</subfield><subfield code="0">(DE-588)4571742-4</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4113195-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">PICmicro</subfield><subfield code="0">(DE-588)4571742-4</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">C</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4113195-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Bayreuth</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Bayreuth</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Klappentext</subfield></datafield></record></collection> |
id | DE-604.BV023327283 |
illustrated | Illustrated |
index_date | 2024-07-02T20:56:09Z |
indexdate | 2024-07-20T05:47:29Z |
institution | BVB |
isbn | 9780750687096 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-016511272 |
oclc_num | 263720263 |
open_access_boolean | |
owner | DE-83 DE-703 |
owner_facet | DE-83 DE-703 |
physical | XXIII, 527 S. Ill., graph. Darst. 1 CD-ROM (12 cm) |
publishDate | 2008 |
publishDateSearch | 2008 |
publishDateSort | 2008 |
publisher | Elsevier |
record_format | marc |
series2 | Embedded technology series |
spelling | Di Jasio, Lucio Verfasser aut Programming 32-bit microcontrollers in C exploring the PIC32 Lucio Di Jasio Amsterdam [u.a.] Elsevier 2008 XXIII, 527 S. Ill., graph. Darst. 1 CD-ROM (12 cm) txt rdacontent n rdamedia nc rdacarrier Embedded technology series C (Langage de programmation) Microcontrôleurs - Programmation C (Computer program language) Microcontrollers Programming PICmicro (DE-588)4571742-4 gnd rswk-swf C Programmiersprache (DE-588)4113195-2 gnd rswk-swf PICmicro (DE-588)4571742-4 s C Programmiersprache (DE-588)4113195-2 s DE-604 Digitalisierung UB Bayreuth application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis Digitalisierung UB Bayreuth application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA Klappentext |
spellingShingle | Di Jasio, Lucio Programming 32-bit microcontrollers in C exploring the PIC32 C (Langage de programmation) Microcontrôleurs - Programmation C (Computer program language) Microcontrollers Programming PICmicro (DE-588)4571742-4 gnd C Programmiersprache (DE-588)4113195-2 gnd |
subject_GND | (DE-588)4571742-4 (DE-588)4113195-2 |
title | Programming 32-bit microcontrollers in C exploring the PIC32 |
title_auth | Programming 32-bit microcontrollers in C exploring the PIC32 |
title_exact_search | Programming 32-bit microcontrollers in C exploring the PIC32 |
title_exact_search_txtP | Programming 32-bit microcontrollers in C exploring the PIC32 |
title_full | Programming 32-bit microcontrollers in C exploring the PIC32 Lucio Di Jasio |
title_fullStr | Programming 32-bit microcontrollers in C exploring the PIC32 Lucio Di Jasio |
title_full_unstemmed | Programming 32-bit microcontrollers in C exploring the PIC32 Lucio Di Jasio |
title_short | Programming 32-bit microcontrollers in C |
title_sort | programming 32 bit microcontrollers in c exploring the pic32 |
title_sub | exploring the PIC32 |
topic | C (Langage de programmation) Microcontrôleurs - Programmation C (Computer program language) Microcontrollers Programming PICmicro (DE-588)4571742-4 gnd C Programmiersprache (DE-588)4113195-2 gnd |
topic_facet | C (Langage de programmation) Microcontrôleurs - Programmation C (Computer program language) Microcontrollers Programming PICmicro C Programmiersprache |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000003&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016511272&sequence=000004&line_number=0002&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT dijasiolucio programming32bitmicrocontrollersincexploringthepic32 |