В данной же теме я хочу обратить Ваше внимание на систему FSBus и вот почему: автор системы Dirk Anderseck разработал не только «железо», но и создал библиотеку функций, позволяющую общаться и с его аппаратным обеспечением и с симулятором (по задумке автора посредством модуля FSUIPC, но никто ведь не мешает использовать любой метод доступа к переменным симулятора, будь то SimConnect или прямое чтение из адресного пространства процесса, лишь бы было умение это делать). Пользователю остаётся лишь написать обработчик событий и реакцию на них. Причём всё это задокументированно в прекрасной форме и с примерами.
Давайте взглянем поближе на аппаратную часть FSBus. Она представляет из себя модульную систему, которая включает в себя шесть модулей:
— модуль COM (коммутация между компьютером и остальными модулями системы);
— модуль Input/Output (аналоговый ввод/вывод и цифровой вывод);
— модуль Display (индикация на семисегментных индикаторах);
— модуль Stepper (управление шаговыми двигателями);
— модуль Servo (управление сервоприводами);
— модуль Digital Output 64 — DO64 (цифровой вывод на 64 линии).
Оригинальная документация, файлы прошивок и печатные платы в формате Sprint-Layout доступны на сайте проекта. И всё бы ничего, но лично меня смущает излишняя «громоздкость» авторского решения, да и разводка под выводные компоненты подразумевает сверление огромного количества отверстий, что лично я не люблю. Поэтому я решил слегка модернизировать оригинальные платы, в частности:
— сменить тип подключения с COM-порта на USB;
— перейти по-максимуму на SMD-компоненты (но для простоты использовать у «мелочёвки» типоразмер 1206);
— сделать платы односторонними для упрощения изготовления в домашних условиях;
— разделить модули I/O и DO64 на подмодули, дабы иметь возможность собрать именно то количество вводов/выводов, которое нужно для конкретного решения;
— убрать за ненадобностью светодиоды, разъёмы ISP и вообще всё лишнее.
Конечно, это задача не одного дня и на данный момент реализована только часть задуманного. Надеюсь, что у кого-то ещё, кроме меня, возникнет желание поучаствовать в данной работе, ведь именно за этим и создана данная тема.
Выражаю огромную благодарность Сергею (САБ) за его неоценимую помощь, без которой ничего этого просто бы не было.
Данная тема будет пополняться готовыми решениями путём редактирования первых трёх сообщений .
Дата последнего редактриования: 21.03.2012
P.S. Инструментарий:
Внимание! Данная тема всего лишь попытка модернизации печатных плат оригинального проекта, поэтому неоходимо изучение оригинальной документации и наличие оригинальных прошивок. Исключения, если таковые имеются, оговариваются отдельно в описании конкретного модуля.
И помните: в Ваших руках конструктор. Проявите смекалку, энтузиазм, не бойтесь экспериментов и всё у Вас получится.
Сообщение отредактировал LifeBurner: 21 Март 2012 — 14:44
Модуль COM:
Модуль Input/Output:
Модуль Display:
Модуль Servo:
Модуль Digital Output 64 (DO64):
Необходимо иметь в виду, что:
— на платах отсутствуют отдельные разъёмы для внутрисхемного программирования контроллеров (как на оригинальных платах);
— если на плате нет отдельных выводов для ISP, значит нужно пользоваться соответствующими пинами коннекторов, подключенных к нужным ножкам контроллера.
Сообщение отредактировал LifeBurner: 02 Апрель 2012 — 11:20
Сообщение отредактировал LifeBurner: 21 Март 2012 — 14:26
Убедительная просьба писать сообщения только по делу. Давайте не загромождать тему обсуждением процесса изготовления плат, типа «ЛУТ против Фоторезиста», «Хлорка против Купороса» и им подобными или всякими «Вах!»; для первого есть специальная тема, а от вторых толку ноль. Давайте делиться мыслями, идеями и их реализациями в конкретных формах, желательно с рисунками и файлами прошивок/разводок
Наших же уважаемых модераторов прошу безжалостно тереть всякий флуд, но с умом!
Сообщение отредактировал LifeBurner: 14 Март 2012 — 15:47
Я бы лучше занялся модернизацией IOCARDS. Там этот вопрос решен.