SergeyVT



Ответы в темах

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)
  • Автор
    Сообщения
  • в ответ на: Программирование МК AVR #15828
    SergeyVT
    Участник

    [b]tobaco[/b]Спасибо!

    в ответ на: Программирование МК AVR #15758
    SergeyVT
    Участник

    Доброго времени суток, Narod Stream!Прошу разъяснить для меня простую вещь.
    В уроке про мигающий светодиод мы изучали побитовые операции И, ИЛИ, НЕ.Все вроде бы понятно.Но тут напрашивается вопрос, зачем Вы так усложнили код, тем более с обычным мигающим светодиодом?
    Ваш код
    #define F_CPU 8000000
    #include <avr/io.h>
    #include <util/delay.h>

    int main(void)
    {
    DDRD = 0xFF;
    PORTD = 0b00000000;
    while(1)
    {
    PORTD |= (1<<(PORTD0));
    _delay_ms(500);
    PORTD &= ~(1<<(PORTD0));
    _delay_ms(500);
    }
    }
    Мой код
    #define F_CPU 8000000// указываем частоту в герцах
    #include <avr/io.h>
    #include <util/delay.h>

    int main(void)// начало основной программы
    {
    DDRD = 0xFF;//Все выводы порта D будут сконфигурированы как выходы.
    PORTD = 0b00000000;//устанавливаем на всех ножках принудительно ноль(во избежание остаточного мусора в регистрах)
    while(1)
    {
    PORTD = 0b00000001;
    _delay_ms(500);//делаем задержку в пол секунды
    PORTD = 0b00000000;
    _delay_ms(500);//делаем задержку в пол секунды
    }
    }
    Хотя ведь можно было просто установить вот так как у меня и все так же работает.Если я не прав, то поясните в чем конкретно.Буду очень признателен.

  • Автор
    Сообщения
  • в ответ на: Программирование МК AVR #15828

    SergeyVT
    Участник
    • Оффлайн

    [b]tobaco[/b]Спасибо!

    в ответ на: Программирование МК AVR #15758

    SergeyVT
    Участник
    • Оффлайн

    Доброго времени суток, Narod Stream!Прошу разъяснить для меня простую вещь.
    В уроке про мигающий светодиод мы изучали побитовые операции И, ИЛИ, НЕ.Все вроде бы понятно.Но тут напрашивается вопрос, зачем Вы так усложнили код, тем более с обычным мигающим светодиодом?
    Ваш код
    #define F_CPU 8000000
    #include <avr/io.h>
    #include <util/delay.h>

    int main(void)
    {
    DDRD = 0xFF;
    PORTD = 0b00000000;
    while(1)
    {
    PORTD |= (1<<(PORTD0));
    _delay_ms(500);
    PORTD &= ~(1<<(PORTD0));
    _delay_ms(500);
    }
    }
    Мой код
    #define F_CPU 8000000// указываем частоту в герцах
    #include <avr/io.h>
    #include <util/delay.h>

    int main(void)// начало основной программы
    {
    DDRD = 0xFF;//Все выводы порта D будут сконфигурированы как выходы.
    PORTD = 0b00000000;//устанавливаем на всех ножках принудительно ноль(во избежание остаточного мусора в регистрах)
    while(1)
    {
    PORTD = 0b00000001;
    _delay_ms(500);//делаем задержку в пол секунды
    PORTD = 0b00000000;
    _delay_ms(500);//делаем задержку в пол секунды
    }
    }
    Хотя ведь можно было просто установить вот так как у меня и все так же работает.Если я не прав, то поясните в чем конкретно.Буду очень признателен.

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)