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
Tags
bme280 bmp280 gps mpu-6050 options stm32 ssd1331 ssd1306 eb-500 3d-printer soldering tim mpu-9250 dma watchdog piezo exti web raspberry-pi docker ngnix solar bluetooth foc html css brushless flask dc-dc capture gpio avr rs-232 mpx4115a atmega mongodb st-link barometer pwm nvic git java-script programmator dht11 hih-4000 pmsm encoder max1674 smd sensors rtc adc lcd motor timer meteo examples i2c usb flash sms rfid python esp8266 servo books bldc remap eeprom bkp battery ethernet uart usart displays led websocket nodemcu wifi
Архіви