Користувальницькькі налаштування

Налаштування сайту


avr-examples

Це стара версія документу!


Примеры программ для микроконтроллеров AVR

8 светодиодов

Эта программа реализует “бегущий огонь” из 8-ми светодиодов, подключенных к порту “A” микроконтроллера. В данном случае использовался внешний тактовый генератор с частотой 11.0592 МГц. Переключаться между использованием внешнего и внутреннего генератора можно при помощи FUSE-битов.

led_blink.c
//#define F_CPU 1000000UL     // Тактовая частота 1МГц
#define F_CPU 11059200UL      // Тактовая частота 11.0592 МГц
 
#include <inttypes.h>
#include <avr/io.h>
#include <util/delay.h>
 
int main()                     // Главная функция программы
{
 
    DDRA = 0b11111111;         // Установка всех ножек порта "A" в режим вывода
    //DDRC = 0b11111111;       // Установка всех ножек порта "C" в режим вывода
 
    while (1)                  // Бесконечный цикл
    {
 
        PORTA = 0b00000001;    // Включение светодиода №1
        _delay_ms(500);        // Пауза в 500мс
        PORTA = 0b00000010;    // Включение светодиода №2
        _delay_ms(100);        // Пауза в 100мс
        PORTA = 0b00000100;    // И так далее
        _delay_ms(100);
        PORTA = 0b00001000;
        _delay_ms(100);
        PORTA = 0b00010000;
        _delay_ms(100);
        PORTA = 0b00100000;
        _delay_ms(100);
        PORTA = 0b01000000;
        _delay_ms(100);
        PORTA = 0b10000000;
        _delay_ms(100);
    }
}
avr-examples.1435506562.txt.bz2 · В останнє змінено: 2015/06/28 18:49 by wombat