Тем более, что в коммерческом плане этот проект абсолютно бесперспективен! Т.е. цель его может быть лишь одна: освоение ПРОТЕУС'а и научиться программировать PIC контроллеры.
И тебе была предложена последовательность действий, которая придумана уже давным-давно и полностью себя оправдала:
В коммерческом плане это вполне перспективный проект, так как многие люди (среди молодёжи особенно) им интересуются.
Очень и очень сомневаюсь! Поскольку молодёжь уже привыкла к сенсорной практически полноразмерной клавиатуре смартфонов. А её так называемый интерес вызван скорее всего тем, что при общении с ними ты попросту ввёл их в заблуждение! Вот когда будет прототип или даже опытный образец, предложи его испытать кому-нибудь из молодёжи. Я думаю, ты услышишь много интересного как о клавиатуре, так и о себе!
1. Разработка технического задания. Не нужно так, как этого требует действующая нормативная документация, достаточно внятно описáть функции, которые должны выполняться в штатном режиме работы и при нештатных ситуациях, например одновременного нажатия нескольких клавиш.
Хорошо, постараюсь оформить ТЗ более адекватно и в соответствии со стандартами оформления технических документов. Думаю на это дело у меня уйдет месяца три, вряд ли быстрее, хотя всё возможно.
Три месяца - это очень долго! Такими темпами на создание даже прототипа тебе жизни не хватит! Максимум - неделя, а по-хорошему - два-три дня. И не забывай про такую интересную вещь, которую невозможно игнорировать: старение происходит по экспоненте, развитие - по функции единица минус обратная экспонента. Конечно же всё это по времени. Максимум производительности, связанный прежде всего с получением новых знаний, - это 40 лет. После 40 лет получать новые знания человеку становится довольно тяжело, т.е. его усвояемость знаний существенно снижается, поэтому с 40 до 60 лет человек живёт в основном за счёт знаний и опыта, которые он приобрёл
до 40 лет. Если к этому возрасту он не приобрёл ни знаний, ни опыта, то он практически ни на что серьёзное не способен и практически выброшен из активной жизни, как бы жестоко это не звучало. А после 60-ти начинается резкое снижение интеллектуальных способностей. И если к 40-ка годам ты не смог достичь если не выдающихся, а хотя бы приличных результатов в какой-либо области, то после 60 ты вообще становишься абсолютно беспомощным в интеллектуальном, а подчас и в физическом плане! В качестве примера: обрати внимание - лауреаты Нобелевской премии получают её за открытия, сделанные ими как правило в возрасте
до 30-ти лет! Поэтому следует трезво подходить к своим возможностям, соизмеряя их со своим возрастом и тенденцией старения.
2. Создание принципиальной схемы, достаточной для реализации требований, заданных на шаге 1 с учётом того, что большая часть функций должна быть реализована программно. Принципиальная схема создаётся сразу в ПРОТЕУС'е.
Я не понимаю, зачем создавать заново принципиальную схему тогда как ты сам её уже давно сделал.
Ватсон, это же элементарно! Принципиальная схема в ПРОТЕУС'е, как и программа микроконтроллера там же, нужна для того, чтобы во-первых, можно было отладить виртуальную клавиатуру - аппаратную и программную части, а во-вторых, оттрассировать печатную плату! Откуда ПРОТЕУС будет знать что, и как ему разводить? Только из принципиальной схемы! Я уже устал тебе объяснять, что
ПРОТЕУС обеспечивает сквозное проектирование!3. Разработка алгоритма работы программы, которая с учётом аппаратной реализации на шаге 2, должна полностью обеспечивать требования шага 1.
Допустим.
Не "допустим", а
обязательно! Дело в том, что человек, в силу своих психофизиологических способностей, просто не в состоянии держать в голове сколько-нибудь сложные конструкции. Если программа - это несколько десятков строк, то можно обойтись и без блок-схемы. И то не факт, что такая программа будет написана достаточно эффективно. Поверь моему опыту: когда я работал начальником отдела микропроцессорных разработок, у нас там тоже были "программисты", которые привыкли, что называется стрелять по-македонски, т.е. писать программы влёт, без блок-схем. А потом тратить уйму времени на поиск и устранение её дефектов. Когда же я уговорил всё же попробовать сначала нарисовать блок-схему, а потом по ней писать программу, - то их восторгу не было границ. Первые их слова: "
Господи, как же просто стало писать и отлаживать программы, да ещё и с минимальным количеством ошибок!" И хотя программа обслуживания клавиатуры достаточно примитивна, тем не менее, в ней будет явно больше сотни строк кода. А это значит, что без блок-схемы там будет уйма ошибок, которые ты запаришься искать и устранять! Так почему же не воспользоваться уже известным и отработанным приёмом, доказавшим свою эффективность?
4. Создание программы микроконтроллера в соответствии с алгоритмом, созданным на шаге 3. Программа создаётся сразу в ПРОТЕУС'е.
Обмозгую.
А что здесь обмозговывать? Я же объяснил для чего это делается - чтобы можно было произвести отладку виртуальной клавиатуры!
5. Отладка виртуального устройства - аппаратной и программной частей в ПРОТЕУС'е. Поиск и устранение ошибок как в аппаратной части, так и в программной.
Мне проще виртуальную модель клавиатуры на Дельфи 7 написать (исходник уже есть его "напильником" нужно подпилить).
Бли-и-ин! Да что же ты такой трудный-то?
Ещё раз:
ПРОТЕУС обеспечивает сквозное проектирование! При этом он
контролирует огромное количество ошибок, которые ты можешь внести в проект как на аппаратном, так и на программном уровнях, а сам
не допускает каких-либо ошибок. И если ты в ПРОТЕУС'е отладил своё изделие и твоя виртуальная клавиатура работает нормально, то и реальная, изготовленная по файлам ПРОТЕУС'а клавиатура, также будет
гарантированно работать! А что касается Дельфи, то ведь я уже писáл, это -
пустая трата времени!6. После того, как отладка виртуальной клавиатуры завершена, в ПРОТЕУС'е выполняется трассировка печатной платы/плат. При этом можно этот процесс выполнить либо автоматически, если нет опыта, либо поиграться с размещением компонентов на печатной плате.
До трассировки я пока ещё не добрался, сначала размещу элементы и как я писал нужно две платы, A и B, с микроконтроллером PIC и кнопками, соответственно.
Ты, по-моему, уже забыл, что я писáл: шаги следует выполнять
последовательно! Пока не завершил предыдущий шаг, переходить к следующему попросту
не имеет смысла! Во-первых, о каком это размещении ты пишешь? Размещение компонентов в ПРОТЕУС'е происходит
автоматически! Хотя и не оптимальным образом. Но, скорее всего у тебя, в отсутствии такого опыта,
получится ещё хуже! Во-вторых, раз будет две платы, то в ПРОТЕУС'е ты должен создать две схемы:
1. плата кнопок и светодиодов.
2. Плата процессора и разъёмов.
Схемы этих плат и их трассировка создаются в одном проекте, но независимо.
7. Шаблоны печатных плат распечатываются на обычной бумаге, наклеиваются на картонку по размеру печатной платы, выводы компонентов на шаблоне прокалываются шилом и в эти отверстия устанавливаются компоненты. Выводы компонентов соединяются проводниками, используя распечатанные шаблоны. Т.е. проводник располагается вдоль распечатанного будущего печатного проводника. Можно использовать обычный обмоточный провод в эмалевой изоляции, но лучше специальный - у которого эмаль снимается просто при нагревании паяльником. У обычного обмоточного провода изоляцию можно снять паяльником, если провод поместить в таблетку аспирина и там провести по нему паяльником. Только это желательно делать под вытяжкой, поскольку вонизм ещё тот!
Подумаю как лучше. Я так понял что я зря купил односторонний текстолит в ПРОМЭЛЕКТРОНИКЕ. Нужно было сразу покупать двухсторонний что я и сделаю этой осенью.
ЗАЧЕМ тебе стеклотекстолит вообще? Забыл - действовать нужно последовательно, по шагам: пока не завершил предыдущий шаг,
переходить к следующему не следует! Это во-первых, во-вторых, тебе нужна картонка и бумага, на которой нужно распечатать фотошаблоны печатных плат, а затем наклеить эти распечатки на картонки. В-третьих, схема достаточно примитивна, вполне хватит и одностороннего стеклотекстолита. Возможно появятся перемычки, но если правильно расставить компоненты, то их будет минимальное количество.
8. Полученный после отладки на шаге 5 код, точнее HEX-файл с помощью программатора или внутрисхемного отладчика записывается в микроконтроллер, который устанавливается в предназначенную для него панельку на картонке.
Мнемоники ассемблера PIC16F87XA у меня распечатаны вместе с его функциональной схемой и лежат рядом (в столе).
Путь лежат и дальше, пока не дойдёшь до шага 4.
9. Полученный прототип клавиатуры всесторонне испытывается в реальной работе.
Хорошо.
10. В случае обнаружения каких-либо ошибок или неверного функционирования - переход к шагу 1 и далее вновь выполняются все последующие шаги. Отсюда ясно, как важно правильно и подробно составить техническое задание!
Понял.
11. Изготовление/заказ по разработанным на шаге 6 фотошаблонам печатной платы и её сборка.
Этот шаг ещё не скоро.
12. Разработка и изготовление корпуса клавиатуры. Корпус можно склеить либо дихлорэтаном из соответствующих отрезков пластика, либо распечатать на 3D принтере. Но для этого нужно освоить среду проектирования - NanoCAD, AutoCAD или аналогичные и научиться пользоваться программой конвертирования выходных файтов этих CAD'ов в команды 3D принтера. Возможно использование готового из имеющихся на рынке корпусов.
Лучше пусть этим займется кто нибудь другой (дизайнер) а не я. Договоримся при необходимости.
13. Собрать всё до кучи. Это будет опытный образец. Опять всесторонне его испытать. В случае выявления каких-либо недостатков - возврат к соответствующему шагу и повторение всех последующих шагов. Отсюда понятно, как важно тщательно выполнить шаг 9!
[ОК].
14. Вывод клавиатуры на рынок: маркетинговые исследования, если используется уникальный корпус - то разработка пресс-формы для его изготовления, поиск исполнителя, который изготовит пресс-форму, поиск изготовителя корпуса. Печать на 3D принтере выгодна только при малом количестве - порядка десятков изделий.
Это естественно.
Однако, как я уже говорил, на столь примитивную вещь, которую вообще непонятно где и для чего использовать, покупатели вряд ли найдутся, поэтому если всё это делается для собственного развития, то можно ограничится шагом 13 или даже 9.
Я всё же нацелен на мелкосерийное производство, думаю спрос будет.
На что ещё хочу обратить внимание: перескакивать между приведёнными шагами ни в коем случае нельзя! Поскольку человек такая зараза, что постоянно ошибается, то допущенная на каком-либо последующем шаге ошибка, без полного завершения предыдущего, неизбежно приведёт к циклическому исполнению части шагов, вплоть до бесконечности! Т.е. проект не будет завершён никогда. Что мы в общем-то и наблюдаем. Поэтому в очередной раз призываю: действуй последовательно!
Действовать последовательно - очень хороший совет! (Хотя и труднореализуемый).
Извини, по другому - никак! Поскольку это неизбежно приведёт к
нерациональным потерям времени! Странно, это что за криворукий спец производил сборку твоего компьютера? Ведь устроить К.З. практически нереально!
Криворукий спец собиравший мой компьютер - Я сам. Я за свою жизнь много компьютеров пересобирал (Ну там ещё драйвера инсталляция разного рода Software).
Разве что специально, поскольку контакты всех разъёмов, на которых есть напряжение - это мамы, и они заглублены в пластиковый корпус. Т.е. даже если разъём ляжет торцом на металл - никакого К.З. не будет!
У меня не было разъёма и времени, компьютер очень сильно верещал (куллер CPU) мне надоело я сверху положил пятидюймовый вентилятор который шумел в два раза меньше, но вот проводки этого вентилятора тупо засунул в разъём на пять вольт. В общем были КЗ от чего ПиСишка и вырубалась.
А что, просто смазать вентилятор - не судьба? Аккуратно отклеиваешь наклейку со стороны противоположной крыльчатке и капаешь жидкого масла. Затем наклейку приклеиваешь назад - она с одной стороны липкая. Этого обычно достаточно. Как максимум, можно вообще снять крыльчатку - для этого после отклеивания наклейки нужно снять с оси крыльчатки пружинную шайбу, вытащить крыльчатку, промыть её ось и втулку подшипника например изопропиловым спиртом, можно обычным, или аккуратно ацетоном, только чтобы он не растворил пластмассовые детали, затем смазать ось можно машинным маслом для швейных машинок, а лучше силиконовым маслом ПМС-200. Затем в обратном порядке собрать.
И даже если поставил другой вентилятор, что, со старого нельзя было снять разъём и поставить его на новый? Или, на худой конец, если ты проводками просто втыкаешь в разъём, то в 4-х контактных разъёмах, там где +12 В и +5 В, отверстия контактов достаточно большие - воткнул в них проводок, а затем в это же отверстие воткнул и обломил одну-две спички, будет держаться мёртво! В общем, извини за прямоту - всё же криворукий!
И как же ты с таким подходом собрался клавиатуру ваять?
Как говорится: свежо предание, да вериться с трудом! Ведь сколько раз я тебе советовал что, и как следует делать. Но ты всегда выбирал самый худший вариант, ведущий в никуда! Может вообще - ну его нафиг все эти проекты-прожекты? Лучше книжку какую-нибудь интересную почитай, или просто погулять сходи, пока ещё не слишком холодно. Да и по дому наверняка есть чем заняться: поправить что-нибудь, починить.
Сегодня ходил по ночному Свердловску(Екатеринбургу) промок до последней нитки, погода не радует.
Зато полезно!