Мобильная версия
Вход в магазин
Регистрация
Напомнить пароль
Список желаний
(098) 067-12-26 Киевстар (098) 067-12-26   Киевстар
(066) 142-24-48 Vodafone (066) 142-24-48   Vodafone
(098) 067-12-26 Lifecell (063) 642-36-59   Lifecell

График работы магазина:

Пн-Пт: 10.00 - 19.00

Сб-Вс: выходные

Киев, пр-кт Голосеевский, 97-А
р-н метро "Выставочный центр"

Каталог

Генератор радиошума в диапазоне 2.4 ГГц

Генераторы шума обычно используются для научных экспериментов и для тестирования приемо-передающего или антенного оборудования, но еще с помощью них, можно улучшить уже существующую беспроводную инфраструктуру.

Комплекс домашней автоматизации (Часть 1)

Комнатная метеостанция. Основная функция устройства – это сигнализация об аварийных ситуациях, но поскольку на плате установлен микроконтроллер ATmega328p, я решил добавить несколько датчиков для автономности и организации обратной связи.

Роутер на Raspberry Pi 3 с дисплеем

В проекте используются Raspberry Pi 3 и OLED (SSD1306 128x64 I2C или SPI). Для корпуса используется акриловый «сэндвич», так как так наглядней, и обычный 5-вольтовый источник питания силой тока около 0,5 А (этого вполне достаточно: устройство потребляет

Термістор (терморезистор). ADC в stm32

Дана стаття являється кроком до створення табло на основі дисплею 320х240 з контролем температури для лабораторного блока живлення. Тому використовуються саме Термістори. Вони мають мізерну ціну, малий розмір (їх зручно прикріпити до радіатора),доступні,

Підключення 2.8 TFT LCD Screen модуля до STM32 (частина 2 - touchscreen)

Дана стаття являється прикладом-підказкою для підключення резистивної сенсорної панелі на контролері TSC2046 до stm-ки через популярний інтерфейс SPI. Про особливості ініціалізації та використання цього інтерфейсу іншим разом (але в коді уже
Напиши статью и получи скидку!

Портативный анализатор спектра на Pololu Wixel c OLED SPI дисплеем

2016-07-05

Все статьи →

Vladimir Sokolov

В предыдущей статье рассматривался вариант анализатора спектра ISM диапазона (ссылка на https://arduino-ua.com/art44-analizator-spektra-2-4-ggc-na-pololu-wixel). Для сбора данных использовался модуль Pololu Wixel, но собирались данные в операционной системе ведущего устройства. Для визуализации данных можно использовать OLED дисплеи малого размера. В данной случае выбраны дисплеи 128 на 64 писк. Но такой размер вдвое меньше максимального количества точек, получаемого от устройства. Потому производится усреднение по двум соседним точкам.

Подсоедините экраны, как показано на рисунке.

 

 

Для корректной работы дисплея установите библиотеку adafruit (ссылка на https://github.com/adafruit/Adafruit_Python_SSD1306) и добавьте обработчик (полностью код на Python см. в файле spectrum_spi_i2c.py):

 

result = re.findall(r'-\d{2,3}',response)

j = 0

result_odd = []

for rssi in result:

    result[j] = 105 + int(rssi)

    if result[j] > 64:

        result[j] = 64

    if j % 2 == 1:

        result_odd.insert(j // 2, (result[j] + result[j-1]) // 2)

    j += 1

width = dispSPI.width

height = dispSPI.height

image = Image.new('1', (width, height))

draw = ImageDraw.Draw(image)

draw.rectangle((0,0,width,height), outline=0, fill=0)

padding = 0

top = padding

bottom = height - padding

x = 1

while x < 128:

    draw.line((x, top, x, result_odd[x]), fill=255)

    x += 1

dispI2C.image(image)

dispSPI.image(image)

dispI2C.display()

dispSPI.display()

 

В результате на обоих экранах будет отображаться один и тот же спектр (в данном случае спектр отображается задом на перед).

 

 

Но для отображения спектра на экране не обязательно использовать RPi, так как Wixel имеет на борту два UART (ссылка на https://pololu.github.io/wixel-sdk/spi0__master_8h.html#a2be23377a8be742444a8fd2b9644b9e5), которые успешно работают с SPI устройствами (ограничение лишь по максимальной частоте в 3 МГц). [Также реализован программный I2C интерфейс, потому потенциально можно подключить и I2C дисплей.]

 

В прошивке сначала инициализируется аппаратный порт (частота, параметров синхроимпульса, порядка бит), затем дисплей и после этого модуль анализатора спектра (полный исходный код на C прошивки см. во вложении). Вывод данных на экран:

 

checkRadioChannels();

j = 0;

for(block=0; block<8; block++)

{

                for(channel=128; channel>0; --channel)

                {

                               if (rssiHalfValue[channel] > 8) {

                                               txData[j] = 0xFF;

                                               rssiHalfValue[channel] -= 8;

                                               j++;

                               }

                               else

                               {

                                               txData[j] = power(2,(rssiHalfValue[channel])) - 1;

                                               rssiHalfValue[channel] = 0;

                                               j++;

                               }

                }

}

 

DChigh;

CSlow;

LED_YELLOW(1);

spi0MasterTransfer(txData,rxData,1024);

delayMs(15);

CShigh;

DClow;

 

Схема подключения SPI дисплея к модулю Wixel показана на рисунке. Устройство может быть запитано от внешнего источника или от аккумуляторной батареи с напряжением от 2,7 до 6,5 В (ссылка на https://www.pololu.com/docs/0J46/all#5.a), но в данному случае опускать напряжение ниже 3,6 В не рекомендуется, так как экран начинает работать нестабильно. Использован четырех жильный тип подключения (4-wire), хотя реально используется пять жил (также сброс RES), для которого отдельно программируется выход, так как выход с напряжением 3,3 В лишь один. Также используется дополнительная кнопка паузы, при нажатии которой процесс измерений останавливается, а на экране отображается последнее измерение. Дополнительно используется светодиодная индикация (зеленый, оранжевый и красный).

 

 

Отображение на экран реализовано напрямую, без использования дополнительных графических библиотек. С методами адресации и прочими настройками можно подробно ознакомиться в официальном даташите (ссылка на https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf). На рисунках показан вид спереди и сзади установки на макетной плате (прибор слева — анализатор логики).

 

 

 

 

При инициализации и настройке экрана пришлось использовать анализатор логики, так как без него не ясно было на какой частоте по умолчанию работает UART, какие минимальные задержки можно устанавливать, как передавать пакетные данные. На рисунках показаны настройки SPI и пример команды гашения дисплея.

 

 

 

 

оплата картами Visa и MasterCard