Pull to refresh

Comments 87

Статья не закончена. Если охота особенного тантрического секса, то советую посмотреть в сторону адового прибора с названием КР1878ВЕ1. Некоторые тут на хабре на нем даже музыку помница играли.
Тогда уж можно и самому процессор начать делать:

Мой не законченный проект по разработке процессора на базе советской логики.
А не проще делать свой процессор на ПЛИС?
Изначально суть проекта была именно в том, что бы показать что из рассыпухи можно что-то сделать стоящее, а на ПЛИС не интересно, что ли.


А чего не на транзисторах, а ещё лучше на лампах? Или даже самим растить кристаллы? Всё сделанно для нашего удобства, надо смотреть в будущее.
Плюсую коммент и сыплю кармы за крутое видео!
UFO just landed and posted this here
такие фотографии отгоняют желание познакомиться с микроконтроллерами поближе.
Вы, наверное, никогда ничего не собирали на макетных платах. При самостоятельной сборке этого нагромождения запоминается каждый проводок, поэтому после сборки в ней относительно несложно разобраться и внести изменения, но другому человеку оно поначалу кажется непонятным и запутанным. Примерно как код своей программы и чужой.
А вы пробовали сделать перерыв и вернуться к макетке примерно через месяц и вновь в ней разбираться?)
код надо красиво и аккуратно писать, в смысле разводку цветными проводками делать ))))

— Это космический корабль, который я построил… а сюда я кладу цветные проводки
© Futurama
Легко, значительно сложнее разобраться в коде на ассемблере без комментариев спустя 2 года
Недавно возвращался к макетке, которую аккуратно сделал 2 года назад, но запутался в более простой макетке, которую собрал 2-3 недели назад торопясь.
P.S. Под макеткой я подразумеваю стеклотекстолитовую макетную плату под пайку.
Можно. Но автор статьи исходил из «минимализма» при выборе контроллера, поэтому я посоветовал присмотреться к микроконтроллеру КР1878ВЕ1, который в некоторой степени превосходит своих собратьев типа PIC16x84 с одной стороны, а с другой предоставляет «минималисткую» среду разработки — только ассемблер. Микроконтроллер не часто используемый, поэтому по своему интересный. Чего минусуют первый пост — неведомо. Видать приняли КР1878ВЕ1 за советскую TTL логику, не удосужившись даже загуглить.
Стенд «Смерть студента» ;)
Внушает! Мы на учебе то-же самое, но на бумаге делали…
А фотка — вообще красота! Борюс с искушением поставить в качестве обоев :)
«проект по разработке процессора на базе советской логики».
Извините, но не слишком ли это громко звучит для семи чипов, пять из которых — 155 серия, трех семисегментных индикаторов, трех кнопок и 8 светодиодов?....)
Все начиналось с малого =)
На данном конкретном этапе(а не на том, который запечатлен на фотографии) процессор может через определенный интервал выводить поочередно до 2к значений, просто тупым перебором.
Странно только, что Вы называете этот генератор массива данных процессором… =) Я под процессором всегда подразумевал некое вычислительное устройство, обрабатывающее входные машинные инструкции, команды.
Чего человека минусуют, статья хороша, просто мало
Попробуйте прочесть еще раз ;)
Вот у нас микроконтроллер, вот программатор, вот макетная плата.
или я тот кто с дошкольных времен рылся в этом деле(отец радиоинженер) и что не удивила статья и задала выше написанный вопрос…
Я сломал мозг о ваш комментарий.
улыбнул ваш ник и о сломанном мозге :D может быть, да прост хотел сказать, что я с дошкольных времен рылся в том о чем написано в статье… мне сравнилось с тем как я например написал бы статью смотрите что я нашел у папы на столе, а теперь напишу в след статье что я с этим сделаю:)
P.S. делал и шил, но уже в школьные.
а на самом деле, давай Автор не унывай, а то прочитаешь нас и стимул погаснет, ждем интересного!
Если бы было указано, что это первая часть, было бы лучше. А вообще, мне кажется, начало довольно интересное (для кодера, который редко держит в руках паяльник).
Продолжайте, все нормально :-)
Нельзя уместить всю информацию в один или несколько топиков. Ну не получится так объяснить человеку, который ни разу или очень редко берётся за паяльник. Я сам подумывал написать статью по этому поводу, но это сложно, т.к. существует много тонкостей и в любом случае, вам не удасться рассмотреть все аспекты или читателю в любом случае придётся искать информацию за пределами хабра.

