Перейти к содержанию

Вопросы от начинающих по МК


Рекомендуемые сообщения

Здравствуйте. Подскажите,как проверить порты микроконтроллера Atmega2560 на работоспособность?

Камень достался из ардуины. Пробовал прошивать Usbasp по ICSP через SinaProg.

Программатор прекрасно определяет камень, hex шьются(написанные в С).Брал готовые для других МК, в атмель студио компилировал выбрав камень Atmega2560,правда не все подходили.Хорошо работает только 1 программа,возможно не так что-то делаю.

Из ардуины брал хексы(в IDE) не работает.В программировании не силен особо.

Видел есть прошивки под другие МК для проверки портов.Возможно их как-то можно адаптировать под 2560.http://www.getchip.n...obnosti-portov/

рулим

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов
  • Создана
  • Последний ответ

Топ авторов темы

fura , посмотрите эти видеоуроки, и вы с легкостью проверите все порты вашей 2560 , третий урок как раз подходит для проверки .

Изменено пользователем DmitryS
Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Я рад что кто то разбирается и написал. Но заполнение переменной по битно структура мне не очень понятна.Про структуры я почитаю я ими не пользовался. А заполнение переменной сдвигом почему это не правильно. Массив больше для этого подходит.Хочу понять что где лучше использовать?

Изменено пользователем Leo
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

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

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

Возникла новая проблема. Программатор перестал наблюдать МК. Хотел прошить атмегу8. Прошиву взял http://radioparty.ru/prog-avr/program-c/284-lesson12-music/. Скомпилировал,зашил.После вспомнил,что фьюзы были настроены под часовой кварц(ранее часы собирал на нем). С помощью калькулятора зашил H 99, L C1(хотя возможно перепутал и зашил H C1 и L 99) МК перестал определяться. Другой МК определяется.Судя по-калькулятору spain включен в обоих случаях.Reset не отключен.Было как-то подобное, то ли после перезагрузки компьютера, то ли само собой МК определился

рулим

Ссылка на комментарий
Поделиться на другие сайты

Ну вот разобрался со своим вопросом , по поводу прерывания по INT0 , помог мне CodeVisionAVR Evaluation идущий , как дополнение к Атмел Студии 6.2 , вернее его помощник в составлении начального кода , так вот в нем к инициализации внешнего прерывания добавлен еще сброс флага в регистре GIFR=(1<<INTF0) | (0<<PCIF); Вставил я эту строчку и все заработало , как и задумано .

Что не сделано в студии так же ? ВесЧ полезная , особливо для чайникоф . ))

Ссылка на комментарий
Поделиться на другие сайты

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

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

И как я должен был догадаться , что надо сбросить флаг , который я еще не поднимал ? )))

Ссылка на комментарий
Поделиться на другие сайты

Собственно, в даташите данное поведение не описано? Помоему, оно должно быть описано в даташите в разделе посвященному конкретной периферии. И студия тут совсем не причем - это внимательность и опыт.

Если не сбрасывать флаг, видимо у вас прерывание происходит сразу же после его разрешения. Оттуда и проблемы.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

Собственно, в даташите данное поведение не описано? Помоему, оно должно быть описано в даташите в разделе посвященному конкретной периферии. И студия тут совсем не причем - это внимательность и опыт.

Если не сбрасывать флаг, видимо у вас прерывание происходит сразу же после его разрешения. Оттуда и проблемы.

Вот что написано про этот флаг в книге А.В. Евстифеева

МИКРОКОНТРОЛЛЕРЫ AVR

СЕМЕЙСТВА Tiny

Руководство пользователя

Флаг внешнего прерывания INT0. Если в результате события на выводе

INT0 сформировался запрос на внешнее прерывание, этот бит устанавли-

вается в 1. Флаг сбрасывается аппаратно при запуске подпрограммы об-

работки прерывания или программно, записью в него I. Флаг INTF0 ,

