С чего начать программировать микроконтроллеры?

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Аватара пользователя
Pippeytz
Потрогал лапой паяльник
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк
Контактная информация:

Сообщение Pippeytz »

Вне сомнения , можно.Только в данном конткретном топике помоему обсуждаютсья только меееедлееееное включение диодов :))) :)))
Полный пипеутз.
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18853
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

Думаю тему надо переименовать. Вот так:
А вот микроконтроллеры - это кто такие (включаем светодиоды мееедлееенноооо...)
Аватара пользователя
Pippeytz
Потрогал лапой паяльник
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк
Контактная информация:

Сообщение Pippeytz »

Вот, в самую точку
Полный пипеутз.
Аватара пользователя
myurrey
Друг Кота
Сообщения: 3235
Зарегистрирован: Вт дек 11, 2007 18:46:27
Откуда: Троицк. Челябинская обл.

Сообщение myurrey »

Stalker46, отличные разьемы. Жалко их у нас не продают :cry: Лучше конечно паять. И не парится с обжимкой.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

обжать и я пласкогубцами смогу, а провод просто залужу))) получится отлично. :))
Не умеешь - не берись, но не взявшись не научишься...
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Сообщение aleksandr-zh »

dosikus писал(а):
Так же приобрести pikkit2 с отладочной платой пока акция не кончилась
огромное спасибо!
принесли сейчас pikkit2
оказалось даже лучше, чем мы предполагали :)
особо понравился программатор!

а вписанная в МК прога - песня :)

Кстати! один из "учеников" уже пишет свое ПО под АВР на FastAVR. Подобрались к прерываниям и таймерам.

вот план для быстрого старта на первое время:
Понятие «ядро процессора»
Набор команд, зависящий от производителя
Машинные коды и их символьное обозначение — ассемблеры
Разные производители процессоров = разные ассемблеры
Разные процессоры = разные системы команд = несовместимость программ на уровне команд процессора
разные ассемблеры = несовместимость программ на уровне символьных обозначений машинных команд
Разные компании, пишущие трансляторы-ассемблеры для процессоров, = разные символьные обозначения машинных команд = несовместимость ассемблеров разных производителей.

Программа и Алгоритмы. Ветвление программы: условия и циклы. Виды «условий» и «циклов», их работа.
Периферия: счетчики/таймеры, UART, EEPROM, компаратор

Окно в мир — порты. Режим работы портов: ввод/вывод. Управление режимами работы портов через специальные управляющие регистры.
Прерывания как метод управления исполнением программы. Вход и выход в/из прерывания. Скорость реагирования на прерывание.
Типы прерываний: от изменения состояния вывода порта, таймер, UART, EEPROM, компаратор
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

aleksandr-zh писал(а):
Stalker46 писал(а):вот вопрос. почему, когда загорается много сегментов, яркость каждого сегмента уменьшается?
как этого избежать?

это из-за неверной схемы у меня
надо на каждый сегмент свой резистор


Советую как пример разобрать посегментную индикацию.
Отличные проекты смотри у ARV на сайте .
Отличии от поразрядной одновременно включен один сегмент ( светодиод ) , скважность выше - поэтому достаточно резисторов меньших номиналов и только на общих выводах .
Плюс очевиден - меньше деталей , при смд компонентах схема умешается в габариты индикатора . Минус - хотя может и не проявиться - меньшая яркость.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

народ, а сколько вольтаж на один вывод МК при логической "1"? МК AVR как я помню КМОП технологии, так что есть мы его питаем от 5 В, то и на ножке "1" будет выгляедть как 5В?
Не умеешь - не берись, но не взявшись не научишься...
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

а что если купить такую клаву на контроллер? а на плату установить резисторы?
можно ли?
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
Pahan
Мучитель микросхем
Сообщения: 487
Зарегистрирован: Чт ноя 23, 2006 22:47:35
Контактная информация:

Сообщение Pahan »

Stalker46 писал(а):народ, а сколько вольтаж на один вывод МК при логической "1"? МК AVR как я помню КМОП технологии, так что есть мы его питаем от 5 В, то и на ножке "1" будет выгляедть как 5В?

Смотри даташиты. Там диапазон уровней и 0, и 1 указаны. А еще надо и макс. ток на ногу смотреть и суммарный ток на кристалл. Это тоже все прописано в ДШ.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

