Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Как загрузить скетч в Atmega8A-PU с помощью USBasp

Сегодня я расскажу Вам как загрузить скетч в Atmega8A-PU с помощью программатора USBasp S51&AVR и среды разработки Arduino IDE. Это способ загрузки очень удобен и не требует много сил, а в итоге у нас получится минимальное arduino на микроконтроллере Atmega8A-PU. Для работы нам потребуется только программатор USBasp S51&AVR и микроконтроллер Atmega8A-PU который после прошивки будет работать на частоте 8 MHz. Более подробно смотрите на видео.

Для начала рассмотрим сам контроллер Atmega8A-PU.

Основные характеристики микроконтроллера  Atmega8A-PU:

  • Серия процессора: ATMEGA8x
  • Тактовая частота максимальная: 16 МГц
  • Разрядность АЦП: 10 бит
  • Встроенный в чип АЦП: да
  • Шина данных: 8 битШирина: 7.5 мм
  • Размер ОЗУ: 1 Кб
  • Размер ПЗУ данных: 512 B
  • Размер памяти программ: 8 Кб
  • Тип памяти программ: Flash
  • Доступные аналоговые/цифровые каналы: 6
  • Интерфейс: SPI, TWI, USART
  • Количество линий ввода/вывода: 23
  • Количество таймеров: 3
  • Ядро: AVR
  • RoHS: да
  • Диапазон напряжения питания: 2.7 В … 5.5 В
  • Рабочий диапазон температрур: – 40 C … + 85 C
  • Тип корпуса: PDIP-28
  • Ширина: 7.5 мм
  • Длина: 34.8 мм
  • Высота: 4.57 мм

Где купить Atmega8A-PU

Заказать микроконтроллер Atmega8a-PU

Блок схема микроконтроллера Atmega8A-PU:

блок схема микроконтроллера Atmega8A

Arduino pinout (распиновка) микроконтроллера Atmega8A-PU:

Распиновка Atmega8A-PU

Если вы хотите узнать больше информации о контроллере Atmega8A-PU , скачайте даташит на Atmega8A

После небольшого знакомства с Atmega8A-PU я думаю можно приступить к настройке Arduino IDE и заливке скетча в наш контроллер.

Для начала установите Arduino IDE как указано в нашей статье Установка Arduino IDE на компьютер с ОС Windows и подключите программатор USBasp и установите драйвера как указано в статье Подключение программатора USBasp S51&AVR.

Теперь ищем в Windows папку установки Arduino IDE  под названием arduino, полный путь к папке у меня 

C:\Program Files\Arduino\hardware\arduino но у Вас он может отличатся.

В этой папке мы ищем текстовый файл boards.txt и открываем его с помощью любого текстового редактора ( я использую Notepad++)

Текстовый файл boards.txt

После этого копируем текст

############################################################## atmega8noxtalfast.name=ATmega8(A) (8MHz int. RC osc, short bootloader delay, 38400 baud rate) atmega8noxtalfast.upload.protocol=arduino atmega8noxtalfast.upload.maximum_size=7168 atmega8noxtalfast.upload.speed=38400 atmega8noxtalfast.bootloader.low_fuses=0xe4 atmega8noxtalfast.bootloader.high_fuses=0xc2 atmega8noxtalfast.bootloader.path=atmega8a atmega8noxtalfast.bootloader.file=ATmegaBOOT.hex atmega8noxtalfast.bootloader.unlock_bits=0x3F atmega8noxtalfast.bootloader.lock_bits=0x0F atmega8noxtalfast.build.mcu=atmega8 atmega8noxtalfast.build.f_cpu=8000000L atmega8noxtalfast.build.core=arduino:arduino atmega8noxtalfast.build.variant=arduino:standard ############################################################## atmega8optiboot.name=ATmega8(A) (16Mhz XTAL, optiboot) atmega8optiboot.upload.protocol=arduino atmega8optiboot.upload.maximum_size=7680 atmega8optiboot.upload.speed=115200 atmega8optiboot.bootloader.low_fuses=0xBF atmega8optiboot.bootloader.high_fuses=0xCC atmega8optiboot.bootloader.path=optiboot atmega8optiboot.bootloader.file=optiboot_atmega8.hex atmega8optiboot.bootloader.unlock_bits=0x3F atmega8optiboot.bootloader.lock_bits=0x0F atmega8optiboot.build.mcu=atmega8 atmega8optiboot.build.f_cpu=16000000L atmega8optiboot.build.core=arduino:arduino atmega8optiboot.build.variant=arduino:standard

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

