Bus Pirate 102 tutorial/ru

From DP

Jump to: navigation , search
Language: English  • Español • Français • Русский


bpv3-unbox3

По многочисленным просьбам вот вторая часть руководства Bus Pirate 101 tutorial. В этот раз мы рассотрим пользовательский интерфейс Bus Pirate и продемонстрируем базовые вещи как режим выбора интерфейса, источники питания, подтягивающие резисторы. Даже, если вы уже работали с Bus Pirate какое-то время, вы все же найдете советы для себя в этом руководстве.

Фото от Uwe Bannow, спасибо!

Contents

Вход в режим выбора интерфейса

* Syntax error, type ? for help
HiZ>W
No mode set, M for mode <<<not allowed in HiZ
HiZ>

Bus Pirate всегда начинает работу high impedance в режиме (HiZ), в котором все выходы деактивированы. Он предназначен для защиты любых подключенных устройств от условий работы за пределами их технических характеристик. Если окно терминала пустое, нажмите enter, чтобы увидеть командную строку. С помощью ввода символа '?' можно увидеть полный список опций доступных в данной версии.

HiZ>m <<<configure bus mode
1. HiZ
...
4. I2C
...
10. LCD
(1) >4 <<< select I2C (option 4)
READY
I2C>

Мы будем использовать 24AA I2C EEPROM (чип памяти) установленный на плате 3EEPROM explorer board чтобы продемонстрировать некоторые возможности. Вам не нужно иметь реальный чип, Можно следовать туториалу без чипа.

'Нажмите 'M' для входа в режим выбора интерфейса . Выберите I2C bus, скофигурируйте ее для software mode, high speed.

Источники питания

Встроенные источники питания могут быть активированы только вне режима HiZ.

I2C>w<<<power supplies off
POWER SUPPLIES OFF
I2C>v<<<voltage report
Voltage monitors: 5V: 0.0 | 3.3V: 0.0 | VPULLUP: 0.0 |
I2C>W<<<power supplies on
POWER SUPPLIES ON
I2C>v<<<voltage monitor report
Voltage monitors: 5V: 4.9 | 3.3V: 3.2 | VPULLUP: 0.0 |
I2C>

Большаф 'W' активирует встроенные источники питания, маленькая 'w' отключает их. Активируйте источники питания, затем нажмите v чтобы увидеть вольтаж.

Подтягивающие резисторы

Некоторые виды интерфейсов, например I2C, требуют наличие резистора для возможности установки 1 на шине. Это описано в open collector or open drain bus. Без pull-up resistor, на шине будет постоянный '0'. Некотрые интерфейсы имеют выходы только с открытым коллектором(1-Wire, I2C).

I2C>v <<<voltage monitor report
Voltage monitors: 5V: 4.9 | 3.3V: 3.2 | VPULLUP: 4.9 |
I2C>

Соедините пин Vpu разъема IO к источнику питания. Встроенные подтягивающие резисторы 10 кОм. Нажмите v и удостоверьтесь в наличии напряжения на подтяжке.

I2C>p <<<configure pull-up resistors
1. Pull-ups off
2. Pull-ups on
(1) >2 <<<enable
Pull-up resistors ON
I2C>

Нажмите p для кофигурирования подтягивающих резисторов, активируйте их. Более подробно смотрите в practical guide to Bus Pirate pull-up resistors.

Макросы

Macros are preprogrammed shortcuts. Некоторые макросы включают: опрос смарт карт , сканер I2C адресов , датчики JTAG цепей, прозрачные UART мосты, ЖК инициализация, и BusPirate сниффер.

I2C>(0)<<< show macro menu
0.Macro menu
1.7bit address search
2.I2C sniffer
I2C>(1)<<< macro 1, I2C address search
Searching 7bit I2C address space.
Found devices at:
0xA0(0x50 W) 0xA1(0x50 R)
I2C>


I2C устройства имеют 7-мибитный адрес. Мы могли бы найти адрес в Даташите , но вместо этого мы будем использовать макрос сканер адреса(1). Bus Pirate просканировал все возможножные адреса и нашел чип с адресом 0x50 (0xa0/0xa1).

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

Узнайте больше I2C address scan.

Выбор форматов чисел

Числа не могут быть введены как binary, decimal, или hexadecimal values, mix and match, use whatever best suits the datasheet or task.

I2C>= <<<convert number formats
CONVERT (1) >10 <<<enter value in any format
0x0A
10
0b00001010
I2C>

Используйте '=' меню для преобразования между форматами. Десятичное 10 эквивалентно 0x0a (HEX) и 0b1010 (BIN). Детальнее .

CONVERT (1) >0x0f
0x0F
15
0b00001111

0x0f is a HEX formatted value. The leading 0 is optional for values less than 0x10, 0xf is also valid. HEX can also be entered as 0h0f, if that's more familiar.

CONVERT (1) >0b11
0x03
3
0b00000011

0b11 is a binary 3. It can also be entered with or without leading 0s: 0b00000011, 0b011, etc. Детальнее.

Повтор команд

Большинство синтаксисов можно повторять, добавляя ':' и повторить значение, повторное значение может быть в любом формате.

I2C>0b10:0x03
WRITE: 0x02 , 0x03 TIMES ACK <<<'0b10' three times
I2C>

0b10:0x03 означает повтор команды(:) записать 2 (0b10)в шину I2C три раза (:0x03).

I2C>[0xa1 r r r:3]
I2C START BIT
WRITE: 0xA1 ACK
READ: 0x0F ACK<<< read a single byte
READ: 0x0E ACK<<< read a single byte
READ 0x03 BYTES:<<< read multiple bytes
0x03 ACK 0x0E ACK 0x02 NACK
I2C STOP BIT
I2C>

r является общей командой для чтения одного байта во всех режимах BusPirate, она также может быть повторена с помощью ':' командой (r: 3). Выход BusPirate находится в HEX формате по умолчанию, но вы можете изменить его в двоичный или десятичный из меню режим вывода "о".

Окогчание работы

I2C>m<<<mode menu
1. HiZ
...
10. LCD
(1) ><<<HiZ is the default
Mode selected
HiZ>

Когда вы закончите, нажмите "m". BusPirate немедленно отключает все выходы, источники питания и подтягивающие резисторы, и предлагает ввод режима. Выберите 1 (или просто нажмите клавишу ВВОД для опции по умолчанию), чтобы вернуться в режим HiZ.

Taking it further

В Bus Pirate 101 мы сделали общий обзор аппаратных средств BusPirate, установку драйверов, и настройку последовательного терминала. В руководстве 102 мы вошли в режим выбора интерфейсов и продемонстрировали некоторые основные команды.

Теперь вы готовы к работе devices. 3EEPROM explorer board может быть хорошим местом для начала , на ней установлено EEPROM чипы с тремя популярными интерфейсами (1-Wire, I2C and SPI).

Bus Pirate manual постоянно обновляется. Check out the expanded IO header pin reference, complete menu options guide, and individual bus mode documentation.

Если вы программируете на ПК, вы можете автоматизировать свою работу, написав скрипты для BusPirate binary interface mode. Вот a bunch of examples для старта.

Так есть форум Bus Pirate forum.