В сети куча мануалов по этому вопросу и можно всё спросить на форуме. Я тоже раньше хотел подобные статьи писать — хочется рассказать, чтобы всё было понятно, но и охватить побольше. Так можно человека только больше запутать. Поэтому я написал статью про список необходимых книг.

>Попросите продавца подобрать вам светодиоды небольшой яркости, и резисторы к ним для подключения >на 5 вольт.

Ну нельзя так, вы не продукты покупаете, чтобы вам что-то советовали. Резистор ограничивает не напряжение, а ток. Написали бы лучше закон Ома. А вообще стандартный светодиод работает при токе 20 мА, так что в большинстве случаев нужен резистор 220 Ом.
Вы правы, в сети куча информации. И чтобы читатель не искал ее, по ходу повествования я привожу ссылки на материал, который нужно усвоить, чтобы понять, о чем пойдет речь дальше.

По поводу светодиодов — продавец в магазине электроники более компетентен в таких вопросах, чем целевой читатель. К нему можно подойти и сказать, мол я хочу подключить к микроконтроллеру вот такой светодиод, какой резистор нужен? И он все поймет, и объяснит, и про закон Ома расскажет, ему же скучно там целый день торчать :)

В общем, я планирую сосредоточиться на практической части, рассказать что и как можно сделать. А для того, чтобы читатель понял, почему делается именно так, существуют ссылки на те самые объемы информации, которые нельзя уместить в один или несколько топиков. Читателю дается выбор: либо просто следовать инструкциям и получить результат, либо сделать то же самое плюс вникнуть в теоретическую часть и осознать как сам результат, так и процесс его достижения.
По поводу светодиодов — продавец в магазине электроники более компетентен в таких вопросах, чем целевой читатель.

Блажен кто верует. На самом деле там тоже «понабрали по обьявлениям», что даже часто резистор от диода не отличают
А не слишком дорого получилось? 2.5-2.7к программатор + 500 полигон + камень и плата + резисторы и прочая мелочь, ардуино или ему подобные разве не дешевле получились бы?
а никто не заставляет всё это покупать. PicKit2 стоит вообще-то 1900р, а если жалко денег, можно спаять самому. В интернете есть куча статей на эту тему.

ну а самые распространённые Microchip'овские МК 16й серии (PIC16F873A, например) стоят 100-150р.
Запостите пожалуйста продолжение :))) На самом интересном закончилось :o
/Me смотрит на PIC1X (X < 8), блюёт хардварными стеками и долбанутой адресацией. Может, для новичков попроще что-нть нашлось бы, ну, те же MCS51/i8051 от Philips?
А как вам все прерывания, приходящие по одному вектору?) Имхо пики вообще непонятно для кого делались
UFO just landed and posted this here
Прерывания еще ладно. До них еще надо дорасти чтобы их надо было много. Мне кажется, новичкам гораздо сильнее может взорвать моск необходимость переключения банков памяти при использовании :)
PIC-ов много разных, и среди них можно подобрать на любой вкус и под разные задачи. Нужны прерывания с разными векторами? К ваши услугам PIC24 и старше. Нужно всего пару векторов? PIC18… И т.д. и т.п.
То есть для нормальной работы с прерываниями мне нужно посадить на плату как минимум 28-ногий контроллер? Смешно же
По всей видимости, кто с чего начал — то больше всего и предпочитает. Мой выбор — 24FJ64GA004 — удобно, дешево и хватает почти для всего нужного. :)
А как с доставаемостью?
Через дорогу — филиал гаммы(официальный представитель микрочипа). Если у них нет — есть в соседнем городе, два дня на доставку…
Собственно, конкретно в моем городе с атмелами заметно похуже, чем с пиками.
24F04KA200 — 14 ног. Ну и для приложений, где нужна такая мелочь — сильно подозреваю что наличие кучи векторов врядли потребуется.
купите какой-нибудь dsp starter kit на TMS или AVR, там железо посерьезнее, можно несколько потоков кода сделать, математический модуль мощный для обработки сигналов, опять же разное навесное оборудование и т.д.
еще в гугле вот это вылазит, www.starterkit.ru, здесь на ARM есть Linux, экраны и все прочее
так что ищите
то есть analog devices имел в виду, а не AVR
но вообще цены суровые на некоторые вещи, а раньше помню по $100 шли почти все киты
но есть и недорогие, типа freescale, опять же на ebay можно что-то заказать
www.megachip.ru/catalog.php?open_code=11030405#code_11030405
порылся в инете, нашел магазин классных игрушек )))))))
estore.ti.com/?DCMP=TIHeaderTracking&HQS=Other+OT+hdr_b_estore

