#I2C #Prototyping #TestEquipment
Свет, тьма, VEML7700 и Python
У меня на полке стоит NanoPi Fire3 — старинный SBC с Linux на борту. С течением времени он неизбежно обрастает периферией разной степени бесполезности. Среди прочего, конечно же, в нем прописался экранчик LCD2004 (даже два) со светодиодной подсветкой, который освещал ночную квартиру, как прожектор. С одной стороны — удобно ходить в туалет, не включая свет, с другой — захотелось гламура, как в мобилке, чтобы, чем меньше вокруг света, тем тусклее была бы подсветка. Для этой цели нужно этот свет как‑то измерять, так что ассортимент периферии было решено расширить датчиком освещенности VEML7700. О том, как я приспосабливал его к делу, и пойдет речь далее. Измерить освещенность
https://habr.com/ru/articles/1038118/
#VEML7700 #I2C #Освещенность #Измерения #Датчик #Python #Linux #NanoPi_Fire3 #Подсветка #LCD2004
Создаем I2C Master Controller на Verilog. Burst-транзакции и дисплей SSD1306
Продолжим совершенствование нашего I2C-контроллера и расширение спектра применимости. В этот раз сделаем возможность burst-транзакций и выведем картинку SSD1306. Для этого необходимо детально разобрать механизм функционирования OLED-дисплея SSD1306 и сделать аппаратный контроллер с burst-передачей по I2C, и в качестве примера сделать генерацию визуализацию 3D-куба и текста. Получился ОЧЕНЬ объемный материал с объяснением всех механик примененных для решения данной задачи. И вся логика - сугубо в железе, без процессора, без микрокода и чисто в ПЛИС. Всем кто интересуется кодингом под Verilog - добро пожаловать под кат!
https://habr.com/ru/companies/beget/articles/1028178/
#Verilog #i2c_master_controller #i2c #ssd1306 #OLEDдисплей #FPGA #Фреймбуфер #I2C_burst_writer
Создаем I2C Master Controller на Verilog. Создаем контроллер ядра I2C
Я продолжаю описывать создание I2C-контроллера на Verilog. В предыдущих статьях мы протестировали ядро контроллера который выполняет атомарные функции работы с шиной в т.ч. в пограничных ситуациях типа clock stretching и пр. Теперь необходимо разработать управляющий контроллер для этого ядра, чтобы выполнять необходимые нам функции, но уже на следующем уровне абстракции и стать на шаг ближе к нашей цели - к рабочему коду I2C Controller который мы будем использовать с EEPROM и OLED SSD1306, а далее все это переиспользуем в Zynq и подключим к Linux. Всем заинтересовавшимся - добро пожаловать под кат!
https://habr.com/ru/companies/beget/articles/1025326/
#verilog #quartus #i2c #i2c_master_controller #testbench #alinx_ax301 #fpga