Микроконтроллеры фирмы ATMEL - ATMegaXX схемы, программы, исходники |
|
Страница №3
Итак: Есть прошивка мы ее посмотрели в PROTEUSе, есть спаянная плата с микроконтроллером. Пора совместить прошивку с микроконтроллером. Для этого побыстрому сварганим хвост для заливки прошивы: Спаяли. Откроем программу PonyProg2000 - Программатор устройств с последовательным доступом Версия 2.05a Beta Feb 24 2002 Лезем в «УСТАНОВКИ» -> «Настройки оборудования» В «Настройках платы программатора» устанавливаем Установки порта: «Параллельный – AVR ISP API» Щелкаем «Проверка» - должно быть ОК
Дальше в «УСТАНОВКИ» -> «Калибровка» и опять до ОК В семействе устройств – AVR micro В типе устройства – ATmega8 Далее «Файл»-> «Открыть файл программы FLASH» - в окне меню тип файлов *.hex и соответственно наш hex-файл Далее «Команды» -> «Стереть» Далее «Команды» -> «Программирование» Потом побегут проценты записи, проценты проверки. И ВСЕ! В Микроконтроллере сидит наша программа. Программа начинает работать сразу после программирования. Заметьте – фьюзы я не ставил, и сейчас работает внутренний кристалл микроконтроллера на частоте 1 МГц, соответственно у нас такая маленькая скорость обмена по COM-порту. К сожалению я забыл поставить на плате микроконтроллера переключатель сброса, но это недолго исправить: 1-ю ножку микроконтроллера надо кратковременно соединить с землей (GND). И… сброс произошел. Уррр-рааааа 80% мы собрали! Но… устройство что-то там делает, а что – не понятно. Надо присоединить его к компьютеру.
Создаем программу для работы с микроконтроллером по COM (UART) порту. Вот теперь нам потребуется Borland C++ Builder версии 6. Почему 6? Да потому что готовый пример у меня именно для этой версии, хотя ВСЕ команды, заключенные в исходнике, будут работать и версиях ниже. Для начала открываем файл «BCBComm.bpr» он появится в текстовом виде, затем открываем из той же папки файл «Unit1.cpp», этот уже появится в графическом, но щелкнув 2 раза мышью на любом из графических компонентов откроем его в текстовом виде, затем откроем файл «Unit2.cpp». Этот тоже откроется в текстовом виде. В общем в теле программы остался только самый минимум. Аккуратно экспериментируйте с содержимым и результат будет. После компиляции запускаем наш файл. Выбираем порт и скорость, размер байта оставляем 8. Щелкаем по кнопке «Открыть порт» если индикатор засветился зеленым, значит порт открылся. Перезагружаем микроконтроллер (кнопкой reset) и в Memo1 видим ОК (ну или что-то типа того), ползунами выставляем количество срабатываний микропереключателей, щелкаем по кнопке «передать» и ждем выполнения наших команд. По завершении контроллер передаст в поле Memo1 - «ОК». Перемещаем ползунки в новое положение и т.д. В общем суть всех этих экспериментов показать начало процесса. Ведь количество исполнительных линий можно и увеличить, использовать большее количество переменных в микроконтроллере, тогда он за один раз будет отрабатывать гораздо больше команд. Изменить программу управления с компьютера микроконтроллером – добавить графики и т.д. Изменить исполнительное устройство, ну скажем 1 мотор перемещает каретку по горизонтали, 2 мотор – по вертикали, а 3-й глубину погружения фрезы… вот и готов станок для фрезерования поверхностей, гравировки и т.д.. Загоняем в память микроконтроллера массив и он шурует нам изделия из древесины, хошь – подковы, а хошь – буратинов… В общем – удачи. С вопросами и пожеланиями пишите: rodianv@yandex.ru |