eZ430-Chronos-433 — eZ430-Chronos Wireless Watch Development Tool $49
estore.ti.com/eZ430-Chronos-433-eZ430-Chronos-Wireless-Watch-Development-Tool-P1734.aspx

часы в спортивном корпусе, 96 сегментный дисплей, датчик давления, температуры, напряжения, 3-х осевой датчик ускорения, 1GHz беспроводной канал, прилагается внешний USB-датчик
короче, полный кит SoC CC430F6137

жалко новый год кончился, закажу к 23 февраля )))
тогда уж вот это
$169 Samsung S3C2440 ARM9 Development Board + 5.6" TFT LCD Touch Screen

cgi.ebay.com/Samsung-S3C2440-ARM9-Board-5-6-TFT-LCD-Touch-Screen_W0QQitemZ110412745052QQcategoryZ4661QQcmdZViewItemQQ_trksidZp4340.m8QQ_trkparmsZalgo%3DMW%26its%3DC%26itu%3DUCC%26otn%3D5%26ps%3D63%26clkid%3D6598672381498545159

ну это просто праздник какой-то ))
ARM для начинающего слишком
а там win ce стоит и linux, программить можно на c++ как на десктопе, может и .net cf удастся подрубить
но вообще да, это уже не то…
Или MSP430 starter kit: за $4.30 получаем девелоперскую плату, два MSP430, разъёмы, и IDE для разработки.
интересно, CAN в описаниях на некоторых платах — это автомобильная CAN шина, или нечто другое?
MCS51? Хотя он до сих пор применяется, имхо, уже отжил своё. Одно дело — куча ранее разработанных устройств, которые нужно поддерживать, а другое — новые разработки. Пора 51-му на заслуженный отдых. Те же AVR дешевле, производительнее и проще в освоении.
Ну…
во-первых, RISC против CISC на 8051,
во-вторых, что там плохо с адресацией?,
в-третьих, если с нуля, то 8051 вряд ли особо проще будет, много разбираться придется в обоих случаях (разве что по началу для RISC программы непривычно писать, но это по началу только).
Необходимость ручной реализации стека — не очень приятно, конечно… Но зато… just for fun, как говорится (:
51 не трогать, там может среда разработки не айс, а так вполне себе контроллеры, конкуренты авр
Купили б Ардуино и не мучались бы. И кроме того — было б гораздо дешевле, т.к. программатор покупать не нужно было, прошивку с ПК залить можно…
На ардуино не прошьёшь, PIC16F630, к сожалению.
Зачем жрать кактус? Дорого и не эффективно
пиккит2 это не просто программатор. Он же еще и отладчик (прям по коду, как в JTAG правда этот мелкий пик это возможно не поддерживает) и какой никакой, но четырех канальный логический анализатор. Пусть и слабенький, но отладить и2с шинку или 1-wire на нем можно гораздо быстрей чем на аналоговом осциллографе.

Плюс научившись сразу писать код под МК и делать схемы с нуля на соплях можно приступать к построению уже более серьезного устройства на плате, с отдельным контроллером. И вот тут цена в 100р за А4 текстолита и 100р за процессор по цене рвут дурку как тузик тряпку. Т.к. в каждую херню ардуино совать жирно будет.
Если заниматься этим серъездно, профессионально — то да, программатор и прочие средства разработки необходимы как воздух.
Но если это хобби, не профессиональная деятельность — я думаю, тратиться на это не целесообразно. Для этого случая и придумали Ардуино и тому подобные решения…

>>Т.к. в каждую херню ардуино совать жирно будет.
Конечно, жирно. Но так никто и не делает. Вы, что — строите готовые решения на отладочных платах? Думаю, нет. Ардуино такая же отладочная плата, на ней легко и быстро строить единичные продукты, не требующие серии. И также же — это дешевый и быстрый способ для разработки прототипа — если конечное итоговое решение будет основываться на схожей архитектуре с МК от Atmel.
А кто сказал что электроника это дешевое хобби? Та же ардуино+ всякие шилды тоже отнюдь не дешевое решение, я бы сказал даже наоборот.

Она же, равно как и другие отладочные платы это тоже средство разработки. Как и программатор и анализатор.

Без всего это пошел вон в магазин. Купил голый контроллер за 60р, проводками на LPT порт и поехали.
>>Та же ардуино+ всякие шилды тоже отнюдь не дешевое решение
По сравнению с отладочными платами, Ардуино не такой дорогой.

>>Купил голый контроллер за 60р
МК, что стоят на Ардуино (Atmega328) стоят отнють не 60 рублей, в розницу как минимум в 3 раза дороже.

>>проводками на LPT порт и поехали.
Все же сказать: «поехали» — можно про Ардуино — воткнул в USB и поехали.
А вот про голый МК с проводочками через LPT порт — придется еще попаять, пошаманить, тут сразу не поедешь…

Вообщем, кому что нравится.
1500р за голую168 мегу + FTDI + линейный стабилизатор это очень дорого. Себестоимость там рублей 300 максимум. Красная же цена этой платки рублей 500.

А зачем сразу брать максимальный проц? Можно и на меньшем сделать, ведь далеко не всегда возможности использутся. Ну и смотря где брать. 328 может и дорогая, а вот 88 или 168 стоит уже недорого.
>>1500р за голую168 мегу
платы с атмегой328 стоят:
Arduino Uno — 1390 руб amperka.ru/collection/Platy/product/Arduino-Uno
Cosmo Black Star — 1000 руб jt5.ru/arduino/cosmo-black-star
Freeduino 2009 — 950 руб freeduino.ru/arduino/freeduino2009.html

>>Себестоимость там рублей 300 максимум
Про себестоимость на самом деле так категорично говорить нельзя, потому как она зависит от объема производства. При малых тиражах (менее 1000 штук) в 300 рублей уложиться невозможно. Например, только два компонента «съедают» большую часть вашего бюджета.
FT232RL — 3$ (+18% НДС)
ATMEGA328P-PU — 3.8$ (+18% НДС) — причем, это дефицит.

А ведь есть еще куча мелочевки стоимостью от нескольких копеек до 10-20 рублей. А еще изготовление ПП, маска, маркировка, в конце концов — монтаж…

А то, что оригинальные Ардуино стоят у нас дорого, объясняется одним словом — растаможка (сборы, пошлина, ндс) + транспортировка.
Странный у Вас подход. Хотите заниматься электроникой и ничего не паять/не собирать своими руками. Толку из этого мало будет.
если хотите минимализма — выбирайте ПЛИС. Тогда не только байты — биты считать научитесь :-)
На самом деле программировать ПЛИС — это интересно.
И не сильно сложно.
Вот пример: marsohod.org
существует куча проектов, которые делать на ПЛИСе глупо при наличии готовых МК. К тому же, ПЛИСы, как правило, обходятся куда дороже. А учитывая, что тут народу 2к на программатор для PICов жалко, то что же тогда говорить о том же Xilinx Platform Cable USB II за 250 баксов? А в России он вообще 15к руб. стоит.
P.S.: А вообще да, сейчас как раз занимаюсь изучением оных. Штука интересная — затягивает :)
А я решил в замен сгоревшей платы в термопоте свое сделать из подручных материалов пока вот в таком виде www.softcoder.ru/public/17012011810.jpg
Используется AVR Mega8 + самодельный программатор + и немного усердия
Если кому то интересно могу в итоге результаты показать(небольшой статьей), прошивку со схемой конечно в общий доступ :)
>> PIC12F509

М-м-м, пробежался по архитектуре, крутота! 41 байт памяти, максимум 1024 инструкций. Стек глубиной 2! Банки памяти.
Вот только одно смущает: что, нету conditional branch? Т.е. циклы не получится запрограммировать?
Там есть инструкции, которые позволяют проверить бит и, в зависимости от его значения, пропустить следующую инструкцию — btfss и btfsc. Ставим такую инструкцию перед безусловным переходом (goto) и получаем переход по условию.

Чего там действительно нет, так это сравнения больше-меньше)
Спасибо за ответ:) Не знал про такой тип бранчинга.

>>Чего там действительно нет, так это сравнения больше-меньше)

Про умножение я вообще молчу:) Хотя там его и при всем желании нельзя было бы запихать, ведь результат был бы 16-битным.
Так результат умножения можно кидать в два регистра.
Для таких случаев на сайте Microchip'а лежат готовые подпрограммы для реализации функций умножения 8x8, деления 32/16 и многое другое.

Как правило, в такого рода контроллерах (PIC12*) аппаратная реализация подобных вещей не требуется.
>>Чего там действительно нет, так это сравнения больше-меньше)

а вычитание для кого сделано?

SUBWF F
BTFSS STATUS, C

Sign up to leave a comment.

Articles