Технический форум
Вернуться   Технический форум > Электроника, самоделки и техника > Форум по электронике > Микропроцессоры


Ответ
 
Опции темы Опции просмотра
Старый 15.07.2010, 18:10   #21 (permalink)
INFERION
Member
 
Аватар для INFERION
 
Регистрация: 23.11.2008
Сообщений: 1,084
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 460
По умолчанию

А прошивать её тогда через USB как? Всётаки тоже МК, а тут вся фишка в гибкости схемы. Без этого то можно обойтись, но всёравно экономим только мультиплексор...
INFERION вне форума   Ответить с цитированием
Старый 15.07.2010, 18:14   #22 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

BootLoader использовать. Ну съест он пару сотен байт...
Long Cat вне форума   Ответить с цитированием
Старый 15.07.2010, 18:15   #23 (permalink)
INFERION
Member
 
Аватар для INFERION
 
Регистрация: 23.11.2008
Сообщений: 1,084
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 460
По умолчанию

А тинька разве умеет писать код в свою память (из своей же программы)? Бут-лоадер то штука хорошая, но он ведь не каждым МК поддерживается...
INFERION вне форума   Ответить с цитированием
Старый 15.07.2010, 18:23   #24 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

Главное, чтобы была инструкция для записи во FLASH. О ее наличии надо сверится с даташитом.
Long Cat вне форума   Ответить с цитированием
Старый 15.07.2010, 21:57   #25 (permalink)
INFERION
Member
 
Аватар для INFERION
 
Регистрация: 23.11.2008
Сообщений: 1,084
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 460
По умолчанию

Я какраз о ней и пишу. Я её высматривал. У тинек вообще её не наблюдал...
INFERION вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 15.07.2010, 23:54   #26 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

В таком случае, можно поступить так: в процессе работы передавать данные по I2C, а на время программирования работать по SPI, благо на меге есть свободные пины.
Long Cat вне форума   Ответить с цитированием
Старый 16.07.2010, 01:57   #27 (permalink)
INFERION
Member
 
Аватар для INFERION
 
Регистрация: 23.11.2008
Сообщений: 1,084
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 460
По умолчанию

Периферия во время программирования будет мешать. Можно заюзать либо то, либо то. Вариант с дугими AVR, без USB интерфейса, отпадает. А среди оставшихся выбор очень скудный и нет I2C интерфейса. Другое дело микрочип. Да и МК стоит три бакса, куда дешевле 10-ти еврового АЦП, и 5-ти и 2-х баксовых МК. За габариты уже молчу. Это дело не только для себя делается. В серию пойдёт. Поэтому и гоняюсь за характеристиками. Вариант с AVR я с самого начала рассматривал, и не нашел ничего подходящего. Начал даже посматривать в сторону ARM, но у микрочипа всётаки нашелся заманчивый вариант. Осталось только общий язык с ним найти...
INFERION вне форума   Ответить с цитированием
Старый 16.07.2010, 04:08   #28 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

Если пойдет в серию, значит, будет продаваться?
Тогда встает вопрос об аудитории.
Неискушенным людям гораздо понятнее экран, чем показометр на трех светодиодах.
Далее, зачем в устройство добавлено USB? Как его конфигурировать, если под рукой нет ПК, а индикация на устройстве убога?
Кто будет писать программу для ПК, обслуживающую устройство?

Для написания основной прошивки, я рекомендую использовать C.
Потери в производительности минимальны (настройкой компилятора от них можно избавится). За то, много полюсов:
-Нет необходимости разбираться и оптимизировать арифметику.
-Всегда есть возможность быстро исправить программу.
-Есть возможность отладки модулей программы на ПК.
-Имеются готовые библиотеки для работы с периферией. В том числе, программные UART, I2C, SPI и так далее.

Последний раз редактировалось Long Cat; 16.07.2010 в 04:17
Long Cat вне форума   Ответить с цитированием
Старый 16.07.2010, 06:08   #29 (permalink)
INFERION
Member
 
Аватар для INFERION
 
Регистрация: 23.11.2008
Сообщений: 1,084
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 460
По умолчанию

В устройсте, в котором это дело будет использоватся, дисплей смотрится как третья нога у человека. Речь идёт о мощном лазерном целеуказателе или фонарике на 5...10W. И габариты у него относительно скромные. Индикация может и убогая, но информативная. Там ведь не просто мигание RGB светодиодами, а ШИМ на каждый канал. В любом случае индикатор это отдельный узел, связаный с основным через UART, и его всегда можно заменить на более крутой, даже с тачскрином и играми . Делать я его буду на ATtiny2313, с которой я уже опыт работы имею...
Конфигурировать необходимости нет. Для управления есть всего одна кнопка, с кучей функций на ней (реализация удобная). Если же надо будет что-то изменить, через USB можно перепрошить, или переконфигурировать. Софт на комп есть кому писать...
USB интерфейс используется главным образом как источник питания для заряда аккумулятора (причём контроллер может определять от чего питается и выставлять лимиты в 100mA, 500mA, 800mA и >1A), и уже потом для мониторинга, конфигурации и т.п. Сейчас к компу доступ получить может каждый, а заряжать можно и через готовый адаптер...

Для такой задачи собирать сложное, громоздкое и дорогое устройство нецелесообразно. Поэтому AVR и пошел лесом...
Си я не понимаю, и врятли осилю. Ассемблер гораздо проще и является чистым машинным кодом. Тут программа не занимает десятки килобайт, чтоб задумыватся о языке высокого уровня. Думаю она и килобайта не займёт. Да и видил я примеры написания программы разными языками. Ассемблер в разы меньше, опрятнее, и неизвестно на сколько быстрее за Си. А паскаль это вообще тихий ужас. У 13-й тиньки не хватает памяти, чтоб сделать простую линейную шкалу на 5 светодиодов...
Примеров программ и для ассемблера хватает (программная реализация интерфейсов, умножение, деление и т.п.).

Последний раз редактировалось INFERION; 16.07.2010 в 06:37
INFERION вне форума   Ответить с цитированием
Старый 16.07.2010, 06:33   #30 (permalink)
Long Cat
Banned
 
Регистрация: 01.09.2009
Сообщений: 4,396
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 2544
По умолчанию

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

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

Зачем таскать аппаратный USB, если он используется только для конфигурирования?

Будет маленькое устройство и книжка: нажмите 23 раза на кнопку. Убедитесь, что второй слева светодиод стал светло-розовым.

Можно сделать красивый док для указки с экраном и сетевым зарядным устройством.
Long Cat вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 19:38.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.