BASCOM
Programming of Microcontrollers with Ease

An Introduction by Program Examples

(ISBN 1-58112-671-9)

You can order directly from uPublish.com.

Errata


Preface

The microcontroller market knows some well introduced 8-bit micro-controller families like Intel's 8051 with its many derivatives from different manufacturers, Motorola's 6805 and 68HC11, Microchip's PICmicros and Atmel's AVR.

The 8051 microcontroller family has been well-known over many years. The development of new derivatives is not finished yet. From time to time new powerful derivatives are announced.

You will find derivatives from Philips, Dallas, Analog Devices and Cygnal and others with the known 8051 core but enhanced clock and peripherals. For example, complete analog-to-digital and digital-to-analog subsystems were integrated in some chips.

Atmel developed the AVR microcontroller family which is well suited for high-level language programming and in-system programming.

For all those microcontrollers there is development software ranging from simple assemblers for DOS to integrated development envi-ronments for Windows95/98/NT on the market.

Apart from programming environments as they are offered, for ex-ample, by KEIL, IAR or E-LAB Computer for professional applica-tions, also the more economical and nonetheless sufficiently equipped development environments can maintain ground.

BASCOM-8051 and BASCOM-AVR are development environments built around a powerful BASIC compiler which is suited for project handling and program development for the 8051 family and its de-rivatives as well as for the AVR microcontrollers from Atmel.

The programming of microcontrollers using BASCOM-8051 (version 2.0.4.0) and BASCOM-AVR (version 1.11.3.0) will be described in this book.

Some applications help understand the usage of BASCOM-8051 and BASCOM-AVR.

Acknowledgement

I should like to thank the following:


Contents

1 Supported Microcontrollers    9
1.1 8051 Family 9
1.2 AVR Family  11
2 BASCOM        23
2.1 BASCOM Demos        23
2.2 BASCOM Commercial Versions  25
2.3 Update of BASCOM Commercial Versions        25
2.4 BASCOM Projects     27
2.4.1 Working on Projects       27
2.4.2 BASCOM Options    28
2.5 BASCOM Tools        37
2.5.1 Simulation        37
2.5.2 Terminal Emulator 40
2.5.3 LCD Designer      42
2.5.4 Library Manager   46
2.5.5 Programming Devices       50
2.6 Hardware for AVR RISC Microcontroller       55
2.6.1 DT006 AVR Development Board       55
2.6.2 AVR-ALPHA with AT90S2313  56
2.7 Instead of "Hello World"    57
2.7.1 AVR       57
2.7.2 8051      58
2.7.3 Things in Common  59
2.7.4 Simulation        64
2.8 BASCOM Help System  67
3 Some BASCOM Internals 69
3.1 Building new instructions   69
3.2 Parameters for Subroutines in BASCOM-AVR    71
3.3 BASIC & Assembler   73
3.3.1 AVR       74
3.3.2 8051      75
4 Applications  77
4.1 Programmable Logic  77
4.2 Timer and Counter   81
4.2.1 AVR       81
4.2.2 8051      104
4.3 LED Control 107
4.3.1 Single LED        107
4.3.2 Seven-Segment Displays    108
4.3.3 Dot-Matrix Displays       114
4.4 LCD Control 119
4.4.1 Direct Control    119
4.4.2 LCD with Serial Interface 122
4.5 Connecting Keys and Keyboards       128
4.5.1 Single Keys       129
4.5.2 Matrix Keypad     132
4.5.3 PC-AT Keyboard    136
4.6 Data Input by IR Remote Control     140
4.7 Asynchronous Serial Communication   143
4.8 1-WIRE Interface    151
4.9 SPI Interface       161
4.10 I2C Bus    167
4.11 Scalable Network Protocol S.N.A.P  173
4.11.1 S.N.A.P. Features        174
4.11.2 Description of S.N.A.P. Protocol 175
4.11.3 S.N.A.P. Monitor 179
4.11.4 Digital I/O      183
4.12 CANDIP - Interface to CAN  197
4.13 Random Numbers     209
4.14 Moving Average     214
5 Appendix      219
5.1 Decimal-Hex-ASCII Converter 219
5.2 DT006 Circuit Diagram       220
5.3 Characters in Seven-Segment Display 222
5.4 BASIC Stamp II      223
5.5 Literature  224
5.6 Links       225
6 Index 227


Zuletzt geändert am 2005-08-16