##############################################################

 

atmega8noxtalfast.name=ATmega8(A) (8MHz int. RC osc, short bootloader delay, 38400 baud rate)

 

atmega8noxtalfast.upload.protocol=arduino

atmega8noxtalfast.upload.maximum_size=7168

atmega8noxtalfast.upload.speed=38400

 

atmega8noxtalfast.bootloader.low_fuses=0xe4

atmega8noxtalfast.bootloader.high_fuses=0xc2

atmega8noxtalfast.bootloader.path=atmega8a

atmega8noxtalfast.bootloader.file=ATmegaBOOT.hex

atmega8noxtalfast.bootloader.unlock_bits=0x3F

atmega8noxtalfast.bootloader.lock_bits=0x0F

 

atmega8noxtalfast.build.mcu=atmega8

atmega8noxtalfast.build.f_cpu=8000000L

atmega8noxtalfast.build.core=arduino:arduino

atmega8noxtalfast.build.variant=arduino:standard

 

 

##############################################################

atmega8optiboot.name=ATmega8(A) (16Mhz XTAL, optiboot)

 

atmega8optiboot.upload.protocol=arduino

atmega8optiboot.upload.maximum_size=7680

atmega8optiboot.upload.speed=115200

 

atmega8optiboot.bootloader.low_fuses=0xBF

atmega8optiboot.bootloader.high_fuses=0xCC

atmega8optiboot.bootloader.path=optiboot

atmega8optiboot.bootloader.file=optiboot_atmega8.hex

atmega8optiboot.bootloader.unlock_bits=0x3F

atmega8optiboot.bootloader.lock_bits=0x0F

 

atmega8optiboot.build.mcu=atmega8

atmega8optiboot.build.f_cpu=16000000L

atmega8optiboot.build.core=arduino:arduino

atmega8optiboot.build.variant=arduino:standard

вставляем в конец нашего текстового файла boards.txt, сохраняем документ и перезапускаем Arduino IDE. В окне с доступными платами у нас должны появится две новые записи ( на фото обведено красным )

Наша Arduino IDE теперь успешно настроена для заливки скетчей в микроконтроллеры Atmega8A.

  1. Первый режим программирует наш контроллер для работы от встроенного кварца, частота работы 8 MHz
  2. Второй режим программирует наш контроллер для работы от внешнего кварца, частота работы 16 MHz (для работы подключаем кварц на 16 MHz к ножкам XTAL1 и XTAL2)

Теперь переходим к подключению нашего микроконтроллера к программатору.

Для удобства я сделал небольшую плату для прошивки микроконтроллеров Atmega8A и Attiny13a,

где можно просто вставить нужный контроллер подключить кабель и прошивать скетчи

Все смотрится примерно так

А для Вас рекомендую подключать USBasp программатор к Atmega8A-PU по схеме на картинке

Подключение USBasp к atmega8A-PU

Схема подключения контактов

  • USBasp +5v  к контроллеру VCC (pin7)
  • USBasp – GND к контроллеру GND (pin8)
  • USBasp – RST к контроллеру RST (pin1)
  • USBasp – SCK к контроллеру SCK (pin19)
  • USBasp – MISO к контроллеру MISO (pin18)
  • USBasp – MOSI к контроллеру MOSI (pin17)

