# Bus Pirate Edu Kit Exercise no.11

(Difference between revisions)
 Revision as of 14:19, 12 April 2013 (view source)Arakis (Talk | contribs) (→The Circuit)← Older edit Revision as of 14:35, 18 April 2013 (view source)Arakis (Talk | contribs) (→Bus Pirate Terminal)Newer edit → Line 45: Line 45: ==Bus Pirate Terminal== ==Bus Pirate Terminal== + + + HiZ>m + 1. HiZ + 2. 1-WIRE + 3. UART + 4. I2C + 5. SPI + 6. 2WIRE + 7. 3WIRE + 8. LCD + x. exit(without change) + + (1)>4 + Set speed: + 1. ~5KHz + 2. ~50KHz + 3. ~100KHz + 4. ~400KHz + + (1)>3 + Ready + I2C>P + Pull-up resistors ON + Warning: no voltage on Vpullup pin + I2C>W + POWER SUPPLIES ON + + + + + + I2C>(1) + Searching I2C address space. Found devices at: + 0xDE(0x6F W) + + + + + + + I2C>[0xDE 0[0xDF r:9] + I2C START BIT + WRITE: 0xDE ACK + WRITE: 0x00 ACK + I2C START BIT + WRITE: 0xDF ACK + READ: 0x00  ACK 0x00  ACK 0x00  ACK 0x01  ACK 0x01  ACK 0x01  ACK 0x01  ACK 0x80  ACK 0x00 + NACK + I2C STOP BIT + + + + + + + I2C>[0xde 0 0x80] + I2C START BIT + WRITE: 0xDE ACK + WRITE: 0x00 ACK + WRITE: 0x80 ACK + I2C STOP BIT + + + + + + I2C>[0xde 0[0xdf r:9] + I2C START BIT + WRITE: 0xDE ACK + WRITE: 0x00 ACK + I2C START BIT + WRITE: 0xDF ACK + READ: 0x82  ACK 0x00  ACK 0x00  ACK 0x21  ACK 0x01  ACK 0x01  ACK 0x01  ACK 0x80  ACK 0x00 + NACK + I2C STOP BIT + + + + + + I2C>[0xde 0[0xdf r:9] + I2C START BIT + WRITE: 0xDE ACK + WRITE: 0x00 ACK + I2C START BIT + WRITE: 0xDF ACK + READ: 0xD4  ACK 0x01  ACK 0x00  ACK 0x21  ACK 0x01  ACK 0x01  ACK 0x01  ACK 0x80  ACK 0x00 + NACK + I2C STOP BIT + + + + + + I2C>m + 1. HiZ + 2. 1-WIRE + 3. UART + 4. I2C + 5. SPI + 6. 2WIRE + 7. 3WIRE + 8. LCD + x. exit(without change) + + (1)>1 + Ready + HiZ> + + ==Not Working?== ==Not Working?== ==Taking it further== ==Taking it further==

## The Circuit

IC PIN1 (+) PIN2 (-)
MCP7940M E14 E15
32KHz crystal C14 C15
C1 BB_-_left B14
C2 BB_-_left B15
Signal name Contact1 Contact2
5V BP_5V BB_+_left
5V BB_+_left BB_+_right
5V BB_+_right J14
5V BP_VPU BB_+_left
GND BP_GND BB_-_left
GND BB_-_left A17
MOSI BP_MOSI J17
CLK BP_CLK J16
• The (+) and (-) next to PIN1 and PIN2 are intended for devices such as LEDs, where PIN1 should be the anode and connected to a higher potential then PIN2.

## Bus Pirate Terminal

HiZ>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)

(1)>4
Set speed:
1. ~5KHz
2. ~50KHz
3. ~100KHz
4. ~400KHz

(1)>3
I2C>P
Pull-up resistors ON
Warning: no voltage on Vpullup pin
I2C>W
POWER SUPPLIES ON

I2C>(1)
Searching I2C address space. Found devices at:
0xDE(0x6F W)

I2C>[0xDE 0[0xDF r:9]
I2C START BIT
WRITE: 0xDE ACK
WRITE: 0x00 ACK
I2C START BIT
WRITE: 0xDF ACK
READ: 0x00 ACK 0x00 ACK 0x00 ACK 0x01 ACK 0x01 ACK 0x01 ACK 0x01 ACK 0x80 ACK 0x00
NACK
I2C STOP BIT

I2C>[0xde 0 0x80]
I2C START BIT
WRITE: 0xDE ACK
WRITE: 0x00 ACK
WRITE: 0x80 ACK
I2C STOP BIT

I2C>[0xde 0[0xdf r:9]
I2C START BIT
WRITE: 0xDE ACK
WRITE: 0x00 ACK
I2C START BIT
WRITE: 0xDF ACK
READ: 0x82 ACK 0x00 ACK 0x00 ACK 0x21 ACK 0x01 ACK 0x01 ACK 0x01 ACK 0x80 ACK 0x00
NACK
I2C STOP BIT

I2C>[0xde 0[0xdf r:9]
I2C START BIT
WRITE: 0xDE ACK
WRITE: 0x00 ACK
I2C START BIT
WRITE: 0xDF ACK
READ: 0xD4 ACK 0x01 ACK 0x00 ACK 0x21 ACK 0x01 ACK 0x01 ACK 0x01 ACK 0x80 ACK 0x00
NACK
I2C STOP BIT

I2C>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)

(1)>1