Provided by: avr-libc_2.0.0+Atmel3.6.0-1_all bug




       Combining C and assembly source files
       A simple project
       A more sophisticated project
       Using the standard IO facilities
       Example using the two-wire interface (TWI)

Detailed Description

       Various small demo projects are provided to illustrate several aspects of using the
       opensource utilities for the AVR controller series. It should be kept in mind that these
       demos serve mainly educational purposes, and are normally not directly suitable for use in
       any production environment. Usually, they have been kept as simple as sufficient to
       demonstrate one particular feature.

       The simple project is somewhat like the 'Hello world!' application for a microcontroller,
       about the most simple project that can be done. It is explained in good detail, to allow
       the reader to understand the basic concepts behind using the tools on an AVR

       The more sophisticated demo project builds on top of that simple project, and adds some
       controls to it. It touches a number of avr-libc's basic concepts on its way.

       A comprehensive example on using the standard IO facilities intends to explain that
       complex topic, using a practical microcontroller peripheral setup with one RS-232
       connection, and an HD44780-compatible industry-standard LCD display.

       The Example using the two-wire interface (TWI) project explains the use of the two-wire
       hardware interface (also known as 'I2C') that is present on many AVR controllers.

       Finally, the Combining C and assembly source files demo shows how C and assembly language
       source files can collaborate within one project. While the overall project is managed by a
       C program part for easy maintenance, time-critical parts are written directly in manually
       optimized assembly language for shortest execution times possible. Naturally, this kind of
       project is very closely tied to the hardware design, thus it is custom-tailored to a
       particular controller type and peripheral setup. As an alternative to the assembly-
       language solution, this project also offers a C-only implementation (deploying the exact
       same peripheral setup) based on a more sophisticated (and thus more expensive) but pin-
       compatible controller.

       While the simple demo is meant to run on about any AVR setup possible where a LED could be
       connected to the OCR1[A] output, the large and stdio demos are mainly targeted to the
       Atmel STK500 starter kit, and the TWI example requires a controller where some 24Cxx two-
       wire EEPPROM can be connected to. For the STK500 demos, the default CPU (either an
       AT90S8515 or an ATmega8515) should be removed from its socket, and the ATmega16 that ships
       with the kit should be inserted into socket SCKT3100A3. The ATmega16 offers an on-board
       ADC that is used in the large demo, and all AVRs with an ADC feature a different pinout
       than the industry-standard compatible devices.

       In order to fully utilize the large demo, a female 10-pin header with cable, connecting to
       a 10 kOhm potentiometer will be useful.

       For the stdio demo, an industry-standard HD44780-compatible LCD display of at least 16x1
       characters will be needed. Among other things, the LCD4Linux project page describes many
       things around these displays, including common pinouts.


       Generated automatically by Doxygen for avr-libc from the source code.