pub struct RegisterBlock {Show 53 fields
pub cr: CR,
pub tar: TAR,
pub sar: SAR,
pub dr: DR,
pub sshr: SSHR,
pub sslr: SSLR,
pub fshr: FSHR,
pub fslr: FSLR,
pub isr: ISR,
pub imr: IMR,
pub rawisr: RAWISR,
pub rxtlr: RXTLR,
pub txtlr: TXTLR,
pub icr: ICR,
pub rx_under: RX_UNDER,
pub rx_over: RX_OVER,
pub tx_over: TX_OVER,
pub rd_req: RD_REQ,
pub tx_abrt: TX_ABRT,
pub rx_done: RX_DONE,
pub activ: ACTIV,
pub stop: STOP,
pub start: START,
pub gc: GC,
pub enr: ENR,
pub sr: SR,
pub txflr: TXFLR,
pub rxflr: RXFLR,
pub hold: HOLD,
pub tx_abrt_src: TX_ABRT_SRC,
pub slv_nack: SLV_NACK,
pub dma: DMA,
pub setup: SETUP,
pub gcr: GCR,
pub en_sr: EN_SR,
pub spklen: SPKLEN,
pub scl_tmo: SCL_TMO,
pub sda_tmo: SDA_TMO,
pub scl_stuck: SCL_STUCK,
pub smb_sext: SMB_SEXT,
pub smb_mext: SMB_MEXT,
pub smb_idle: SMB_IDLE,
pub smb_isr: SMB_ISR,
pub smb_imr: SMB_IMR,
pub smb_rawisr: SMB_RAWISR,
pub smb_icr: SMB_ICR,
pub opt_sar: OPT_SAR,
pub smb_udid_lsb: SMB_UDID_LSB,
pub smb_udid_msb0: SMB_UDID_MSB0,
pub smb_udid_msb1: SMB_UDID_MSB1,
pub smb_udid_msb2: SMB_UDID_MSB2,
pub slvmask: SLVMASK,
pub slvrcvaddr: SLVRCVADDR,
/* private fields */
}Expand description
Register block
Fields§
§cr: CR0x00 - control register
tar: TAR0x04 - target address register
sar: SAR0x08 - slave address register
dr: DR0x10 - Data Command Register
sshr: SSHR0x14 - Standard Mode Clock High Count Register
sslr: SSLR0x18 - Standard Mode Clock Low Count Register
fshr: FSHR0x1c - Fast/Super Fast Mode Clock High Count Register
fslr: FSLR0x20 - Fast/Super Fast Mode Clock Low Count Register
isr: ISR0x2c - Interrupt Status Register
imr: IMR0x30 - interrupt mask register
rawisr: RAWISR0x34 - RAW interrupt register
rxtlr: RXTLR0x38 - receive threshold register
txtlr: TXTLR0x3c - Transmit Threshold Register
icr: ICR0x40 - Combined and Independent Interrupt Clear Registers
rx_under: RX_UNDER0x44 - Clear the RX_UNDER interrupt register
rx_over: RX_OVER0x48 - Clear the RX_OVER interrupt register
tx_over: TX_OVER0x4c - Clear the TX_OVER interrupt register
rd_req: RD_REQ0x50 - Clear the RD_REQ interrupt register
tx_abrt: TX_ABRT0x54 - Clear the TX_ABRT interrupt register
rx_done: RX_DONE0x58 - Clear the RX_DONE interrupt register
activ: ACTIV0x5c - Clear the ACTIVITY interrupt register
stop: STOP0x60 - Clear the STOP_DET interrupt register
start: START0x64 - Clear the START_DET interrupt register
gc: GC0x68 - Clear the GEN_CALL interrupt register
enr: ENR0x6c - enable register
sr: SR0x70 - status register
txflr: TXFLR0x74 - Transmit buffer level register
rxflr: RXFLR0x78 - Receive buffer level register
hold: HOLD0x7c - SDA hold time register
tx_abrt_src: TX_ABRT_SRC0x80 - Transfer Abort Source Register
slv_nack: SLV_NACK0x84 - Slave Receive NACK Register
dma: DMA0x88 - DMA Control Register
setup: SETUP0x94 - SDA setup time register
gcr: GCR0x98 - General Call ACK Register
en_sr: EN_SR0x9c - ENABLE Status Register
spklen: SPKLEN0xa0 - filter register
scl_tmo: SCL_TMO0xac - SCL Low Timeout Register
sda_tmo: SDA_TMO0xb0 - SDA Low Timeout Register
scl_stuck: SCL_STUCK0xb4 - Clear the SCL_STUCK interrupt register
smb_sext: SMB_SEXT0xbc - SMBus Slave Clock Stretching Timeout Register
smb_mext: SMB_MEXT0xc0 - SMBus Master Clock Stretching Timeout Register
smb_idle: SMB_IDLE0xc4 - SMBus Bus Idle Count Register
smb_isr: SMB_ISR0xc8 - SMBus Interrupt Status Register
smb_imr: SMB_IMR0xcc - SMBus Interrupt Mask Register
smb_rawisr: SMB_RAWISR0xd0 - SMBus RAW Interrupt Register
smb_icr: SMB_ICR0xd4 - SMBus Combined and Independent Interrupt Clear Registers
opt_sar: OPT_SAR0xd8 - Optional Slave Address Register
smb_udid_lsb: SMB_UDID_LSB0xdc - SMBus UDID LSB Register
smb_udid_msb0: SMB_UDID_MSB00xe0 - SMBus UDID MSB Register 0
smb_udid_msb1: SMB_UDID_MSB10xe4 - SMBus UDID MSB Register 1
smb_udid_msb2: SMB_UDID_MSB20xe8 - SMBus UDID MSB Register 2
slvmask: SLVMASK0xec - Slave Address Mask Register
slvrcvaddr: SLVRCVADDR0xf0 - Slave Receive Address Register