После подключения переходим снова к Arduino IDE в котором будем использовать режим программирования микроконтроллера  без внешнего кварца  ATmega8(A) (8MHz int. RC osc, short bootloader delay, 38400 baud rate)

потом устанавливаем Serial Port, у меня как на фото

и выбираем программатор

после чего открываем из примеров скетч Blink, наводим курсор мышки на стрелочку для заливки скетча в плату ( на фото белая стрелка ) и жмем на клавиатуре Shift – у нас должна появится надпись Upload Using Programmer и жмем по стрелке для заливки скетча в наш контроллер  Atmega 8A-Pu

если все нормально, то в нижней части окна появится уведомление об успешной загрузке скетча

После чего подключаем Анод (+) светодиода к 19 ноге, а минус к GND, подаем питание к нашему микроконтроллеру и светодиод должен моргать с интервалом в 1 секунду

Поздравляю теперь вы знаете как загрузить скетч в Atmega8A-PU

arduino-project.net

atmega8 и новый atmega8a pu микроконтроллер datasheet схемы

Микроконтроллер atmega8 сочетает в себе функциональность, компактность и сравнительно не высокую цену.
Такие качества дали широчайшее распространение ATmega8 среди профессиональных и любительских конструкций. Микроконтроллер имеет широкий набор модулей, и может быть использован в большом количестве устройств, различного назначения, от таймеров, реостатов, систем автоматики до генератор специальных сигналов, видео сигналов и декодеров стандарта RC5.

Характеристики микроконтроллера ATMEGA8

EEPROM 8 Кб
Аналоговые входы (АЦП) 4
Входное напряжение (предельное) 5,5 Вольт
Входное напряжение (рекомендуемое) 4,5-5 Вольт
ОЗУ 256 байт
Тактовая частота 20 МГц
Flash-память 8кБ

Микроконтроллер atmega8 имеет два полноценных портов с разрядностью 8 бит в отличии от ATtiny2313, младшего брата.
Наличие в atmega8 аналогово-цифрового преобразователя, дающего возможность измерять такие параметры как напряжение, ток, емкость что позволяет разработать полноценный мультиметр на базе этого микроконтроллера. Так же atmega8 имеет порт UART для приема и передачи данных TTL уровня.
Порт для работы по протоколу

TWI(возможность реализовать программный I2C).
По I2C к ATmega8 можно подключить целый спектр устройств:
- внешнюю EEPROM память серии 24cXX,
- ЖКИ индикаторы и графические дисплеи,
- регуляторы громкости, сопротивления,
и многое другое.

Пример конфигурирования фьюз битов atmega8.

Схемы на atmega8

Примечание:
Если количество выводов микроконтроллера устраивает, но требуется больший объем памяти программ, рекомендую использовать микроконтроллеры ATmega16, ATmega32 или ATmega328.


Цоколевка микроконтроллера AtMega8.
atmega8 внешний вид
Внешний вид микроконтроллера в корпусе DIP 28

pdfATmega8 Datasheet скачать - заводская документация на микроконтроллер ATmega8 от фирмы Atmel

avrlab.com

Программирование AVR урок 3 — прошиваем микроконтроллер

Доброго времени суток. Продолжим. После того, как мы ознакомились с процессом отладки написанной нами программы в «atmel studio» и виртуально собрали схему с одним светодиодом в «proteus», пришло время собрать схему в «железе» и прошить микроконтроллер.

Для программирования опытного экземпляра (atmega 8) будем использовать программатор USBASP. Он выглядит следующим образом:

К разъему будет подключатся шлейф, в который подключаются джамперы, что в свою очередь будут подключены к гнездам макетной платы, на которой установлен микроконтроллер:

Первый вывод отмечен на разъеме стрелочкой.


