Модераторы: PILOT, ManiaK, Mazzi

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> С чего начать, или как я учил своих студентов (эпос). 
:(
    Опции темы
PILOT
Дата 30.7.2004, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Когда-то я пробовал вести занятия по микроконтроллерам по чужому лабнику (лабораторному практикуму) и тогда начал его переделывать, придумывать новые главы и родился свой курс, который сейчас опробуется на молодых студентах, которых мне на работе подселили. smile.gif
В этом топике я буду потихоньку выкладывать все новые и новые главы, начиная с самого начала, т.е. с вопросов типа: а что такое микроконтроллер и для чего все это вообще нужно, имея две цели:
1) обучить
2) отфильтровать тех кому это не нужно нафиг, но кто слышал что-то о контроллерах, но не все узнал.

Что получится я не знаю, но должен заметить следующее:
1)никакая часть этой темы "с чего начать" не может быть воспроизведена нигде и ни в каком виде без моего согласия
2)пожалуйста не задавайте вопросы в этой теме, создайте топик и спросите

Собственно и все smile.gif

СУВ,


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 17.8.2004, 09:31 (ссылка) |    (голосов:5) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



1-ый урок. или что нужно знать.
Что нужно? интерес наверное и твердая уверенность что все получится. Без этого ничего не выйдет.
Особенность программирования контролллеров заключается в том, что необходимо не только уметь программировать (т.е. иметь навыки програмирования, что приходит с опытом интересующегося), но и понимать хотябы основы цифровой схемотехники. В последнем сложностей не бывает, если почитать соотв. литературу. Уж поверьте цифровая схемотехника гораздо проще аналоговой.
Как известно сейчас ни одно устройство, более менее современное не обходится без какого=то алгоритма функционирования. Взять стиральную машину: засыпал белья, нажал кнопку и ушел на работу. Расскажите об этом африканцу из племени тумба-юмба - обзавидуется! А Вы уже не обращаете на это никакого внимания, привыкли. А ведь машина сама набирает воду, до срабатывания соотв. датчиа уровня, начинает крутить белье и если много воды впиталось, то добирает воду. Воду пропускает через отсек с порошком. И начинает крутить вертеть столько времени, сколько необходимо для данной массы белья (некоторые машины еще и взвешивают белье), потом отжим, полоскание, второй цикл, сушка, а ведь нужно еще следить за температурой воды, за нажатыми кнопками на панели управления, выводить данные на индикаторы, следить за потреблением (вдруг барабан или нагреватель сгорели), за открытием дверцы и еще за кучей параметров и алгоритмических моментов.
Конечно можно было бы вставить в машинку компьютер: ну там, проц.,маму., хард с прогой. И стоила бы тогда эта машинка за 1000$, ведь нужен и влагостойкий корпус к цифровой части и источник питания, и хард от вибраций пришлось бы защищать, короче - сложно.
Проблема решается просто - контроллер + обвеска.
Контроллер - устройство совместившее в себе и проц, и маму, и память, и хард, но в малых объемах.
Обвеска - дополнительные устройства контроля, управления, индикации, которые позволяют согласовывать команды управления и контроля с объектами управления и контроля (крутить двигатель, закрывать-открывать клапана, включать нагреватель и пр.)
Как же совмещены в контроллере столько функций?
Очень просто, в нем есть все, но помалу. По сравнению с компьютером вообще ничтожно.
Например, в контроллере ОЗУ может быть 128 байт, а память программ (аналог харда) может быть всего 2кБ.
А что является аналогом Мамы?
Чтобы ответить на этот вопрос нужно знать, что такое сама Мама. Ну, в принципе, Мама это всего лишь устройство, в которое мы все вставляем, всякие платы, память, процессор, а также клавиатуру, мышь, и всякую другую дрянь. Но, если вспомнить, процессор может только читать, писать и вычислять, причем писать и читать из адресного пространства, а оно не обязательно находится в памяти (т.е. обращаться процессор может не только к ячейкам вставленной вами DDR памяти, к примеру; а может читать состояния всяких портов, например, LPT). Вот! Т.е. получается, что Мама предоставляет процессору в качестве доступных ресурсов не только память, но и другие установленные на плате ресурсы (порт RS-232, другие платы, харды, CD-ROM и прочее) и все это становится доступным процессору только благодаря материнской плате.
В контроллере же уже в самом есть Мама, правда опять урезанная.

