МК кто-нибудь программирует? PIC, AVR, ARM?
#3
Отправлено 16 декабря 2009 - 16:33
#6
Отправлено 17 декабря 2009 - 22:05
#8
Отправлено 18 декабря 2009 - 15:28
Три составляющих успехаНу наконец то что искал !!
Вырвиглаз, не подскажешь с чего начать этим заниматься? Может есть какой нибуть учебник или самоучитель?
1) Программатор
2) Компилятор
3) Отладчик
Программатор нужен, чтобы с компа физически залить прошивку в устройство. Здесь важно выбрать такой программатор, который поддерживает тот МК, который тебе нужен. Далее ищем программу, которая будет его прошивать.
Компилятор - это среда разработки. В ней пишем программу и генерим прошивку. У меня их несколько, но сейчас использую от фирмы MikroE. Об этом позже.
В отладчике все это дело проверяем. Отладчик может быть программой, может быть отладочной платой. Я использую программу Proteus 7.6 SP0. Она удобна тем, что весь проект можно собрать, проверить, развести плату и проверить с реальной прошивкой и реальными параметрами.
an.png 59,61К 142 Количество загрузок
Я использую МК фирм PIC и Atmel. Сейчас собираюсь переходить на ARM7.
Учебник тебе не понадобится.
Я вечером выложу краткий ФАК, как запустить свой первый МК.
Сообщение изменено: Вырвиглаз (18 декабря 2009 - 15:29 )
#9
Отправлено 24 декабря 2009 - 17:40
А что это за чип, который 480 Мбит по USB поддерживает? КолисьЯ сегодня впервые осуществил передачу данных по USB. Без всяких эмуляций ком портов. Сразу в чип. 480 мбит! Теперь буду один из своих проектов переводить на USB. Кстати, остановился на компиляторах от МикроЕ. На компе пишу в VB6, как и много лет назад.
#10
Отправлено 27 декабря 2009 - 00:15
Решил сделать игру - змейку. Игровое поле - матрица из светодиодов 10х10. Мигание лампочек осуществлять при помощи динамической индикации.
Управление - 4 кнопки.
Нарисовал такую схему.
Схему вырисовывать особо не старался, ибо ничего великого там не изображено, да и рисуют их, я чувствую, не в фотожопе.
Скажите, правильно ли я реализовал эту динамическую индикацию.
Идея такова - зажигать очень быстро, последовательно определенные светодиоды(согласно программе) в каждом столбце, начиная с первого.
И вообще кто где покупает/заказывает электронные запчасти, а именно микроконтроллер.
Прошу сильно не пинать, если что-то неправильно сказал или нарисовал.
#11
Отправлено 27 декабря 2009 - 00:34
pikemon, схема верная. Но паять запаришься )))) Да и прогу писать тоже. Надо начинать с чего-то более простого и нужного.
#12
Отправлено 27 декабря 2009 - 01:46
После семестра изучения arvutid в Вирумааском Колледже решил попробовать сам что-то создать на основе микроконтроллера(ибо без практики как-то не совсем всё укладывается в голове).
Решил сделать игру - змейку. Игровое поле - матрица из светодиодов 10х10. Мигание лампочек осуществлять при помощи динамической индикации.
Управление - 4 кнопки.
Нарисовал такую схему.
Схему вырисовывать особо не старался, ибо ничего великого там не изображено, да и рисуют их, я чувствую, не в фотожопе.
Скажите, правильно ли я реализовал эту динамическую индикацию.
Идея такова - зажигать очень быстро, последовательно определенные светодиоды(согласно программе) в каждом столбце, начиная с первого.
И вообще кто где покупает/заказывает электронные запчасти, а именно микроконтроллер.
Прошу сильно не пинать, если что-то неправильно сказал или нарисовал.
Сообщение изменено: mi1ha (27 декабря 2009 - 18:26 )
#14
Отправлено 27 декабря 2009 - 12:58
pikemon, схема верная. Но паять запаришься )))) Да и прогу писать тоже. Надо начинать с чего-то более простого и нужного.
Например? Что посоветуете сделать для начала?
И самое главное где вы покупаете запчасти, а то в Кохтла я знаю только один магазин - полюс. Микроконтроллеров там вроде нету, завтра еще позвоню и спрошу можно ли заказать.
Дома всю технику старую обсмотрел, микроконтроллеров много везде, но даташит нашел только для одного, думаю выпаять его нафиг.
Вот тут показывается как выпаять дедушкиным способов - выпайка
Как думаете, нормальный ли способ?
Сообщение изменено: pikemon (27 декабря 2009 - 12:59 )
#15
Отправлено 27 декабря 2009 - 16:22
Она для быстрого монтажа. Паять ничего не надо.
На ней собери, к примеру, динамическую индикацию, примени АЦП, кнопки поставь, сделай измеритель чего-угодно. Я начинал с измерения сопротивления аккумуляторов. Ставил полевик, он выступал в роли переменного резистора. На него выводил сигнал CCP (шим). Правда, я упростил себе задачу, дополнив схему стабилизатором тока на операционнике. Могу поделится схемой. Потом измеряешь падение напряжение и рассчитываешь внутреннее сопротивление.
Потом удалось купить двухстрочные экраны по цене 80р за штуку. Пожалел, что взял только парочку. С ними делать индикацию очень легко и просто. Да и хватает 6 выводов всего. И не надо занимать прерывания для моргания диодами. У меня на четырех семисегментных индикаторах получалось запускать индикацию так, что моргания не ощущалось совершенно.
Да, провода для макетной платы бери из витой пары. Они там идеально подходят. Я все проекты сначала на макетке собираю, если не уверен в схеме.
Сообщение изменено: Вырвиглаз (27 декабря 2009 - 16:26 )
#18
Отправлено 30 декабря 2009 - 20:29
http://chipenable.ru...ttons-to-micros
Вот тут прочитал, но не совсем понял. Разве нельзя поставить порт на ввод, напрямую соединить ножку с плюсом питания. Между ними кнопку. Когда кнопка нажата, то цепь замыкается и на ножке логическая единица. При необходимости поставить резистор?
#19
Отправлено 30 декабря 2009 - 20:43
#20
Отправлено 30 декабря 2009 - 22:22
Не совсем так. Микроконтроллеру все равно, кнопка там или не кнопка. Ему важно напряжение на своей входной лапе. Если лапа замкнута на землю (напрямую или через резистор), то будет логический ноль. Если на питание - логическая единица. Но если лапа никуда не подключена - состояние на входе не определено. Это может быть ноль, единица, или постоянное чередование в труднопредсказуемой последовательности нулей и единиц.Между ними кнопку. Когда кнопка нажата, то цепь замыкается и на ножке логическая единица. При необходимости поставить резистор?
Обычно соединяют через резистор на питание, и через кнопку на землю. Когда кнопка не нажата, на входе будет высокий уровень (лапа через резистор соединена с питанием). Когда нажата - низкий, поскольку сопротивление кнопки намного меньше сопротивления резистора (вспоминаем простейший делитель напряжения). Без резистра нельзя, будет коза при нажатии кнопки.
Можно и наоборот - резистор на землю, кнопку на питание, это не принципиально.
Для разных МК есть нюансы. Например, эти резисторы обычно имеются внутри МК, но они опциональны, их можно програмно подключать и отключать. Это для Atmel.
Самое главное - вход не должен висеть в воздухе.
#22
Отправлено 30 декабря 2009 - 22:49
TL2.PNG 50,8К 104 Количество загрузокНарод, расскажите реальное применение сией премудрости.
Вот недавний мой проект. Pull-up резисторы внешние. R3,R8,R9 тянут входы А0,А1, А5 к земле. При нажатии кнопки на входы подается напряжение питания Vcc. Что есть логическая единица. Внутренние pull-up резисторы не используются т.к. на порт А они не предусмотрены, а переделывать мне лениво.
#23
Отправлено 30 декабря 2009 - 22:57
Верю в смерть после жизни, любовь после секса и в крем после бритья ...
#24
Отправлено 30 декабря 2009 - 23:03
Ну вот тебе реальное устройство. Часы, память, датчик температуры. Все вместе будет логгер. Часы с записью температуры окружающей среды с некоторым интервалом времени (минуты). При подключении к компу перегоняет данные в EXCEL и рисует график изменения температуры. Максимальное количество записей - 8000 измерений. Точность - 1 градус, 1 секунда в сутки. Функция сигнализации слабой батареи. Дружественный интерфейс, энергонезависимая память, литиевые аккумуляторы, низкое энергопотребление. По понятным причинам прошивку не выкладываю.Вырвиглаз, вопрос был к тому ... как ты это используешь в реальной жизни. Там температуру в комнате поддерживает ... жалюзями управляет или еще что?
#25
Отправлено 30 декабря 2009 - 23:13
А так наверно тема интересная. Но требует азарта.
Mitsubisi контролеры были.
Верю в смерть после жизни, любовь после секса и в крем после бритья ...
#26
Отправлено 30 декабря 2009 - 23:17
#28
Отправлено 05 января 2010 - 15:15
#29
Отправлено 05 января 2010 - 18:45
Сообщение о том, что программа не работает в реальном времени появляется?Решил попробовать сделать динамическую индикацию в Протеусе из светодиодов 10x10 по той схеме, которую я раньше выкладывал. Элементы расставил как нужно, программу, которая бы зажигала светодиоды последовательно, проверяя значения из созданного массива, написал на С в СAVR. Но вот при эмуляции в протеусе светодиоды загораются слишком медленно(не получается целостная картинка), но всётаки правильно. Вот хотел спросить, это моя вина что я что-то не так сделал или всётаки косяк в протеусе и на реальном устройстве должно зажигаться нормально?
Фузы и частоту на МК в протеусе установил верно?
Dead time не забыл? (время свечения должно быть выше времени не свечения)
Помочь с программой не могу т.к. на С не пишу и с AVR почти не связываюсь.
Мой выбор - микрочип. Их документация понятнее. Лучше быть хорошим программистом одних МК, чем плохим всех.
ЗЫ выложи проект, подумаем.
Сообщение изменено: Вырвиглаз (05 января 2010 - 18:46 )