После того, как разобрались с программатором. Переходим к сбору схемы в «железе». Монтируем микроконтроллер на макетную плату. Напоминаю — первая ножка отмечена на МК маленьким кружком.

Задача состоит в том, чтобы соединить выводы программатора с выводами «камня».

Подключаем джамперы в 10 контактный разъем. Задействуем следующие выводы MOSI, RST, SCK, MISO, VTG (VCC), GND.

Надеюсь вы уже скачали datasheet на atmega8. Если нет, его можно скачать здесь. Смотрим на распиновку выводов микроконтроллера.

Соединяем джамперы со следующими выводами:

  • VCC к 7 выводу МК;
  • SCK к 19 выводу МК;
  • MISO к 18 выводу МК;
  • MOSI к 17 выводу МК;
  • GND (10 вывод программатора) к 8 выводу МК;
  • RST к 1 выводу МК;

Для дальнейшем успешной работы, операционная система при первом запуске шайтан-машины (программатора) предложить установить необходимые для работы устройства драйвера.

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

Если вы работаете в windows 7 или выше, могут возникнуть небольшие трудности. Драйвера для программатора достаточно старые, поэтому у них нет цифровой подписи. При попытке установить такой драйвер операционка выдаст, что-то на подобии этого *

«Не удается проверить цифровую подпись драйверов, необходимых для данного устройства. При последнем изменении оборудования или программного обеспечения могла быть произведена установка неправильно подписанного или поврежденного файла либо вредоносной программы неизвестного происхождения. (Код 52)».

Чтобы исправить ситуацию нужно отключить проверку цифровой подписи драйвера. Описывать способы отключения не буду (у каждого своя операционная система), их можно найти в интернете.

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

Надеюсь у вас всё получилось и программатор готов к работе.

Переходим к сбору схемы со светодиодом.

Для прошивки микроконтроллера будем использовать программу «avrdudeprog». Она лежит в общем архиве.

Выбираем atmega8 из списка микроконтроллеров. После того, как выбрали МК появиться окошко, которое известит о том, что фьюзы и Lock биты установлены по умолчанию.

Следующим шагом будет нужно считать калибровочные ячейки. Если вы подключили всё правильно, то увидите следующее сообщение.

Затем открываем вкладку фьюзы (Fuses). Простыми словами Fuses — это конфигурационные настройки МК, с которыми лучше не играть. Для случая, когда вы приобрели такой же контроллер, как я и у вас нет внешнего кварцевого резонатора (вы используете внутренний генератор тактовой частоты), выставляете точно такие галочки, как представлены на картинке. Обязательно возле пункта «инверсные» должна стоять галочка.

Выставленные настройки «командуют» Atmega8A выполнять свою работу при условии тактирования от внутреннего генератора (частота тактирования 8 МГц). Для того, чтобы настройки вступили в силу нужно нажать кнопку «Программирование». Но перед нажатием еще два раза проверьте все ли выставили должным образом.

Возвращаемся на страницу «Program».

После того, как мы уже сообщили программе, какой именно микроконтроллер будем шить, выбираем файл прошивку, которую написали в прошлом уроке. Она имеет расширение HEX. Находится в папке «Debug»

Перед тем, как прошивать «камушек» нажимаем на кнопку «Стереть все».  Это обезопасит вас от непонятных ошибок (вдруг камень уже шили):

Нажимаем «Программирование».  Если все прошло успешно программа выдаст

Архив с драйверами

Datasheet на atmega8

Картотека программирования

Наслаждаемся результатом своей работы 🙂 Продолжение следует…


ПОДЕЛИТЕСЬ С ДРУЗЬЯМИ!

About alexlevchenko
Ценю в людях честность и открытость. Люблю мастерить разные самоделки. Нравится переводить статьи, ведь кроме того, что узнаешь что-то новое - ещё и даришь другим возможность окунуться в мир самоделок.

mozgochiny.ru

Отправить ответ

avatar
  Подписаться  
Уведомление о