Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Железки на микроконтроллерах - собираем с нуля


Информационный Канал Subscribe.Ru

Выпуск номер 3 Сравниваем камни-2
 
 

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

ОСНОВНЫЕ «ЗАПОВЕДИ»:

1. MCU (МК) - собственно микроконтроллер, микросхема, содержащая в себе однокристальную ЭВМ, долговременную память (flash, cmos), устройства ввода-вывода цифровой, а так же аналоговой информации.

2. RISC- сокращенный набор инструкций (инструкция или команда - это то, что выполняет наша однокристальная ЭВМ).

3. ROM – оперативная память (вырубаем питание, программа исчезает!).

4. RAM – постоянная память (программа сохраняется независимо от питания, см. зап. 3,4).

3. FLASH - флэш память. Многократно электрически перепрограммируемая память.

4. CMOS - Многократно перепрограммируемая память, стирается под ультрафиолетом (мы им пользоваться не будем, потому как можно обгореть :), посему работаем с flash микроконтроллерами).

5. ADC ( AD, АЦП) - аналого-цифровой преобразователь (к примеру звук в байты и во флэш :) ). МК фирм Microchip (C) и Atmel(C) несут на себе несколько каналов АЦП, в зависимости от сложности самой микросхемы и её цены (чем дороже, тем больше). Разрядность АЦП характеризует насколько точный сигнал вы можете с него получить, к примеру, чем выше разрядность АЦП, тем качественнее будет звук получаемый с микрофона.

6. DAC ( DA, ЦАП) - цифро-аналоговый преобразователь. (байты из флэша в звук :) ). Разрядность ЦАП см. зап. 5 J .

7. I/O ports (port A, port B) -порт вввода - вывода, на 8 разрядных микроконтроллерах 8 ножек, каждая ножка может принимать два значения - 0 и 1. То есть, током не бьет и током, ай бьет :) (шучу, конечно, напряжение 0 или 5 В). Один порт в целом 8 ножек или 1 байт.

Остальные, дам в следующих выпусках, дабы вы могли усвоить первые 7.

А теперь вернемся к нашим «баранам».

Среди 8 разрядных МК и в принципе всех остальных существуют своеобразные критерии выбора:

∙  Пригодность для прикладной системы. Может ли она быть сделана на однокристальном микроконтроллере или ее можно реализовать на основе какой либо специализированной микросхемы?

∙  Имеет ли микроконтроллер требуемое число контактов/портов ввода/ вывода, т.к. в случае их недостатка он не сможет выполнить работу, а в случае избытка цена будет слишком высокой?

∙  Имеет ли он все требуемые периферийные устройства, такие как последовательные порты ввода/вывода, RAM, ROM, A/D, D/A и т.д.?

∙  Имеет ли он другие периферийные устройства, которые не потребуются в системе?

∙  Обеспечивает ли ядро процессора необходимую производительность, т.е. вычислительную мощность, позволяющую обрабатывать системные запросы в течение всей жизни системы на выбранном прикладном языке? Слишком много расточительно, слишком мало не будет работать.

∙  Выделено ли в бюджете проекта достаточно средств, чтобы позволить себе использовать данный микроконтроллер. Для ответа на этот вопрос, обычно требуются расценки поставщика. Если данный микроконтроллер не приемлем для проекта, все остальные вопросы становятся несущественными, и вы должны начать поиски другого микроконтроллера.

∙  Доступность.

∙  Существует ли устройство в достаточных количествах?

∙  Производится ли оно сейчас?

∙  Что ожидается в будущем?

∙  Поддержка разработчика.

∙  Ассемблеры.

∙  Компиляторы.

∙  Средства отладки.

∙  Оценочный модуль (EVM).

∙  Внутрисхемные эмуляторы.

∙  Насадки для логических анализаторов.

∙  Отладочные мониторы.

∙  Отладчики программ в исходных текстах.

∙  Информационная поддержка

∙  Примеры применения.

∙  Сообщения об ошибках.

∙  Утилиты, в том числе "бесплатные" ассемблеры.

∙  Примеры исходных текстов.

∙  Поддержка применений у поставщика.

∙  Есть ли специальная группа, которая занимается только поддержкой применений?

∙  Есть ли инженеры, техники или продавцы?

∙  Насколько квалифицирован поддерживающий персонал, действительно ли он заинтересован в помощи вам при решении вашей проблемы?

∙  Существует ли телефонная и/ или FAXовая связь?

∙  Надежность фирмы производителя.

∙  Компетентность, подтвержденная разработками.

∙  Надежность производства, т.е. качество продукции.

∙  Время работы в этой области.

Для нас как начинающих разработчиков почти все эти пункты, МК фирм Microchip(C) и Atmel(C) выполняют на оценку пять . Но есть один нюанс.

Документация на МК фирмы Microchip практически вся ( на всю линейку МК ) доступна на качественном русском языке на сайте : www.microchip.ru .

А вот с AVR (к примеру ATmega ) фирмы Atmel дела обстоят значительно похуже. Кое-какие потуги лежат на сайте: www.atmel.ru . Несколько «ман» на Атмеловские МК вы найдете на портале : www.gaw.ru .

Остальное , у таких борцов за идею как я, а так же на чистом англицком языке на сайте : www.atmel.com

Судите Atmel сами :-D.

И теперь о положительных чертах МК AVR :

Новое ядро, а значит много полезных инструкций. У ATtiny26 , к примеру (соизмерим с PIC16F873 ) их 118 штук (у ПИКа-35). Про объектный код, выползающий из всего этого, я писал в предыдущем выпуске и повторятся не буду. Заявленное время выполнения инструкции 1 миллион на 1 мегагерц (т.е. 100 нс, у ПИК заявленная скорость выполнения 200 нс, значит он на своих 20Mhz , работает как AVR на 10 Mhz ).

На сегодня всё. Завтра ещё студентов учить, а для этого надо выспаться.

 
 

 

 
     
Илья - MechCraft(Собака)yandex.ru

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.hard.microhard
Отписаться

В избранное