Raspberry Pi - FT232
Raspberry Pi чудово працює з USB девайсами на базі FT232. Я маю свою розробку USB-Барометра, він же - USB-Altimeter та варіометр, у якому використовується FT232RL. Я вирішив протестувати, як він буде працювати з Raspberry Pi.
Отже, вставляємо пристрій на базі FT232 до USB-роз’єма Raspberry Pi і ... Raspberry Pi перезавантажився. Прикро. Живлення Raspberry Pi здійснювалось від USB-порта комп’ютера. Вірогідніше за все - не вистачило потужності і просадка напруги відправила Raspberry Pi у ребут. Проте, після перезавантаження все працювало нормально. Якщо для живлення Raspberry Pi використовувати більш потужний блок живлення, перезавантажень не відбувається.
Перевіримо чи дійсно Raspberry Pi розпізнав FT232. Це не обов’язково, можна відразу перейти до запуску терміналу, але ця перевірка може допомогти дізнатися що саме пішло не так, якщо сталась якась проблема.
Перевіримо усе послідовно. Дивимось у логи:
tail /var/log/messages
Бачимо:
Oct 2 08:05:19 raspberrypi kernel: [ 87.731002] usbserial: USB Serial support registered for generic Oct 2 08:05:19 raspberrypi kernel: [ 87.747187] usbcore: registered new interface driver ftdi_sio Oct 2 08:05:19 raspberrypi kernel: [ 87.749035] usbserial: USB Serial support registered for FTDI USB Serial Device Oct 2 08:05:19 raspberrypi kernel: [ 87.749433] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected Oct 2 08:05:19 raspberrypi kernel: [ 87.750033] usb 1-1.2: Detected FT232RL Oct 2 08:05:19 raspberrypi kernel: [ 87.750059] usb 1-1.2: Number of endpoints 2 Oct 2 08:05:19 raspberrypi kernel: [ 87.750076] usb 1-1.2: Endpoint 1 MaxPacketSize 64 Oct 2 08:05:19 raspberrypi kernel: [ 87.750091] usb 1-1.2: Endpoint 2 MaxPacketSize 64 Oct 2 08:05:19 raspberrypi kernel: [ 87.750108] usb 1-1.2: Setting MaxPacketSize 64 Oct 2 08:05:19 raspberrypi kernel: [ 87.751506] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0Помічаємо ttyUSB0
Наступна команда:
cat /proc/tty/driver/usbserial
має повернути щось схоже на таке:
usbserinfo:1.0 driver:2.0 0: module:ftdi_sio name:"FTDI USB Serial Device" vendor:0403 product:6001 num_ports:1 port:0 path:usb-bcm2708_usb-1.3Перевіримо чи існує device file:
ls -l /dev/ttyUSB*
Маємо побачити щось так:
crw-rw---T 1 root dialout 188, 0 Aug 15 06:39 /dev/ttyUSB0Перевіряємо стан USB шин:
lsusb
Маємо побачити щось так:
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 006: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) ICПеревіряємо чи завантажені модулі для ftdi:
lsmod | grep ftdi
Бачимо наступне:
ftdi_sio 30487 0 usbserial 26435 1 ftdi_sio
Запускаємо термінал
Запускаємо термінальну програму, правильно вказавши швидкість. В цьому випадку 57600:
minicom -b 57600 -o -D /dev/ttyUSB0
(термінальну програму minicom ми встановлювали у статті Raspberry Pi — UART)
Бачимо потік даних від нашого USB-Барометра.
Програмно приймати та відправляти дані також можна. Оскільки Raspbian бачить і UART і FT232 як serial порт, приклади роботи з FT232 нічим не відрізняються від прикладів, наведених у статті Raspberry Pi — UART. Відмінність тільки у назві девайсу: треба буде замінити /dev/ttyAMA0 на /dev/ttyUSB0.
Успіхів.
Дивись також:
- Raspberry Pi — що це таке?
- Raspberry Pi — GPIO
- Raspberry Pi — UART
- Raspberry Pi — FT232
- Raspberry Pi — PWM і Сервопривод
- Raspberry Pi — DHT11
- Raspberry Pi - FM Transmitter
- Прошивка AVR мікроконтролерів за допомогою Raspberry Pi
- Raspberry Pi — LCD display 1602
- Raspberry Pi — WiFi
- Raspberry-Pi — I2C (TWI)
- Raspberry Pi - DS18B20
- Raspberry Pi Camera
- nRF24L01+ ATMEGA + Raspberry Pi
- BMP180 + Raspberry Pi + WH1602
- Wi-Fi Метео станція
- Raspbian. Apache + PHP + Python + MySQL
- Встановлюємо Raspbian на Raspberry Pi без клавіатури та монітору
- IR-дистанційне керування. Використання LIRC у Python
- Raspberry Pi. Raspbian. Відправлення пошти через аккаунт Gmail
- Neoway M590 – GSM/GPRS modem
- MPU-6050 – гіроскоп – акселерометр
- HMC5883L Магнітометр
- PWM контролер з інтерфейсом I2С на базі мікросхеми PCA9685
- Метеостанція на Raspberry Pi своїми руками
- Raspberry Pi. Live-stream video
Недавні записи
- LCD Display ST7567S (IIC)
- Розпізнавання мови (Speech recognition)
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
- DC-DC для IGBT драйверів ізольований 2 W +15 -8 вольт
Tags
battery soldering java-script ngnix adc rs-232 flask esp8266 watchdog web exti solar mongodb rtc sms pwm usart books ethernet smd git websocket meteo css python dc-dc displays led ssd1306 eeprom gpio barometer max1674 mpx4115a brushless motor mpu-6050 timer sensors remap servo bldc atmega pmsm 3d-printer flash encoder examples dma raspberry-pi tim ssd1331 piezo mpu-9250 rfid eb-500 foc bme280 gps nvic dht11 bluetooth hih-4000 stm32 st-link docker uart avr html wifi bmp280 bkp nodemcu options usb lcd programmator i2c capture
Архіви