Поиск
Показаны результаты для тегов 'kicad'.
-
KiCAD 8.0 вышел
faa опубликовал тема в Бесплатные САПР: KiCAD, EasyEDA, EAGLE и др.
KiCAD 8.0 официально вышел. Краткое описание новых возможностей. -
Сделал схему и нажал "Проверка электрических правил". Появилась ошибка: "Вход питания не подключен ни к одному выходу питания". Этим входом питания является вход стабилизатора напряжения, питание на который подаётся с PLD-разъёма, вывод которого не отмечен как выход питания. Как исправить эту ошибку без костылей типа редактирования символа разъёма и изменения его выхода на выход питания?
-
Койяанискаци - ТТЛ-процессор с душой акына
Alikberov опубликовал тема в Все остальные микроконтроллеры
В противоположность известных всем процессоров «Intel», марку которых довольно легко запоминать и выговаривать, «Койяанискаци» задумывался как процессор, имя которого сложнее произнести, чем разобраться в его архитектуре и научиться его программировать на самом элементарном уровне машинного кода редакторами дампа, чтобы проверить, действительно ли стоит прогибаться под радиолюбительские ТУ и невозможно сформировать красивую систему команд, понятную на уровне интуиции? Не имеется ввиду код стиля «O'Kей, процик, вычисли мне среднее факториальное», а планировался машинный код с минимальным уровнем вхождения в основы искусства его программирования, не требующего жёсткой зубрёжки и заучивания всех команд. Введение Начальный дизайн процессора задумывался как шуточный автомат со сквозным байт-кодом и возможностью кодировать дамп сценария даже без необходимости обращения к таблице команд до полного их заучивания. Ставилась простая задача разработки простого процессорного устройства, в котором любые из 30 РОН можно заменить на всякую периферию из датчиков, двигателей и соленоидов. В таком дизайне имеется уникальная возможность организации почти непосредственного взаимодействия всех требуемых устройств без надобности в высоких частоте и производительности. Архитектура процессора Весь процессор основан на регистровом файле из четырёх функциональных групп по десять ячеек в каждой. Хотя операции АЛУ возможны над любыми ячейками, правила корректного оперирования с ними соблюдать необходимо более-менее строго. Здесь стоит просто запомнить логику и назначение этих функциональных групп: A₀…₉ - Аккумуляторы (A₀ хранит флажки статуса АЛУ) B₀…₉ - Base/База доступа к памяти (B₀ хранит Базу возврата из подпрограммы) C₀…₉ - Counter/Счётчик/Смещение байта в памяти (C₀ хранит Смещение возврата из подпрограммы) D₀…₉ - Devices/Доступные устройства с мгновенным откликом (можно организовать кеш) Так как процессор достаточно прост и не имеет встроенных аппаратных механизмов организации стековых операций, регистры B₀:C₀ сохраняют адрес, на котором была размещена операция обращения к подпрограмме. Программист при необходимости сам обязан позаботиться о всех операциях работы со стеком и описать их алгоритмом. Все эти сложности легко обходятся использованием стандартной библиотеки. Система команд Практически все команды кодируются WYSIWYG-стилем акына:«Что вижу, то значит». Шестнадцатеричная кодировка отчасти является аббревиатурой самой команды и всё задумывалось так, чтобы большинство команд просто совершали понятные действия. 00: HLT (останов программы) - крайне логичный и гармоничный код! 01: Приращение единицы к активному регистру-приёмнику 02…09: Префикс повтора операции от 2 до 9 раз или пропуск группы операций по условию 10…99: Используется BCD-код приращения к активному регистру-приёмнику - код 56 означает именно 56₁₀, а не 0x56₁₆ A0…A9, B0…B9, C0…C9: Безвременные префиксы выбора активного регистра указанной группы - A₀…A₉, B₀…B₉, C₀…C₉ соответственно D0…D9: Выбор активного устройства группы Devices - D₀…D₉ AA…AD, BA…BD, CA…CD, DA…DD: Безвременные префиксы выбора сочетания операндов для АЛУ-операций - A,A…D,D соответственно E0…E7: Обращение к расширению (Extension) через подпрограмму - CALL 0xE000…0xE700 F1…F9: Обращение к функции (Function) с указанным индексом - CALL 0xF100…0xF900 E8…EF: Условный префикс к исполнению кода следующей операции - Enable if SF/PF/CF/ZF F0: Завершение текущей функции (Function Over - как Game Over) AE/BE/CE/DE: Извлечение (Extract) данных из памяти в указанный регистр AF/BF/CF/DF: Запись/фиксация (Fix) данных указанного регистра в память FA…FF: Вызов прочих функций - CALL 0xFA00…0xFF00 0A/1A/2A…9A: АЛУ-операция "Сумма" (Add) над группой операндов - индекс правого операнда указывается явно 0…9 0B/1B/2B…9B: АЛУ-операция "Вычитание" (suB) над группой операндов - индекс правого операнда указывается явно 0…9 0C/1C/2C…9C: АЛУ-операция "Конъюнкция" (Conjunct/and) над группой операндов - индекс правого операнда указывается явно 0…9 0D/1D/2D…9D: АЛУ-операция "Дизъюнкция" (Disjunct/or) над группой операндов - индекс правого операнда указывается явно 0…9 0E/1E/2E…9E: АЛУ-операция "Исключающее ИЛИ" (Exclusive or/Eor/xor) над группой операндов - индекс правого операнда указывается явно 0…9 Основы программирования Однако, тут не стоит думать, что «процессор акына» совсем ничего не требует от продвинутого пользователя-программиста: Минимальный порог вхождения преодолеть всё-таки придётся… А значит, придётся чуточку поднапрячься и преодолеть порог! (Здесь подразумевается, что читатель уже имеет все базовые понятия и принципы, позволяющие ориентироваться в синтаксической конструкции и строить выражения…) Сложение величин из регистров A₁ и B₂ традиционно можно представить выражением «A1 += B2» или мнемонической записью «ADD A1,B2», которую и следует оформить в машинный код. Так как архитектура процессора предельно проста и организовалась на польской записи, буквально необходимо сначала предопределить используемые в операции операнды, чтобы потом произвести саму конкретную операцию вычисления. Так как используется сочетание регистров «A1» и «B2» в порядке «An,Bn», то под их определение следует указать машинный код AB₁₆. Выбор индексов на конкретных операндах выполняется кодами A1₁₆ и B2₁₆, что указывает на буквальность кодов. Так как индекс правого операнда равен двум, то в коде АЛУ-операции «Сумма» его следует указать явно в левой тетраде как 2A₁₆. Тем самым, становится очевидным размещения кода всего выражения как «A1 AB B2 2A». Но так как индекс B₂ указан явно в АЛУ-операции, байт команды «B2» можно исключить из цепочки, так как сам регистр B₂ не является приёмником результата и код сократится до одной из двух комбинаций записи «A1 AB 2A» или «AB A1 2A», так как от расположения префиксов перед операциями результат не изменяется и всё зависит от стиля программиста. 0000 A1 |----vv ;A1 выбирает регистр A₁ 0001 AB |------v ;AB задаёт порядок операндов A,B 0002 2A|ADD A1,B2;2A - ADD, где двойка выбирает индекс B₂ ^----------^ Выражение «A1 = A1 + B2 - B3 & B4 | B5 ^ B6» можно описать последовательностью «A1 AB 2A 3B 4C 5D 6E», так как в каждом следующем коде операции явно указан и индекс правого операнда, что позволяет писать код компактно и производительно. Максимально доступно каждому любителю Так как Logisim куда доступнее и проще того же Proteus и компактнее KiCAD, вся схема процессора разрабатывалась в рамках проекта именно Logisim, чтобы проект был по-детски прост и лёгок для использовании заинтересованными любителями. По предварительным подсчётам, если схему проекта попытаться собирать микросхемами серии 74xx или отечественной номенклатуры, понадобится порядка 250 корпусов... При грамотном подходе проектирования процессоров с применением мультиплексоров и специализированных микросхем РОН, число всех микросхем может снизиться всего до сотни корпусов с повышением производительности без переходов в Z-состояние. Скачать архив исходной схемы с прошивками можно по ссылке на странице проекта… Если смущает использование ПЗУ для дешифрации команд, имеется набросок схемы с использованием уровня комбинаторики, по которой можно осознать, что и красивую систему команд можно декодировать простейшим способом логических вентилей, без ущерба концептуальной задумки… Эмуляция? Никакого программного эмулятора не задумывалось специально, чтобы архитектурно процессор изначально готовился к реализации на физических макетных платах и не содержал в себе решений, которые аппаратно крайне сложно будет реализовывать в силу излишней вольности в эмуляторе. Вся схема разрабатывалась несколько лет в часы досуга эпизодически и несколько раз перерисовывалась вся с чистого листа. Ссылки Скачать исходные файлы симуляции можно здесь. Основная статья размещена здесь. -
Привет, мы ищем сотрудника, который будет помогать нам разрабатывать вспомогательные платы. Под вспомогательными понимается, что у нас есть основная типовая плата, например BananaPi. Нам в целом дешевле использовать такие готовые платы, однако бывает, что для них нужно добавить какой-то интерфейс или исправить недоработку китайского дизайна. Другой пример - SoM: есть модуль без интерфейсов, разработанный, например, NVIDIA. Для создания несущей платы для SoM предлагается закачивать миллионы в какие-то бестолковые конторы. Нам нужно чтобы вы играючи за несколько часов развели пины SoM'а на нужную переферию - коннекторы USB3.0 и т.д. Требуется уверенное владение KiCad и личный опыт пайки плат, своих и чужих. Круто если вы сами успешно чинили телефоны и ноутбуки, перепаивая элементы. Круто, если своими руками PCB вытравили или вырезали фрезой. А если никогда не пачкали сами руки о реальный мейкинг плат, то не круто, тогда для нас вы - бесполезный теоретик. Работа - контрактная, то есть мы бы хотели оплачивать реально затраченные на наши задачи трудочасы. В целом работы много, можно работать хоть 60 часов в неделю, если есть время и желание. А если у вас есть другие дела - тоже не проблема, можно совмещать и помогать нам от случая к случаю, или в выходные, или утром/ночью - любой распорядок на ваше усмотрение! Полная удалёнка, не можем предоставить офис или лабу, увы. Нужно чтобы у вас была возможность изредка где-то что-то попаять и потестировать на своей паяльной станции. Если что-то нужно будет на наших платах подробно смотреть, то постараемся к вам почтой их доставить, в крайнем случае сделаем удалённый доступ по SSH. Если чувствуете, что это - ваше (ура!), вот маленькая тестовая задачка для личного обсуждения (оставьте контакты для связи мне в личке). Имеется плата а-ля BananaPi и ноутбук. У платы - два порта USB - питание и питание+OTG. Оба устройства безнадёжно нарушают спеки USB2.0, и отдают по OTG-порту сильно больше 500мА, достаточно много чтобы спалить плату. Нужно пресечь пожары накорню вставкой небольшой платы огранчивающей ток. Важно, чтобы при этом работа OTG не была нарушена. Ниже - схема возможного ограничителя, скорее всего, с ошибками. Обсудите с нами этот дизайн, и если он не годится, предложите свой. Важно: мы оплатим ваш труд по решению этой задачи в любом случае, вне зависимости от итогов знакомства.
-
Добрый вечер! В проекте необходимо использовать резисторы МЛТ, ОМЛТ, С2-33, С2-23, но я не понимаю какие посадочные места под них нужно использовать, в стандартной библиотеке таковых нет, можно ли их чем то заменить или есть готовые гостовские библиотеки или всё же остаётся смириться и сделать свои посадочные места?
-
Назначение посадочного места в KiCAD
Ol'ka88 опубликовал тема в Схемотехника
Помогите!! Срочно нужно разобраться! В KiCAD 4.0.7 при назначении посадочных мест не отображаются те самые посадочные места. Библиотека с ними есть. В чем дело, я уже всю голову сломала. Может есть какой-то секрет? -
Проектирование электронных устройств
l_OO_l опубликовал тема в Ищу работу
Спроектирую, отлажу небольшие электронные устройства на микроконтроллерах pic, AVR, stm32. Проекты выполняю использую инструменты open source. А также полностью передаю исходники и права на проект заказчику. Также занимаюсь монтажом печатных плат.-
- open source
- kicad
- (и ещё 6 )
-
Проблема с рамкой по ГОСТ
callmeMN опубликовал тема в Бесплатные САПР: KiCAD, EasyEDA, EAGLE и др.
Добрый день! Проблемы с рамкой в KiCad 5.1 на Win7, отображается так как на картинке. Причем и формат А3 и А4, альбомное или вертикальное расположение выглядят идентично. Пробовала удалить все и переустановить, пробовала скачать новые библиотеки - ничего не помогает. Может, кто-то сталкивался с такой проблемой и расскажет, как ее решить? -
Подработка для разработчика в Казани
ildarkazan опубликовал тема в Предлагаю работу
Периодически (два-три раза в год) нужен разработчик для реализации проектов, обязательно в Казани. Желательные навыки: знание интерфейсов CAN, I2C, SPI; опыт работы с STM32; опыт разработки устройств для передачи данных по радиоканалу. Разработка в основном устройств автомобильной электроники: охранных систем, автозапуска, и т.д.При необходимости обеспечим рабочим местом, но можете работать удалённоВсе вопросы на почту [email protected] (тема письма - "Разработчик") или телефон +7-987-297-10-87 -
Многоканальные схемы
mamadu опубликовал тема в Бесплатные САПР: KiCAD, EasyEDA, EAGLE и др.
Приветствую сообщество. Ребята, я не понимать Ну просто от слова "совсем". Я пытаюсь создать многоканальную схему. Я создаю первый лист - main.sch. На нём - микропроцессор с обвязкой, драйвер интерфейса и два разъёма - один для ввода питания и интерфейса, второй - для подключения полевых RTD датчиков. Входные каскады для подключение датчиков - одинаковые. Я создаю на первом же листе "Иерархический лист": имя файла - rtd.sch, Имя листа - rtd1. Рисую схему канала, обозначения элементов не проставляю. Нажимаю "Сохранить", "Покинуть лист", возвращаюсь на main.sch. В папке проекта появляется файл rtd.sch. В менеджере проектов - не появляется ничего. Копированием(Ctrl+C,V) или заново-рисованием размещаю на main.sch ещё 15 иерархических листов с именами rtd2-rtd16. Файл схемы указываю тот же - rtd.sch. Теперь кликая на любой канал я попадаю попадаю на схему канала. На main.sch запускаю "Обозначить компоненты схемы". В отчёте - всё обозначается. Правда элементы со схемы rtd.sch - обозначаются многократно, но совершенно одинаково. Например строка "Обозначено BC817 как Q16" - 16 раз. Зато если на main.sch кликать по прямоугольникам вложенных листов я как бы попадаю на разные схемы, в которых ВС817 обозначен то Q1, то Q2, ... , то Q16 Это пол беды. При выводе на печать или в PDF оно делает мне 16 листов одной и той же схемы, отличающихся обозначениями элементов (Q1-Q16). Теперь вместо двух листов я имею альбом из 17-ти, причём 16 из них клоны. Я не понимаю, оно что, не может обозначить Q1.1, Q1.2,... Q1.16 для нетлиста и напечатать единожды Q1 на схеме? Зачем мне 16 схем каналов, я же явно указываю, что схема для всех вложенных листов - одна. А если у меня 100 каналов будет? Как с этим бороться? Или я изначально что-то не так делаю? -
Приветствую сообщество. Ребята, у меня то ли лыжи не едут, то ли я не там ищу. Требуется проверить не попадают ли элементы в силкскрине на оголённую медь, или лучше - не попадают ли мимо зелёнки (паяльной маски). Второй день ищу. Это вроде бы элементарно с точки зрения реализации и для подготовки к производству, что называется, - must have. Где оно может быть? Его же не может не быть?
-
Здравствуйте! Нам задали разработать схему автомата Мили. Можно для этого использовать kicad или лучше выбрать другую программу?