Продолжение следует…


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 19.8.2004, 08:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Теперь пришло время остановиться в попытке изучить внутренности контроллера, т.к. это лучше делать постепенно, выполняя те или иные задачи-упражнения использующие различные ресурсы контроллера.
Что необходимо для изучения.
1) Макет
2) Устройство для программирования* (программатор)
3) Компьютер
4) Среда программирования
5) Программа для программирования*
* - имеется в виду физическое программирования, т.е. прошивание.
Самое сложное из всего этого – Макет. На его изготовление может потребоваться достаточно много времени и кое-какие сбережения.
На макете будут расположены следующие узлы и блоки:
1) Сам контроллер (выберем какой)
2) Кварцевый резонатор с конденсаторами
3) Стабилизатор питания с конденсаторами (в т.ч. электролитическими)
4) Пьезоизлучатель (пищалка)
5) Светодиодный 7-ми сегментный 3-х разрядный индикатор с транзисторной схемой переключения разрядов для динамической развертки
6) 9 клавиш с подтягивающими резисторами
7) 2 светодиода (1-питание, 2-для упражнений)
8) Преобразователь напряжений для работы с COM портом с конденсаторами и разъемом.
9) Порт внутрисхемного программирования с соотв. Микросхемой.
10) Возможно еще усилитель (собранный на его базе интегратор), для работы с шим.
Второе по сложности – программатор.
Т.к. контроллер который будет изучаться (я пока могу посоветовать либо 51-ый либо AVR, но скорее более распространен 51-ый, pic я преподавать не смогу) позволяет программировать его внутрисхемно, то скорее всего придется делать программатор ByteBlaster.
Напомню про комплектующие к нему и схему:
схема:
http://www.altera.com/literature/ds/dsbytemv.pdf
на ее сбор уйдет не более 300 руб (макетка стоит 220 рублей)
что нужно купить:
  • 1) резисторы С1-4 (0.125 ватт):
  • 1.1 100 Ом - 20 шт.
  • 1.2 2К2 - 10 шт. (около 20 рублей)
  • 2) Разъемы:
  • 2.1 DB25M + корпус DN-25
  • 2.2 IDC вилку с шагом 2.54 на 10 контактов
  • 2.3 IDC розетку в плату 2.54 на 10 (около 30-40 рублей)
  • 3) шлейф, шаг 1.27, 10 жил, 1-3 метра (на будущее) (около 20-30 рублей)
  • 4) микросхема буффер 74HC244 в дип корпусе (8 рублей)
  • 5) макетная плата. Дип. двусторонняя, как можно меньше, чтоб не переплатить. (100-300 рублей)

Далее нужно отрезать кусок макетки так чтобы она помещалась в корпус ЛПТ разъема и разместить все компоненты, либо не делать этого, а просто разместить элементы на плате и сделать шлейфом отвод к LPT порту.
Макетку можно вставить в промежуток между контактами разъема ЛПТ и припаять макетку к разъему так чтобы небыло КЗ. После размещения элементов соединить их согласно схеме по ссылке, маленькими проводками.
В IDC разъеме предусмотреть запитывание с платы контроллера +5В (либо с USB, как кому удобнее).
скачать программу:
http://www.atmel.ru/Binary/At-load.zip
работает только из 9x и чистого дос, т.к. использует прямой доступ к портам.
Но если воспользоваться программой ниже, то можно и из NT подобных мастдаев зашивать.
http://forum.vingrad.ru/index.php?act=Atta...=post&id=163806

Продолжение следует...


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 23.8.2004, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Итак выбран AVR.
Для работы потребуется:
1) Среда программирования AVR Studio 4.x.x скачать можно здесь.
2) Документация на контроллер AT90mega48 можно взять здесь.

Дальше будем макеты собирать на базе этого контроллера.
Изучать будем AVR ASM.

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 24.8.2004, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



по поводу макета:
у меня такая мысль, а давайте-ка изучим параллельно P-CAD?
Весь макет сделаем в нем, а плату изготовим сами (сами распечатаем, сами потравим) а те кто не хочет травить будут использовать макетную плату купленную в магазине.
P-CAD пригодится и дальше, т.к. без него (или аналогов) не изготовить не одной платы. А раз так, то нужно преобрести P-CAD, который продается на дисках посвященных "Электронике", "Схемотехнике" и т.п.