сброшен постоянно, если генерация прерывания должна происходить по

НИЗКОМУ уровню на выводе INT0

(стр.203)

Как видно из описания , флаг устанавливается только когда происходит какое то событие на выводе INT0 . Дата шит , может и еще что то дополняет к этому , но авто перевод , по крайней мере мне , не добавил ни какого понимания .

Изменено пользователем DmitryS
Ссылка на комментарий
Поделиться на другие сайты

Даташит надо внимательно прочитать. Если хочешь понять ПОЧЕМУ это происходит, надо прокрутить всё пошагово до последнего такта. Возможно, чтобы впустую не крутить ничего не значащий циклы, придется редуцировать программу до самого простого варианта где проблема воспроизводится.

Рассмотри вариант, когда прерывание возникает как только появляются все разрешающие сигналы. К чему это приводит в программе.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Всем доброго утра!

Решил попробовать заняться изучением МК,ну и соответственно ошибочно решил начать это дело с изготовления программатора.

Собрал вот это http://cxem.net/mc/mc30.php

ну а после решил попробовать снюхать его с какой либо программой,при условии что на компе установлена "восьмёрка".

В конечном итоге,прочитав кучу статей,решил остановиться на AVR Studio 6.

Проблема в том,что программа "не видит" этот программер,он конечно определяется в диспетчере устройств как виртуальный СОМ порт №3, в программе AVR Studio 6 есть предложение выбрать AVR910 USB Programmer,но с портом СОМ 1.

Порт СОМ 1 есть физически на мат.плате. пробовал в свойствах портов переподписывать их,-менять местами.

Но после этого в меню AVR Studio 6 появляется предложение выбрать AVR910 USB Programmer,но уже с портом СОМ 3.

Посоветуйте что делать?

Может собрать другой программер? типа такого AVRISP-MKII http://cxem.net/mc/mc217.php и не морочить голову.

А может вообще тупо подключиться к LPT или СОМ портам,на материнке есть разъёмы.

посоветуйте что нибудь ещё,кто и что "снюхивает" с AVR Studio 6.

Изменено пользователем alend
Ссылка на комментарий
Поделиться на другие сайты

Я начинал с такого программатора и с программы PonyProg.

post-182036-0-01901400-1428568202.gif

VD1-VD2 стабилитроны на 3,9-4,7 вольт.

Для начала вполне пойдет. Правда шьет довольно медленно, но если не серийное производство, то вполне терпимо. Последний вариант я сделал на SMD и плата у меня вошла в корпус разъема DB09 и только наружу кабелек с разъемом для подключения МК. Студия, неважно какая, создает .hex файл, затем загрузить его в PonyProg, а уже потом ей шить.

Изменено пользователем Sergey-Ufa
Ссылка на комментарий
Поделиться на другие сайты

Ну,это всё понятно,можно и через другие программы заливать HEX файл,например при изготовлении того самого AVR 910,контроллер прошивался программатором Громова через Uniprof, проще уже не придумать!

post-128116-0-26364700-1428571133.jpg

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

Может подскажет кто,с чем этот 910й вообще может работать на "восьмёрке",или на "восьмёрку" это ПО не встанет?

Ссылка на комментарий
Поделиться на другие сайты

Используй программу ChipBlaster или AvrDude но с последним это Unix-way но зато можно прописать чтобы автоматом прошивал после успешной компиляции, или на отдельную кнопку в студии.

Учение - изучение правил. Опыт - изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

Нарыл эту статью, http://makesystem.net/?p=6 получается USBasp можно использовать с AVR Studio ?

Интересно с шестой версией потянет? кто нибудь использует этот программатор в связке с AVR Studio 6 .

Изменено пользователем alend
Ссылка на комментарий
Поделиться на другие сайты

С 4-ой студией работает на ура. Могу и с 6-ой проверить, но она вообще глючная. Правда, у меня ХР стоит.

