Bus Pirate Edu Kit Exercise no.11

(Difference between revisions)
 Revision as of 14:42, 18 April 2013 (view source)Arakis (Talk | contribs) (→Bus Pirate Terminal)← Older edit Latest revision as of 14:52, 18 April 2013 (view source)Arakis (Talk | contribs) (→Overview) Line 1: Line 1: ==Overview== ==Overview== [[Image:BP_EK_E11_overview.jpg|600px]] [[Image:BP_EK_E11_overview.jpg|600px]] + + In this exercise will learn how to start a Real Time Clock and Calendar IC and read the values generated by it. ==The Circuit== ==The Circuit==

Overview

In this exercise will learn how to start a Real Time Clock and Calendar IC and read the values generated by it.

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

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

(1)>4<<<select the I2C mode
Set speed:
1. ~5KHz
2. ~50KHz
3. ~100KHz
4. ~400KHz

(1)>3<<<select 100KHz for signaling speed
I2C>P<<<connect the pull up resistors (P command)
Pull-up resistors ON
Warning: no voltage on Vpullup pin
I2C>W<<<turn on the power supplies(W command)
POWER SUPPLIES ON

I2C>(1)<<<Search the I2C address space for connected devices
Searching I2C address space. Found devices at:
0xDE(0x6F W)

I2C START BIT
WRITE: 0x00 ACK<<<send the starting register
I2C START BIT<<<restart communication
WRITE: 0xDF ACK<<<send the writing address
READ: 0x00 ACK 0x00 ACK 0x00 ACK 0x01 ACK 0x01 ACK 0x01 ACK 0x01 ACK 0x80 ACK 0x00<<<9 bytes read from registers
NACK
I2C STOP BIT

I2C>[0xde 0 0x80]<<<set the first bit of the registrar located at address 0
I2C START BIT
WRITE: 0xDE ACK
WRITE: 0x00 ACK
WRITE: 0x80 ACK
I2C STOP BIT

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 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

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

(1)>1<<<select the HiZ mode