Приветствую Вас ГостьПятница, 03.05.2024, 12:59

Практическая робототехника

Категории каталога
Подготовка к освоению робототехники [3]
Статьи, в которых вы можете узнать о том, как правильно нужно паять, травить платы и как лучше всего сконструировать свою мастерскую.
Проэкты для начинающих [1]
В данной категории размещены статьи по разработке несложных устройств учебного характера.
Поиск
Наш опрос
Оцените мой сайт
Всего ответов: 38
Статистика

Каталог статей

Главная » Статьи » Проэкты для начинающих

Первый проект на микроконтроллере AVR

      В этой статье вы приобретёте первые навыки в создании устройств на микроконтроллерах AVR. Мы будем делать устройство, которое в народе называют «мигающий светодиод». Это самое простое устройство на микроконтроллере и поэтому большинство роботостроителей  начинают именно с него. Для этого проекта вам понадобится (Рис.1):

1.      Текстолит;

2.      Микроконтроллер Atmel Mega 8(ATMega8);

3.      Гнездо для микроконтроллера на 28pin;

4.      Кварцевый резонатор на 8 МГц;

5.      Два конденсатора на 15-22 мкФ;

6.      Шлейф на пять проводков и разъем для программатора;

7.      Батарейный отсек на четыре батарейки типа AA;

8.      Светодиод любого цвета;

9.      Программатор и программа CodeVisionAVR;

10.  Небольшие навыки пайки.

Рис.1

     В начале каждого проекта следует обдумать принцип действия устройства, закупить все необходимые детали, нарисовать схему и протравить плату. При включении устройства будет загораться и тухнуть светодиод с заданной задержкой. Схема будет такая, как показано на рисунке 2 и 3. 

Рис.2

Рис.3

     На рисунке 3 показана уже готовая схема к травлению, осталось только распечатать и протравить.  После того, как протравленная плата готова, нужно просверлить в ней дырки и начать монтаж компонентов.

СОВЕТ:

Для удобства и надёжности пайки вашей схемы следует придерживаться таких правил:

1)      Микросхемы не следует паять прямо на плату, их нужно вставлять в специальное гнездо для микросхем (Рис.4), которое припаивается на плату. Это делается для того, чтобы можно было легко заменить микросхему, когда она сгорит.

2)      При пайке схемы нужно использовать как можно меньше проводков потому, что это выглядит не очень эстетично, и со временем проводки отваливаются от платы из-за частых их изгибов.

Рис.4

     Компоненты нужно размещать в том положении, как показано на рисунке 5.

Рис.5

     При пайке светодиода нужно соблюдать полюсировку, то есть плюс паять к плюсу, а минус – к минусу, иначе он работать не будет. Определить у светодиода, где плюс, а где минус, можно либо тестером, либо за схемой, которая показана на рисунке 6.

Рис.6

     Результат работы вы видите на рисунке 7.

Рис.7

     Итак, механическую часть мы закончили. Осталось запрограммировать микроконтроллер и всё будет готово. Запускаем CodeVisionAVR, выбираем Create new file, затем ставим галочку на вкладке Project и жмём OK(Рис.8).

Рис.8

В следующем окне нажимаем YES и видим окно автоматического генератора кода. В таком лёгком проекте генератор кода нам почти не нужен, поэтому настраивать мы будем только первую вкладку этого генератора под названием Chip. На вкладке Chip выбираем название нашего микроконтроллера(ATMega8), а на вкладке Clock выбираем частоту кварцевого резонатора(8МГц)(Рис.9).

Рис.9

    Дальше выбираем File->Generate, Save and Exit, всё это сохраняем в соответствующую папку и видим окно кода программы. В этом окне мы видим уже автоматически сгенерированный код программы, но мы его удаляем для того, чтобы научится самостоятельно создавать код на языке Си для своей программы, удаляем до тех пор, пока не останется то, что вы видите на рисунке 10.

Рис.10

     Дальше вписываем код, который вы видите на листинге 1.

ЛИСТИНГ 1:

#include <mega8.h> //Включаем библиотеку для работы с микроконтроллером ATMega8

#include <delay.h> //Включаем библиотеку для организации задержек

 

void main(void)

{       

PORTD=0x00; //Выставляем все выходы порта D на 0, то есть, выключаем весь порт D

DDRD=0xFF;  //Делаем порт D, как выход, чтобы на выходах порта было напряжение 5В

while (1)  //Организовываем бесконечный цикл

      {

      PORTD.0=1; //Включаем светодиод на 0 выходе порта D

      delay_ms(500); //Делаем задержку на 500 миллисекунд

      PORTD.0=0; //Выключаем светодиод на 0 выходе порта D

      delay_ms(500); //Делаем задержку на 500 миллисекунд

      };

}

     Потом всё это компилируем и перепрошиваем (о компиляции и прошивке читайте в статье «Паяем программатор»). После того, как микроконтроллер перепрошьется, ваш светодиод весело замигает.

     Итак, считаем, сколько пошло денег на ваш первый проект на микроконтроллере:

 №Вещь  Гривен Долларов США
 1.    Текстолит  4.50,90
 2. Микроконтроллер Atmel Mega 8(ATMega8)  10,502
 3.Гнездо для микроконтроллера на 28pin0,500,1
 4. Кварцевый резонатор на 8 МГц 2 0,4
 5. Два конденсатора на 15-22 мкФ 0,20*2 0,03*2
 6. Шлейф на пять проводков и разъем для программатора 10,20
 7. Батарейный отсек на четыре батарейки типа AA 4 0.90
 8.  Светодиод любого цвета 0,20 0.03
 Итого: 23.104.3

     Поздравляю вас с вашим первым проектом на микроконтроллере AVR.

Удачи!

Полищук Олег (olllejik@gmail.com), http://homorobot.at.ua/

 

Июнь, 2007



Источник: http://homorobot.md6.ru/
Категория: Проэкты для начинающих | Добавил: Admin (15.03.2009) | Автор: Олег
Просмотров: 3635 | Комментарии: 11 | Рейтинг: 5.0/1 |
Всего комментариев: 5
5 Delbertcom  
0
Hi,

New club music, private server MP3/FLAC, Label, LIVESETS, Music Videos https://0daymusic.org
Available only on our secure FTP server.

0daymusic Team

4 отец  
0
вот я не пойму то автор ошибся толи я дебил,но равзе кондеры ставить не в пикофарадах а в микрофарадах?????????????????????????????????7

3 guest  
0
Confirm

2 azzzazzzelDEAN  
0
блин ошибся это не для NISO а для MOSI.

1 azzzazzzelDEAN  
0
НОЖКИ MOSI MISO SCK должны быть на одну ножку ниже (MISO должна быть 17 то есть второй с низу с правой стороны а не третей то есть 18)!!!

Имя *:
Email *:
Код *:
Форма входа
Друзья сайта