Interface: tos.chips.at91.i2c.HplAT91I2C

interface HplAT91I2C

The AT91 I2C HPL interface. See pages 287-303 in the At91SAM7S Series Preliminary

Author:
Rasmus Ulslev Pedersen

Commands
command uint32_t getTWIRHR() Get TWI receive holding register.
command uint32_t getTWISR() Set TWI status register.
command void setTWICR(uint32_t val) Set TWI control register.
command void setTWICWGR(uint32_t val) Set TWI clock waveform generator register.
command void setTWIIDR(uint32_t val) Set TWI interrupt disable register.
command void setTWIIER(uint32_t val) Set TWI interrupt enable register.
command void setTWIMMR(uint32_t val) Set TWI master mode register.
command void setTWITHR(uint32_t val) Set TWI transmit holding register.

Events
event void interruptI2C() Notification for an i2c event.

Commands - Details

getTWIRHR

command uint32_t getTWIRHR()

Get TWI receive holding register.

Returns:
val The received byte.

getTWISR

command uint32_t getTWISR()

Set TWI status register.

Parameters:
val - : AT91C_TWI_TXCOMP - Transmission completed AT91C_TWI_RXRDY - Receive holding register ready AT91C_TWI_TXDRY - Transmit holding register ready AT91C_TWI_NACK - Not acknowledged AT91C_TWI_OVRE - Overrun Error AT91C_TWI_UNRE - Underrun Error

setTWICR

command void setTWICR(uint32_t val)

Set TWI control register.

Parameters:
val - : AT91C_TWI_START - Send a start condition AT91C_TWI_STOP - Send a stop condition AT91C_TWI_MSEN - Master transfer enabled AT91C_TWI_MSDIS - Master Transfer disabled AT91C_TWI_SWRST - Software reset

setTWICWGR

command void setTWICWGR(uint32_t val)

Set TWI clock waveform generator register.

Parameters:
val - : AT91C_TWI_CLDIV - Clock low divider AT91C_TWI_CHDIV - Clock high divider AT91C_TWI_CKDIV - Clock divider

setTWIIDR

command void setTWIIDR(uint32_t val)

Set TWI interrupt disable register.

Parameters:
val - : AT91C_TWI_TXCOMP - Transmission completed AT91C_TWI_RXRDY - Receive holding register ready AT91C_TWI_TXRDY - Transmit holding register ready AT91C_TWI_NACK - Not acknowledge

setTWIIER

command void setTWIIER(uint32_t val)

Set TWI interrupt enable register.

Parameters:
val - : AT91C_TWI_TXCOMP - Transmission completed AT91C_TWI_RXRDY - Receive holding register ready AT91C_TWI_TXRDY - Transmit holding register ready AT91C_TWI_NACK - Not acknowledge

setTWIMMR

command void setTWIMMR(uint32_t val)

Set TWI master mode register.

Parameters:
val - : AT91C_TWI_DADR - Device address AT91C_TWI_MREAD - Master read direction AT91C_TWI_IADRSZ - Internal Device Address (0 means no internal device addr.)

setTWITHR

command void setTWITHR(uint32_t val)

Set TWI transmit holding register.

Parameters:
val - The byte to transmit in bit 7:0.

Events - Details

interruptI2C

event void interruptI2C()

Notification for an i2c event.