» » Анатомия микроконтроллеров ATmega - 2

 
 
 
3

Анатомия микроконтроллеров ATmega - 2

Разместил alx32 18 июля 2008. Просмотров: 23 274

Итак, продолжим издевательство над МК.





Что же нам ещё такого сделать? Давайте заставим мигать светодиод.
Подключим заголовочный файл delay.h.
Анатомия микроконтроллеров ATmega - 2

В нём описываются функции задержки или паузы.
Ниже я объясню зачем.
Прокрутим программу до 104 строки:

Опа!!! А здесь бесконечный цикл… Иначе просто не может быть, ведь выхода из программы нет, да и выходить особо некуда, это же не ДОС…

Во внутрь бесконечного цикла вставляем строки:

А теперь всё по порядку:
PORTB.0 = 0 - это присвоение нулевому биту порта В, именно нулевому, другие биты мы не трогаем, то есть гасим светодиод;
delay_ms(100) - пауза на 0,1 секунды, вот для этого нам и нужно было подключать delay.h;
PORTB.0 = 1 - зажигаем светодиод;
delay_ms(100) - и опять пауза.
И не забываем ставить точку с запятой после каждой команды.
Компилируем программу и заливаем в МК. Замигало?
ДА!!!

Чтобы нам ещё такого сделать?
Давайте заделаем...
Исключён фрагмент. Полный вариант статьи доступен только полноправным членам сообщества и подписчикам.
Пожалуйста, ознакомьтесь с условиями доступа.


Компилируем, заливаем в МК.
ПОБЕЖАЛО!!? Не знаю как у вас, а у меня да!!!

Вам не кажется, что программа великовата? Конечно да!
Давайте её уменьшим. Воспользуемся массивом данных, для этого вставим такие строки:

Поясню по порядку:
a[8] - это массив состоящий из восьми байтов, тип flash означает что переменная находится в памяти программ, по сути это константа, иначе она занимала бы драгоценное ОЗУ;
cnt - это счётчик циклов программы, а также используется как указатель массива.

Переписываем программу:

Не правда ли, короче получилось…

Продолжение следует…

Александр.
Александр (alx32)
Ульяновск
Профиль alx32
Я простой электрик
 

Понравилось? Палец вверх!

  • всего лайков: 18

Поделись с друзьями!

Связанные материалы:


Схема на Датагоре. Новая статья Программная реализация протокола I2C на AVR в CodeVisionAVR... Пару лет назад, изучая Atmega8, я захотел программно реализовать работу с устройствами на шине i2c,...
Схема на Датагоре. Новая статья Програмирование в AVR Studio 5 с самого начала. Часть 4... Сегодня рассмотрим программу “бегущих огней” и “бегущих теней”. Примеры “бегущих огней” можно найти...
Схема на Датагоре. Новая статья Програмирование в AVR Studio 5 с самого начала. Часть 3... Мы научились включать и выключать светодиоды, а как сделать, чтобы они сами заморгали? Понятно, что...
Схема на Датагоре. Новая статья Програмирование в AVR Studio 5 с самого начала. Часть 2... Пишем первую программу!Большинство начинают с мигания светодиодов, и мы не исключение. Если...
Схема на Датагоре. Новая статья Микроконтроллеры. Связь с внешним миром. Часть 2... Здравствуйте, дорогие Датагорцы! По некоторым слабо зависящим от меня причинам не мог участвовать в...
Схема на Датагоре. Новая статья Проект DMX512. Микроконтроллер управляет профессиональным шоу. Ч.3... Я думаю, что прочитав теоретическую часть, в которой не всё сразу понятно, лучше сразу потихонечку...
Схема на Датагоре. Новая статья Грызем микроконтроллеры. Урок 3.... Эту статью я начну с провокационного вопроса… А какую конструкцию на основе МК хотите создать ВЫ? ...
Схема на Датагоре. Новая статья Грызем микроконтроллеры. Урок 2.... Предлагаю продолжить изучение микроконтроллеров… Второй урок будет посвящен по большей части...
Схема на Датагоре. Новая статья Грызем микроконтроллеры. Урок 1.... Эту статью (а точнее цикл статей…) я решил полностью посвятить микроконтроллерам фирмы Atmel....
Схема на Датагоре. Новая статья Анатомия микроконтроллеров ATmega - 3. Прерывания.... Итак, наши светодиоды мигают, но мы не можем никак повлиять на программу, давайте добавим в схему...
Схема на Датагоре. Новая статья Макетирование конструкций с помощю BREADBOARD... Все наверное согласится со мной, что макетирование устройств, особенно цифровых, на текстолитовых...
Схема на Датагоре. Новая статья Анатомия микроконтроллеров ATmega... Здравствуйте, датагорцы! После публикации моей первой статьи, меня завалили вопросами о...
<
  • Гражданин
19 июля 2008 06:14

Гунтис / GuntisK

Цитата
  • С нами с 15.09.2011
  • Ушёл в реал Пользователь offline
  • 90 комментариев
  • 20 публикаций
 
  • 0
Во и у меня моргают светодиоды. winked //www.youtube.com/watch?v=LNjXQ9KGZJc

<
  • Гражданин
21 июля 2008 12:53

Гунтис / GuntisK

Цитата
  • С нами с 15.09.2011
  • Ушёл в реал Пользователь offline
  • 90 комментариев
  • 20 публикаций
 
  • 0
Александр! А как организовать несколько массивов данных с возможностю переключатся между ними? Думаю тут неплохую СДУ можно сделать. winked

<
  • Гражданин
28 июля 2008 00:42

Александр / alx32

Цитата
  • С нами с 26.06.2008
  • Ушёл в реал Пользователь offline
  • 35 комментариев
  • 8 публикаций
 
  • 0
Гунтис, попробуй двумерный массив, или даже трёхмерный...

Добавление комментария


Налетай! Паяльники, станции, жала с доставкой
  • smilelolbyewinkyahoocoollaughing
    crazybadcryingsadirefulsickstraight
    ballooncakegooddrinksmailbombsun
    nightrainstarscolddashguitar-manhandshake
    musicnegativenopardonshoksleepunknown
    wackoyawnblushbullyhashsmokingwhew
Скопируйте текст вашего комментария на случай неверного ответа на контрольный вопрос.