Никогда не спорьте с дураком - люди могут не заметить между вами разницы

Ссылка на комментарий
Поделиться на другие сайты

Я делал USBasp по статье с изиэлекктроникс , затем перепрошил в Doper , со студией работает , но надо сказать довольно медленно , USBasp с дудкой и казамой работает ощутимо быстрей . Этот программатор я делал ради спортивного интереса , а начинал с заказанного в Китае за 90 руб USBasp .

Ссылка на комментарий
Поделиться на другие сайты

Прочитал некоторую часть темы "видеокурс по AVR-Микроконтроллерам для начинающих", там товарищ kobzar настоятельно рекомендовал,-не парить мозг,но использовать клон AVRISP mkII.

Из чего сделан вывод,что проще купить готовый девайс у китайцев,чем заниматься экономически не обоснованным техническим садомазохизмом.

Порывшись на алиекспресс нашёл пару вариантов, первый наверно типа оригинал http://ru.aliexpress.com/item/Atmel-AVR-Programmer-AVRISP-mkII-AVR-ISP-Programmer-mk2-USB-AVRISP-XPII-In-System-Programmer-Supports/32274182335.html потому как стоит не совсем дёшево, а вот второй вариант наверно и есть клон первого варианта судя по цене http://ru.aliexpress.com/item/Free-Shipping-USB-programmer-AVRISP-mkII-mk2-clone-ATMEL-AVR-Fit-51-Series-ATmega-PWM-ATtiny/674530121.html?s=p

Кто нибудь может подсказать по поводу второго варианта? он будет работать с Atmel Studio 6.2 на восьмой винде?и стоит ли его вообще покупать?

Ссылка на комментарий
Поделиться на другие сайты

Я тоже рекомендую клон AVR ISP MKII. Никакого мазохизма. Ни технического, ни программного. Расширена поддержка до AtxMega, питание таргета от 3В до 5В. Интерфейсы TPI, PDI, ISP. Студия и CodeVision поддерживают.

Ссылка на комментарий
Поделиться на другие сайты

Интересно конечно узнать,кто нибудь пробовал юзать именно то,что в чёрной коробке второго варианта.А то закажу,прожду месяц,а там "те же яйки,только вид с боку AVR 910".

Ссылка на комментарий
Поделиться на другие сайты

alend, если вам просто пощупать, поиграться с программированием, поморгать светодиодами, то проще всего взять какой нибудь arduino nano, и не мучатся. Он программируется по USB. И стоит всего бакса три.

Никогда не спорьте с дураком - люди могут не заметить между вами разницы

Ссылка на комментарий
Поделиться на другие сайты

Помогите прошит Atmega 328 через USBasp для транзистортестера Маркуса. Расскажу что и как делал по порядку.

Хочу собрать две вещи: 1 - транзистортестера Маркуса, 2 - Паяльная станция (атмега16). Достал из ящика LPT программатор

post-66457-0-06069600-1428953374_thumb.gif

и попробовал шить им при помощи Пони. Нечего не шьет, не на моем PC из под виртуалки (Win XP), ни на старом PC c Win XP (PIII). До этого этим программатором я прошил около 10 шт атмега8. Проверил монтаж все в норме, подцепил ёмкость на 10мкФ к питанию программируемого контроллера - начал шить.

Прошил флеш Atmega 16, считал его все в норме.

Начал прошивать atmega 328. Первое разочарование - пони его не поддерживает. В поисках выхода из проблемы на просторах нашёл видео и пару упоминаний что люди шьют 328 как 32атмегу. Согласно даташиту объемы памяти одинаковы. Я рискнул прошить флеш и иипром руководствуясь тем что объем памяти одинаков, а код написан под 328атмегу и контроллер сам разберется что с этим всем делать.

Игнорируя предупреждения Пони залил флеш и иипром. По завершению заливки прошивка не проходит верификацию и при аплоуде с контроллера видно что записано лишь начальную часть кода.

