32bit_me: (Default)
Сообщество [livejournal.com profile] embedded_books посвящается обзорам книг и статей по встраиваемым системам.
Пока там только обзоры от [livejournal.com profile] steelcraft, но скоро я буду тоже добавлять туда обзоры книг и статей, которые я прочитал.
Приглашаю всех заинтересованных присоединяться.
32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Пусть в проекте FPGA необходимо ПЗУ, в которое записана определённая информация, имеющаяся у нас в виде бинарного файла. ПЗУ, как правило, реализуются на блоках BRAM, в которые при инициализации FPGA записывается требуемое содержимое.
Файлы инициализации памяти BRAM для FPGA, могут иметь формат MIF (Memory Initialization File) или формат HEX.

DSC_0522_EDIT

Нужный модуль памяти можно сгенерировать в Quartus II с помощью MegaWizard, в ISE — с помощью Xilinx Core Generator. Кроме этого, в QuartusII возможно использование специальной директивы:

1
reg [7:0] mem[0:2047] /* synthesis ram_init_file = "test.mif" */;

Эта директива позволяет создать RAM, инициированную значениями из файла .MIF. Использование RAM с предустановленными значениями, это очень плохая идея, но в качестве ROM такую память использовать вполне можно. Проблема в том, что эту директиву понимает только Quartus II, никакой кроссплатформенности.

Quartus II предоставляет редактор файлов памяти, и возможность загрузки файлов .mif и .hex, Xilinx Core Generator требует загрузки файла .coe, имеющего другой формат, нежели MIF. Однако хочется иметь кроссплатформенное решение, которое не зависело бы от платформы. Таким вариантом является генерация ROM в виде case-конструкции:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
always@(posedge clk)
begin
  case(in)
  ...
  11'h00d: out = 8'h99;
  11'h00e: out = 8'h81;
  11'h00f: out = 8'h7e;
  11'h010: out = 8'h7e;
  11'h011: out = 8'hff;
  11'h012: out = 8'hdb;
  11'h013: out = 8'hff;
  11'h014: out = 8'hc3;
  11'h015: out = 8'he7;
  11'h016: out = 8'hff;
  ...
  endcase
end

Полезная ссылка: различные конструкции для генерации разных типов RAM, ROM и других модулей можно найти в руководстве Altera «Recommended HDL Coding Styles»: https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/qts/qts_qii51007.pdf
Я написал две простые утилиты, которая преобразует бинарный файл в MIF и в тело конструкции case.

Read the rest of this entry »

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Инженерный портал http://www.rs-online.com/designspark/electronics/nodes/view/type:tool/slug:product-data-library, цель которого – предоставить инженеру техническую информацию от разных производителей – в одном месте.

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

С сайта RS Components можно скачать две системы автоматизированного проектирования: одна предназначена для разработки принципиальных схем и печатных плат (DesignSpark PCB), вторая для 3D-моделирования (DesignSpark Mechanical). Обе системы полностью бесплатны, то есть это не урезанные демо-версии. Ссылка: http://www.rs-online.com/designspark/electronics/eng/page/mechanical

Я скачал обе и немного попробовал что-нибудь сделать. Сразу могу сказать, что я сравниваю возможности и удобство использования с теми программами, которыми пользуюсь сам: с Altium Designer и Solid Works.

pic1

Редактор схем.

pic2

 

Редактор 3D.

В общем, первое впечатление хорошее, есть большие библиотеки компонентов и для редактора схем/плат, и для 3D.

Библиотека условных графических обозначений большая, но не соответствует ГОСТ, поэтому на производстве её использовать не получится, только «для себя». Редактор PCB тоже есть, там есть разные возможности, поддержка DRC и другое.

Разобраться сходу не удалось, но времени на освоение у меня сейчас просто нет. Надо читать документацию.

Библиотека 3D большая и удобная, с поиском по каталогу, можно скачать какую-либо деталь и экспортировать её в формат STL. Экспортировать в Solid Works получилось, только без цвета, увы. Больше распространённых форматов 3D не предусмотрено, формата STEP нет, экспорт только через Solid Works или другой пакет 3D-моделирования.

Само по себе моделирование в 3D происходит совсем не так, как в Solid Works или Компас 3D. Если честно, совсем не так. Вероятно, нужно читать документацию и руководства, чтобы освоить эту программу, но я попробую это сделать в будущем. Если у вас есть задачи по разработке плат и 3D-моделей, можете попробовать скачать и разобраться.

Read the rest of this entry »

LCR

Mar. 7th, 2015 03:13 pm
32bit_me: (Default)
Нашел интересный проект: измеритель LCR с погрешностью 500ppm (то есть 0,05%), что очень неплохо для любительского прибора.

lcr

Я не собираюсь, конечно, делать себе такой же, т.к. он мне не очень нужен, но меня заинтересовала схемотехника.
Я заботливо скачал для вас номера журнала Elektor, где эта схема была опубликована: скачать.
Автору этого проекта 72 года (то есть было 70 на момент публикации статьи). Респект, что я могу сказать. Желаю всем так же зажигать в этом возрасте.
32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Невозбранно попячено здесь: http://podrivnik.livejournal.com/254730.html
GNU Radio под лицензией GPLv3.

Набор программ и библиотек для реализации различных радиосистем.

Содержит различные фильтры, модуляторы, демодуляторы, смесители, кодеки и другие блоки.