такая клавиатура уже с резисторами? или без? если без, то можно на плату поставить...
http://www.chip-dip.ru/product0/896428538.aspx
Не умеешь - не берись, но не взявшись не научишься...
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Сообщение aleksandr-zh »

dosikus писал(а):к пример разобрать посегментную индикацию.

буду иметь в виду

очень понравилась плата pikkit2
на ней удобно учить
Написал несколько примеров работы с МК pic16f887
Кстати! найти инструмент было сложно: многие компиляторы не поддерживают этот МК!
Скачал PIC Simulator IDE, в новом есть поддержка.
Решил написать несколько статей уроков про эту плату и эту программу.

Ученики начали использовать компаратор, некоторые режимы ADC и прерывания.
Приучаю, что никакой разницы между типами МК нет. Пока получается :) То АВР используем, то ПИК

Как допишу уроки - выложу на свой сайт. Буду "учиться" у авр 123 - никакого словоблудия и "художеств" при оформлении ;)

удачи всем!
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

aleksandr-zh писал(а):Кстати! найти инструмент было сложно: многие компиляторы не поддерживают этот МК!


Полные версии HI-TECH и ССS PICC поддерживают - нужны скажешь.
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Сообщение aleksandr-zh »

dosikus писал(а):Полные версии HI-TECH и ССS PICC поддерживают - нужны скажешь.

Спасибо!

но я ноль в Си, поэтому использовал другие программы
Хотя может кому из "учеников" в будущем и понадобятся
Аватара пользователя
Аксель
Опытный кот
Сообщения: 800
Зарегистрирован: Ср апр 25, 2007 09:50:43
Откуда: Киев
Контактная информация:

Сообщение Аксель »

ЫЫЫЫЫ Сегодня запускал свежеизготовленную девайсину на ATmega8.

Включаю.
...тыдыдыдыдым - не работает. Прошиваю тестовую прошивку под этот девайс, так - ресетится вместо возврата "в вечный" цикл. "Пляски с бубном". Ресетится. "Пляски с бубном" Ресетится. Новая прошивка для теста, "пляски с бубном" - ресетится.

Откладываю это до вечера. Возвращаю всё как было.

И вот вечером, заменяю одну мегу8 на другую. Последняя тестовая прошивка - работает. Замечательно! Рабочая прошивка - работает. Отличо!

А теперь проверочка: проверяю первую мегу8 - ресетится. Ставлю вторую обратно - работает.

Обе меги были куплены вместе. Софт для прошивки, настройки фузов, и прошивки - одинаковые.
Скелет колобка состоит из черепа.
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Сообщение aleksandr-zh »

хаха!
тут случайно мы с другом протестировали компиляторы на компактность кода
Он установил CVAVR и WinAVR
а я FastAVR, AVR Simulator и MikroBasic

писали одно и тоже:

Код: Выделить всё

DDRC=&h1f
 
Start_prog:
 
Set PORTC.1
WaitUs 20000 ' Пауза 200.000 Us
 
Reset PORTC.1
WaitMs 600 ' Пауза 600 ms
 
GoTo Start_prog


вот результаты (я обалдел! )

MikroBasic - 67 слов
CVAVR (макс оптимизация) - 66 слов
WinAVR - 50 слов
AVR Simulator - 39 слов
FastAVR - 34 слова

то, что они выдали в асм код - могу выложить
есть целые шедевры!!!
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Твой пример не есть показатель ...
Тестируй хотя бы мат. функции .
aleksandr-zh
Сверлит текстолит когтями
Сообщения: 1278
Зарегистрирован: Пн июн 18, 2007 21:51:20

Сообщение aleksandr-zh »

напишите пару примеров - мы проверим

Переписал реальную программу из FastAVR - 444 слова
под AVR Simulator - 430 слов

Но это - не чистый тест:
в последнем нет некоторых возможностей от FastAVR
и пришлось их писать для Симулятора

под МикроБасик переписывать не буду - геморный он...
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18853
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

Народ, дайте плиз фрагмент кода для CVAVR (если есть :) ) на меге (к примеру меге 16), чтобы уровень сигнала на входе АЦП вывести в виде переменной.
Что-то не очень-то понял, как пользоваться АЦП...
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

А прямо как в примере в папке CVAVR и как в 11 задаче-упражнении курса AVR для начинающих в моей домашней страничке. И как в задаче 9.

Например вот так вот:

Код: Выделить всё

( переменная типа unsigned int ) = ADCW;
Ответить

Вернуться в «Теория»