Фюзы у атмега 328 я не трогал.

Поняв что так просто судьбу не обманешь за пол дня из того что было в ящике собрал USBasp на Atmega8 с последней прошивкой

post-66457-0-83956700-1428954972_thumb.jpg

Подключил я к USBasp Atmega8 для теста. Запустил Khazama avr - с Atmega8 все пишет и читает. Еще в ящике была как я предполагал мертвая Atmega8, я ее как то не той стороной пытался прошить через LPT и после этого она отказывалась прошиваться. Подключил я эту Atmega8 к USBasp, а она живая. Прекрасно шьется и читается.

Настал черед Atmega328. При попытке прочитать пустую программу с контроллера, Khazama avr выдал следующее сообщение:

post-66457-0-38231200-1428955366.jpg

Дальше руководствуясь документом по сборке транзистортестера попытался пришится через WINavr. НО WINavr написал следующее:

> "make.exe" program

make.exe

make.exe[1]: Entering directory `F:/transistortester/Software/trunk/mega328_2X16_menu'

8 MHz operation configured.

AVR Memory Usage

----------------

Device: atmega328p

Program: 29860 bytes (91.1% Full)

(.text + .data + .bootloader)

Data: 445 bytes (21.7% Full)

(.data + .bss + .noinit)

EEPROM: 14 bytes (1.4% Full)

(.eeprom)

make.exe[1]: Leaving directory `F:/transistortester/Software/trunk/mega328_2X16_menu'

avrdude -c usbasp -B 20 -p m328p -P usb -U flash:w:./TransistorTester.hex:a \

-U eeprom:w:./TransistorTester.eep:a

avrdude: set SCK frequency to 32000 Hz

avrdude: error: programm enable: target doesn't answer. 1

avrdude: initialization failed, rc=-1

Double check connections and try again, or use -F to override

this check.

avrdude done. Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2

> Time Taken: 00:28

Что я делаю неправильно при прошивке?

Жива ли атмега328 после таких экспериментов?

Если жива то как ее восстановить AVR-докторм?

Владею лабораторией производящей синий "лед".

Ссылка на комментарий
Поделиться на другие сайты

Прочитал некоторую часть темы "видеокурс по AVR-Микроконтроллерам для начинающих", там товарищ kobzar настоятельно рекомендовал,-не парить мозг,но использовать клон AVRISP mkII.

Из чего сделан вывод,что проще купить готовый девайс у китайцев,чем заниматься экономически не обоснованным техническим садомазохизмом.

Порывшись на алиекспресс нашёл пару вариантов, первый наверно типа оригинал http://ru.aliexpress...2274182335.html потому как стоит не совсем дёшево, а вот второй вариант наверно и есть клон первого варианта судя по цене http://ru.aliexpress...530121.html?s=p

Кто нибудь может подсказать по поводу второго варианта? он будет работать с Atmel Studio 6.2 на восьмой винде?и стоит ли его вообще покупать?

Нашел такой же контроллер, как по первой ссылке, только с отзывами. http://ru.aliexpress.com/item/Compatible-Atmel-AT-AVRISP-mkII-AVR-ISP-mk2-USB-AVRISP-XPII-In-System-Programmer-Supports-AVR/465185877.html?spm=0.0.0.0.e9iEda Судя по ним - скорее всего оригинал ибо никто не жалуется, а только хвалят.

Ссылка на комментарий
Поделиться на другие сайты

Всем доброго дня ! Опять вопрос ? :umnik2:

Вот скрин с симулятора атмел студии 6.2 , я так понимаю , если какой либо пин порта сконфигурировать на вход с резистором подтяжки , то в соответствующем бите регистра PINB должна быть единица . Но PINB1 почему то 0 ? Это так и должно быть ?

post-187724-0-40430100-1429092100.jpg

Изменено пользователем DmitryS
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...