- Out-of-Stock
Products
Categories
- Main categories
-
- 3D PRINTING
- ARDUINO
- AUTOMATION
- BOOKS
- CYBERSECURITY
- EDUCATION
- ELECTRONICS
- Cables
- Cameras and accessories
- Communication
- Conductive materials
- Connectors
- ARK connectors (Terminal Block)
- Coaxial connectors (RF)
- Connectors
- Crocodile clip
- D-Sub drawer connectors
- DC power connectors
- FFC/FPC ZIF connectors
- Goldpin connectors
- IDC connectors
- JACK connectors
- JST connectors
- Jumpers
- Memory cards slots
- Other connectors
- Pogo pin
- RJ45 sockets
- Slip ring connector
- Supports
- Szybkozłącza
- USB connectors
- USB PD Adapters for Laptops
- Cooling
- Displays
- Electronic modules
- A/D and D/A converters
- Audio
- Barcode readers
- CAN converters
- Converters USB - UART / RS232
- Data logger
- DDS/PLL generators
- Digital potentiometers
- Encoders
- Expanders of the I/O
- Fingerprint readers
- HMI modules
- Image and video
- JTAG accessories
- Keyboards, buttons
- LED drivers
- Memory card readers
- Memory modules
- Modules with power outputs
- Motor controllers
- Power modules
- RS485 converters
- RTC modules
- Servo Controllers
- TSOP infrared receivers
- USB Converters - I2C / 1-Wire / SPI
- Voltage converters
- Gadgets
- GPS
- Intelligent clothes
- LED - diodes, displays, stripes
- Luminous wires and accessories
- Memory cards and other data storages
- Passive elements
- PC accessories
- Printers
- Prototype boards
- Relays
- Semiconductors
- A/C converters (ADC)
- Analog systems
- Audio systems
- Bridge rectifiers
- Button
- D/A Converters (DAC)
- DDS synthesizers
- Digital circuits
- Diodes
- Drivers of motors
- DSP microprocessors
- Energy counters
- Energy harvesting
- ESD security
- IGBT drivers and bridges
- Interface systems
- LED drivers
- Logic converters
- Memory
- Microcontrollers
- Optotriacs and optocouplers
- Other
- PLL generators
- Power systems
- Programmable systems
- Resetting systems
- RF systems
- RTC systems
- Sensors
- SoC systems
- Timery
- Touch sensors
- Transistors
- Sensors
- Accelerometers
- Air humidity sensors
- Air quality sensors
- Current sensors
- Distance sensors
- Flow sensors
- Gas sensors
- Gyroscopes
- Hall sensors
- Humidity sensors
- Infrared sensors
- Light and color sensors
- Liquid level sensors
- Magnetic sensors (compasses)
- Medical sensors
- Motion sensors
- PH sensors
- Position sensors
- Pressure sensors
- Pressure sensors
- Reflection sensors
- Sensors 6DOF/9DOF/10DOF
- Sensors of liquid quality
- Temperature sensors
- Vibration sensors
- Sound transducers
- Switches and buttons
- Cables
- FPGA DEVELOPMENT KITS
- Measuring devices
- MECHANICS
- MINICOMPUTERS (SBC)
- POWER
- RASPBERRY PI
- Accessories for Raspberry Pi
- Audio video cables for Raspberry Pi
- Case Raspberry Pi
- Cooling for Raspberry Pi
- Displays for Raspberry Pi
- Extension modules for Raspberry Pi
- Memory cards for Raspberry Pi
- Power for Raspberry Pi
- Raspberry Pi 3 model A+
- Raspberry Pi 3 model B
- Raspberry Pi 3 model B+
- Raspberry Pi 4 model B
- Raspberry Pi 400
- Raspberry Pi 5
- Raspberry Pi cameras
- Raspberry Pi Compute Module
- Raspberry Pi model A/ B+/2
- Raspberry Pi Pico
- Raspberry Pi prototyping
- Raspberry Pi Zero
- Raspberry Pi Zero 2 W
- RETIRED PRODUCTS
- SALE
- STARTER KITS, PROGRAMMERS, MODULES
- Atmel SAM
- Atmel Xplain
- AVR
- Coral
- DFRobot FireBeetle
- ESP32
- ESP8266
- Feather / Thing Plus
- Freedom (Kinetis)
- M5Stack
- Micro:bit
- Nordic nRF
- Other development kits
- Particle Photon
- Peripheral modules
- PIC
- Raspberry Pi RP2040
- RFID
- RISC-V
- Seeed Studio LinkIt
- Segger programmers
- SOFTWARE
- Sparkfun MicroMod
- STM32
- STM32 Discovery
- STM32 MP1
- STM32 Nucleo boards
- STM8
- Teensy
- Universal programmers
- WRTNode
- XIAO/Qt PY
- Atmel SAM
- WORKSHOP
- Adhesives and gluers
- Chemistry
- CNC milling machines
- Crimping tools
- Dispensing needles
- Heat-shrink tubing
- Insulation strippers
- Knives and scissors
- Laboratory power supplies
- Mikroskopy
- Mini drills and grindrers
- Organizers
- Power strips
- Power tools
- Safety glasses
- Soldering
- Antistatic mats and accessories (ESD)
- BGA balls
- BGA rework stations
- Brushes and ESD brushes
- Desoldering Wick
- Handles, magnifiers
- Heat guns
- Heaters and soldering irons
- Laminates
- Portable soldering irons
- Silicone Soldering Mats
- SMD Accessories
- Soldering accessories
- Soldering chemistry
- Soldering irons
- Soldering pastes
- Soldering pots
- Soldering stations
- Soldering tips
- Sponges and cleaners
- Stand for soldering irons
- Tin
- Tin extractors
- Ultrasonic cleaners
- Tapes (aluminum, kapton, copper, insulating)
- Tools
- Tweezers
- Vices
- 3D PRINTING
New products
New products
AVR microcontrollers C language programming, application examples
Andrzej Witkowski
Free shipping
free shipping in Poland for all orders over 500 PLN
Same day shipping
If your payment will be credited to our account by 11:00
14 days for return
Each consumer can return the purchased goods within 14 days
The book describes a programming environment that is a set of free tools built around avr-gcc - the GNU C compiler for AVR processors. It is intended for all those who create or want to create programs written in C language for AVR microcontrollers. In particular, it is addressed to students of electronic and electrical fields as well as hobbyists who build devices with AVR microcontrollers. It can also be used by readers professionally involved in the programming of microcontrollers and all those who, while programming them in Assembler so far, want to expand their skills.
Table of Contents
1. Introduction
1.1. Basic information
1.2. The structure of the book
1.3. Sources of information
2. The GNU C development environment
2.1. Introduction
2.2. Environmental component programs
2.2.1. The Gnu Binutiis package
2.2.2. The GCC package
2.2.3. Avr-libc library
2.2.4. Make program
2.2.5. Programmers
2.2.6. Development tools
2.2.7. assemblers
2.2.8. Auxiliary programs
2.3. Installation
2.3.1. Windows system
2.3.2. Linux system
2.4. Avr-libc library
2.4.1. Start code
2.4.2. Definitions of special register names and bit flags
2.4.3. Mathematical library
2.4.4. Standard library C
2.4.5. Macros and functions that facilitate the use of peripheral systems
2.5. Gcc compiler
2.5.1. Principle of operation
2.5.2. Types of files
2.5.3. Options
2.5.3.1. Compiler options specific to AVR processors
2.5.3.2. Options controlling the type of result
2.5.3.3. Options fixing the dialect C
2.5.3.4. Options that enable or disable comments and error information
2.5.3.5. Options for the debugger
2.5.3.6. Optimization options
2.5.3.7. Directory options
2.5.3.8. Options determining how to generate the code
2.5.3.9. Preprocessor options
2.5.3.10. Assembler options
2.5.3.11. The options of the consolidator
2.5.4. Attributes of variables and functions
2.6. Make program
2.6.1. Principle of operation
2.6.2. Dependencies
2.6.3. Variables
2.7. The AVRDUDE program
2.7.1. Command line options
2.7.2. avrdude-gui
3. C language for AVR processors
3.1. Introduction
3.2. Operations on variables and special registers
3.3. Operations on bit variables
3.4. Volatile variables
3.5. References to different types of memory
3.5.1. Address spaces
3.5.2. EEPROM memory
3.5.3. Flash memory
3.6. Interrupt service
3.6.1. Declarations of the interrupt function
3.6.2. Hierarchy of interrupts
3.6.3. Preferably from the same variables in breaks and in the main program
3.6.4. Use in interrupt from global variables
3.7. Modifications to the start code
3.8. assembler
3.8.1. Rules for allocating registers by the compiler
3.8.2. Assembler as
3.8.2.1. Comments
3.8.2.2. expressions
3.8.2.3. labels
3.8.2.4. Directive
3.8.2.5. Cpp preprocessor
3.8.2.6. Example code in Assembler attached to C
3.8.3. Inserts in Assembler
3.8.3.1. Instruction asm
3.8.3.2. operands
3.8.3.3. Application examples
4. Creating the program
4.1. Basic principles
4.2. Creation and compilation of the project
4.2.1. AVR Studio
4.2.2. Mfile makefile file generator
4.2.3. Template for makefile files from WinAVR
4.3. Sample program
4.4. Compilation of the example program
4.4.1. AVR Studio
4.4.2. Command line
4.5. Project files
5. Examples of applications
5.1. Introduction
5.2. Operation of the matrix keyboard
5.2.1. Application description
5.2.2. implementation of
5.3. Data exchange via a serial interface
5.3.1. Application description
5.3.2. implementation of
5.4. Alphanumeric LCD display
5.4.1. Application description
5.4.2. implementation of
5.5. Keyboard support in interrupts
5.5.1. Application description
5.5.2. implementation of
5.6. Keyboard and LED display support
5.6.1. Application description
5.6.2. implementation of
5.7. Communication between multiple devices
5.7.1. RS-485 interface
5.7.2. Protocol description
5.7.2.1. Data frame formats
5.7.2.2. Error handling
5.7.3. Communication session
5.7.4. implementation of
5.7.4.1. Constants and variables used in the program
5.7.4.2. The parent system
5.7.4.3. Subordinate system
5.7.5. Time dependencies
5.7.5.1. Measure the gap between characters inside the frame
5.7.5.2. Measuring the gap between frames with requesting responses and data,
5.7.5.3. Measuring the gap between frames by the slave system
5.7.6. Data exchange
Attachment
Literature
Alphabetical index
Other products in the same category (16)
No product available!
No product available!
No product available!
No product available!
No product available!
No product available!
Development board with SAMD21 microcontroller (ARM Cortex® M0+), 8 I/O lines, 12 PWM channels, micro-USB. The board is equipped with the ATA8520 SigFox module enabling the implementation of SigFox communication. Arduino MKR FOX 1200 ABX00014
No product available!
No product available!
No product available!
No product available!
Adafruit 1115 - Adafruit Blue&White 16x2 LCD+Keypad Kit for Raspberry Pi
No product available!
No product available!
Assembled system (half) of home automation - four-channel ON / OFF module. AVT3212 C
No product available!
No product available!
No product available!
Global Shutter Monochromatic camera with the high speed up to 160 frames-per-second at the 320 x 240 resolution, UVC compliance and changeable standard M12 lens
No product available!