СУВ.


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 8.9.2004, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Ну вот... будем считать что все готово. У всех все скачано. Тогда начнем с Пи-КАДА (P-CAD).
Этот софт предназначен для так называемого сквозного проектирования электронных схем, это означает что все этапы разработки схемы можно делать только в этой программе (но это не значит что так нужно делать). Что включает в себя разработка? Если просто то:
1) разработка принципиальной схемы
2) размещение элементов на будущей плате
3) разводка (соединение проводниками)
Из этих трех шагов 2 последних при желании можно автоматизировать (это не значит что нужно) и в изучаемом софте эта возможность предусмотрена.
Если мы посмотрим в меню «Пуск» -> «Программы» -> «P-CAD», то увидим что P-CAD состоит из многих программ. Перечислим необходимые нам:
1) Schematics (в этой программе мы будем чертить схемы из элементов соединяя их линиями-проводниками)
2) Symbol Editor (а в этой мы будем создавать те самые элементы, которые будем использовать в Schematics)
3) Library Executive (это мозг P-CAD, тут содержаться все элементы в виде подключаемых библиотек, и тут же происходит их полная настройка)
4) PCB (тут мы будем создавать нашу печатную плату путем размещения физических элементов, таких как корпуса, разъемы, дырки, и соединять их уже физическими «дорожками» на плате)
5) Pattern Editor (здесь мы создадим те самые корпуса для PCB)
Начнем с примера попроще. Итак, как мы и условились в нашей будущей схеме нам не обойтись без резисторов. Попробуем его создать.
Для этого открываем Symbol Editor.



--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 8.9.2004, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Так выглядит окно после запуска.
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 84 )
Присоединённый файл  Sym_Editor.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 8.9.2004, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Задаем параметры настройки программы:
1) идем в Options -> Configure и устанасливаем параметры как на картинке внизу.

Здесь мы указали что будем пользоваться милиметрами, указали небольшой размер рабочей области, разрешили автосохранения.
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 44 )
Присоединённый файл  s_e_conf.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 8.9.2004, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



2) идем в Options -> Grids...
Там мы устанавливаем шаги сетки. Вносим новый шаг: набираем, например, 2.5 и нажимаем кнопку Add (Добавить). И получаем примерно следующее:
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 29 )
Присоединённый файл  s_e_opt_grid.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 8.9.2004, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Теперь нужно удалить мешающую нам дюймовую сетку.
Выделяем ее и жмем Delete:
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 27 )
Присоединённый файл  s_e_opt_grid2.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 8.9.2004, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Обратите внимание что сетка изменилась и стала более плотной.

Теперь можно посмотреть на то что мы сделали. После установок размеров и сеток возвращаемся к рабочему полю программы. Как видите сетка уже другая, и размерность именно в миллиметрах. Можно было оставить дюймы, но тогда мы отойдем от гостов, а это не есть хорошо.
Попробуйте нажать клавишу "+"... а потом "-", познакомились с зумом?
Нажимайте "+" пока не появится реальная сетка (а не зеленая, которая только кратна настоящей).
Теперь можно рисовать, но сначала нужно установить некоторые параметры "рисования".

СУВ.
user posted image

Присоединённый файл ( Кол-во скачиваний: 26 )
Присоединённый файл  Sym_Editor2.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 9.9.2004, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Прежде чем рисовать изменим толщину линии которой будем рисовать, это делается для того чтобы элементы соответствовали ГОСТу и просто для удобства. И вообще я рекомендую придерживаться ГОСТа при при разработках чего-либо. Потому что если привыкните это делать сразу в последствие многие подводные камни перестануть быть оными это раз, а во-вторых известна аллергия к ГОСТам у всех разработчиков, т.к. при неожиданном требовании сделать по ГОСТу нужно переделывать все элементы во всех используемых биюлиотеках.
Итак вызываем меню Options -> Current Line и изменяем параметры как показано на рисунке ниже.
Жмем ОК и видим что в правом углу появилось наше введенное 0.300мм, что и требовалось.
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 24 )
Присоединённый файл  s_e_opt_line.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 9.9.2004, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Вот так должны выглядеть основные элементы согласно ГОСТ (нас сейчас интересует 55-ый элемент):
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 52 )
Присоединённый файл  sxem1.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 13.9.2004, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Итак, высота резистора 4мм, а длина 10мм.
Смотрим на нашу сетку, а она у нас 2.5мм, значит добавляем в список сетки еще один шаг: 1мм (Options->Grids...)

Теперь самое главное! Сохраним этот файл как начальный для создания любого компонента. Например, под именем "templ_1.sym". Это делается для того чтобы не устанавливать параметры сетки, толщины и пр. каждый раз когда Вам нужно будет что-то новое создать, нам предстоит создать 2 десятка элементов и не очень хочется 20 раз вводить одно и то же.




--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
PILOT
Дата 13.9.2004, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


производство
****


Профиль
Группа: Модератор
Сообщений: 2724
Регистрация: 4.4.2002
Где: москва

Репутация: 20
Всего: 54



Теперь можно сохранить файл под реальным именем компонента т.е. как обозначение резистора.
Обратите внимание на следующую деталь: резисторы разной мощности имеют различное обозначение, а именно:
--Resize_Images_Alt_Text--

Присоединённый файл ( Кол-во скачиваний: 38 )
Присоединённый файл  resistors_obozn_pow.gif


--------------------
тут могла быть Ваша реклама...
PM MAIL WWW ICQ   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.1297 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.