Домашняя страница http://gnuradio.org/redmine/

Пример использования.

Read the rest of this entry »

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Для разработчиков печатных плат — цикл статей «PCB Design Perfection Starts in the CAD Library», автор Tom Hausherr из Mentor Graphics Corp.
Ссылка на его блог на Mentor.com: http://blogs.mentor.com/tom-hausherr/blog/author/thausher/
В его блоге на Менторе почему-то нет первой части цикла. Полностью цикл статей, начиная с первой части, есть здесь: http://www.innofour.com/News/Literature/PCB-Design-Perfection-Starts-in-the-CAD-Library/PCB-Design-Perfection-Starts-in-the-CAD-Library—Part-1

Вот еще справочник по площадкам для разных корпусов: http://www.siongboon.com/projects/2005-09-07_home_pcb_fabrication/footprint/

Жаль, времени, чтобы это прочесть, совсем мало.

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Прочитал на хабре статью MTBF — «откуда берется «миллион часов MTBF»» http://habrahabr.ru/blogs/hardware/122529/. Очень хорошая статья.

К ней хочется добавить вот что. Параметр MTBF, часто указываемый производителями самых разных устройств (не только винчестеров, про которые шла речь в статье), расшифровывается как «Mean Time Between Failure», и, по определению, означает время, за которое выходят из строя устройств. MTBF обычно указывается в часах.

К примеру, если это время составляет около 1 млн. часов, то это не означает, что устройство на самом деле способно проработать 1 млн. часов (>114 лет). Это означает, что в течении гарантийного срока вероятность выхода устройства из строя может быть оценена как .

Например, вероятность выхода устройства с MTBF = 1млн. часов в течение одного года равна

, где 8760 – количество часов в году.

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Книга посвящена системе контроля версий Git.

В книге рассматриваются как основные команды Git, предназначенные для повседневной работы, так и сложные темы: настройка сервера Git, используемые Git протоколы и другие тонкости работы с этой сложной и мощной системой.

Книга находится в открытом доступе здесь: progit.org/book

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

http://www.juev.ru/2011/01/03/dropbox-i-git-repozitorij/

Очень хорошая и правильная статья про то, как Dropbox легко решает проблему размещения своего  Git-репозитория. Автор статьи занимается разработкой сайтов, но тот же подход годится для любых проектов.

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Computer Science Club, существующий в СПб уже 3 года, начинает работу в Екатеринбурге. Будут проводиться лекции на различные темы, касающиеся Computer Science (на матмехе УрГУ). Вход на лекции свободный.
На сайте есть материалы лекций http://logic.pdmi.ras.ru/csclub/

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Продолжение. Начало здесь: http://32bit.me/?p=355 – введение; http://32bit.me/?p=373 – часть 1.0; http://32bit.me/?p=377 – часть 1.1; http://32bit.me/?p=395 – часть 1.2; http://32bit.me/?p=406 – часть 1.3.

Перед тем, как перейти к программной реализации поддержки протокола Modbus, необходимо прояснить ещё один вопрос.

Регистры протокола (3х и 4х) имеют разрядность 16 бит, а значения переменных, которые требуется передавать, часто имеют разрядность 32 бита. Каким образом 32-битные переменные передаются в 16-битных регистрах?

Read the rest of this entry »

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Продолжение. Начало здесь: http://32bit.me/?p=355 – введение; http://32bit.me/?p=373 – часть 1.0; http://32bit.me/?p=377 – часть 1.1; http://32bit.me/?p=395 – часть 1.2.

Кратко рассмотрим обмен данными между ведущим и ведомым устройством для других типов регистров.

Read the rest of this entry »

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Продолжение. Начало здесь: http://32bit.me/?p=355 – введение; http://32bit.me/?p=373 – часть 1.0; http://32bit.me/?p=377 – часть 1.1.

Перед тем, как приступить к дальнейшим экспериментам с протоколом Modbus, разберёмся с ещё одной темой, относящейся к этому протоколу: с регистрами Modbus.

Read the rest of this entry »

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

Продолжение. Начало здесь: http://32bit.me/?p=355

Оставим пока в стороне скучную теорию и примемся за эксперименты.

Возьмём панель оператора Weintek MT6070TV и зальём в неё проект, состоящий из нескольких числовых полей (Numeric Display) и кнопки, устанавливающей значение переменной (Set Word). Вид экрана изображён на рис 1.

Рис. 1. Вид экрана панели

Read the rest of this entry »

32bit_me: (Default)

Originally published at 32 bit.me. You can comment here or there.

W5100 – контроллер Ethernet, объединяющий в одном чипе PHY-уровень, MAC-уровень, аппаратную реализацию TCP-IP стека и интерфейс с микроконтроллером (возможно подключение как по параллельному, так и по последовательному интерфейсу).

Небольшая подборка ссылок на тему:

http://www.efo.ru/doc/Wiznet/Wiznet.pl?2595 – краткое описание и ссылки на исходники и документацию (много документации)

http://www.radioradar.net/radiofan/radiofan_technology/w5100.html – статья «Реализация на базе микросхемы W5100 устройства для работы в сетях Ethernet».  Кратко, но тоже будет полезно.

Profile

32bit_me: (Default)
32bit_me

July 2017

S M T W T F S
      1
2345678
9101112131415
16171819202122
232425262728 29
3031     

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 21st, 2017 01:25 am
Powered by Dreamwidth Studios