PicoSDK
i2c_hw_t
is only used within PicoSDK.
Symbol previews are coming soon...
Symbols
loading...
Files
loading...
Summary
Syntax
Examples
References
Call Tree
Data Use
Class Tree
Override Tree
Implementations
Instances
Lifecycle
SourceVu
Raspberry Pi Pico SDK and Examples
PicoSDK
i2c_hw_t
i2c_hw_t struct
Syntax
Show:
Summary
Declaration
from
i2c.h:26
typedef
struct
{
_REG_
(
I2C_IC_CON_OFFSET
)
io_rw_32
con
;
_REG_
(
I2C_IC_TAR_OFFSET
)
io_rw_32
tar
;
_REG_
(
I2C_IC_SAR_OFFSET
)
io_rw_32
sar
;
uint32_t
_pad0
;
_REG_
(
I2C_IC_DATA_CMD_OFFSET
)
io_rw_32
data_cmd
;
_REG_
(
I2C_IC_SS_SCL_HCNT_OFFSET
)
io_rw_32
ss_scl_hcnt
;
_REG_
(
I2C_IC_SS_SCL_LCNT_OFFSET
)
io_rw_32
ss_scl_lcnt
;
_REG_
(
I2C_IC_FS_SCL_HCNT_OFFSET
)
io_rw_32
fs_scl_hcnt
;
_REG_
(
I2C_IC_FS_SCL_LCNT_OFFSET
)
io_rw_32
fs_scl_lcnt
;
uint32_t
_pad1
[
2
]
;
_REG_
(
I2C_IC_INTR_STAT_OFFSET
)
io_ro_32
intr_stat
;
_REG_
(
I2C_IC_INTR_MASK_OFFSET
)
io_rw_32
intr_mask
;
_REG_
(
I2C_IC_RAW_INTR_STAT_OFFSET
)
io_ro_32
raw_intr_stat
;
_REG_
(
I2C_IC_RX_TL_OFFSET
)
io_rw_32
rx_tl
;
_REG_
(
I2C_IC_TX_TL_OFFSET
)
io_rw_32
tx_tl
;
_REG_
(
I2C_IC_CLR_INTR_OFFSET
)
io_ro_32
clr_intr
;
_REG_
(
I2C_IC_CLR_RX_UNDER_OFFSET
)
io_ro_32
clr_rx_under
;
_REG_
(
I2C_IC_CLR_RX_OVER_OFFSET
)
io_ro_32
clr_rx_over
;
_REG_
(
I2C_IC_CLR_TX_OVER_OFFSET
)
io_ro_32
clr_tx_over
;
_REG_
(
I2C_IC_CLR_RD_REQ_OFFSET
)
io_ro_32
clr_rd_req
;
_REG_
(
I2C_IC_CLR_TX_ABRT_OFFSET
)
io_ro_32
clr_tx_abrt
;
_REG_
(
I2C_IC_CLR_RX_DONE_OFFSET
)
io_ro_32
clr_rx_done
;
_REG_
(
I2C_IC_CLR_ACTIVITY_OFFSET
)
io_ro_32
clr_activity
;
_REG_
(
I2C_IC_CLR_STOP_DET_OFFSET
)
io_ro_32
clr_stop_det
;
_REG_
(
I2C_IC_CLR_START_DET_OFFSET
)
io_ro_32
clr_start_det
;
_REG_
(
I2C_IC_CLR_GEN_CALL_OFFSET
)
io_ro_32
clr_gen_call
;
_REG_
(
I2C_IC_ENABLE_OFFSET
)
io_rw_32
enable
;
_REG_
(
I2C_IC_STATUS_OFFSET
)
io_ro_32
status
;
_REG_
(
I2C_IC_TXFLR_OFFSET
)
io_ro_32
txflr
;
_REG_
(
I2C_IC_RXFLR_OFFSET
)
io_ro_32
rxflr
;
_REG_
(
I2C_IC_SDA_HOLD_OFFSET
)
io_rw_32
sda_hold
;
_REG_
(
I2C_IC_TX_ABRT_SOURCE_OFFSET
)
io_ro_32
tx_abrt_source
;
_REG_
(
I2C_IC_SLV_DATA_NACK_ONLY_OFFSET
)
io_rw_32
slv_data_nack_only
;
_REG_
(
I2C_IC_DMA_CR_OFFSET
)
io_rw_32
dma_cr
;
_REG_
(
I2C_IC_DMA_TDLR_OFFSET
)
io_rw_32
dma_tdlr
;
_REG_
(
I2C_IC_DMA_RDLR_OFFSET
)
io_rw_32
dma_rdlr
;
_REG_
(
I2C_IC_SDA_SETUP_OFFSET
)
io_rw_32
sda_setup
;
_REG_
(
I2C_IC_ACK_GENERAL_CALL_OFFSET
)
io_rw_32
ack_general_call
;
_REG_
(
I2C_IC_ENABLE_STATUS_OFFSET
)
io_ro_32
enable_status
;
_REG_
(
I2C_IC_FS_SPKLEN_OFFSET
)
io_rw_32
fs_spklen
;
uint32_t
_pad2
;
_REG_
(
I2C_IC_CLR_RESTART_DET_OFFSET
)
io_ro_32
clr_restart_det
;
uint32_t
_pad3
[
18
]
;
_REG_
(
I2C_IC_COMP_PARAM_1_OFFSET
)
io_ro_32
comp_param_1
;
_REG_
(
I2C_IC_COMP_VERSION_OFFSET
)
io_ro_32
comp_version
;
_REG_
(
I2C_IC_COMP_TYPE_OFFSET
)
io_ro_32
comp_type
;
}
i2c_hw_t
;
Fields
Field
Declared as
i2c_hw_t::fs_scl_hcnt
io_rw_32
i2c_hw_t::fs_scl_lcnt
io_rw_32
i2c_hw_t::_pad1
uint32_t
[
2
]
i2c_hw_t::intr_stat
io_ro_32
i2c_hw_t::intr_mask
io_rw_32
i2c_hw_t::raw_intr_stat
io_ro_32
i2c_hw_t::rx_tl
io_rw_32
i2c_hw_t::tx_tl
io_rw_32
i2c_hw_t::clr_intr
io_ro_32
i2c_hw_t::clr_rx_under
io_ro_32
i2c_hw_t::clr_rx_over
io_ro_32
i2c_hw_t::clr_tx_over
io_ro_32
i2c_hw_t::clr_rd_req
io_ro_32
i2c_hw_t::clr_tx_abrt
io_ro_32
i2c_hw_t::clr_rx_done
io_ro_32
i2c_hw_t::clr_activity
io_ro_32
i2c_hw_t::clr_stop_det
io_ro_32
i2c_hw_t::clr_start_det
io_ro_32
i2c_hw_t::clr_gen_call
io_ro_32
i2c_hw_t::enable
io_rw_32
i2c_hw_t::status
io_ro_32
i2c_hw_t::txflr
io_ro_32
i2c_hw_t::rxflr
io_ro_32
i2c_hw_t::sda_hold
io_rw_32
i2c_hw_t::tx_abrt_source
io_ro_32
i2c_hw_t::slv_data_nack_only
io_rw_32
i2c_hw_t::dma_cr
io_rw_32
i2c_hw_t::dma_tdlr
io_rw_32
i2c_hw_t::dma_rdlr
io_rw_32
i2c_hw_t::sda_setup
io_rw_32
i2c_hw_t::ack_general_call
io_rw_32
i2c_hw_t::enable_status
io_ro_32
i2c_hw_t::fs_spklen
io_rw_32
i2c_hw_t::_pad2
uint32_t
i2c_hw_t::clr_restart_det
io_ro_32
i2c_hw_t::_pad3
uint32_t
[
18
]
i2c_hw_t::comp_param_1
io_ro_32
i2c_hw_t::comp_version
io_ro_32
i2c_hw_t::comp_type
io_ro_32
i2c_hw_t::con
io_rw_32
i2c_hw_t::tar
io_rw_32
i2c_hw_t::sar
io_rw_32
i2c_hw_t::_pad0
uint32_t
i2c_hw_t::data_cmd
io_rw_32
i2c_hw_t::ss_scl_hcnt
io_rw_32
i2c_hw_t::ss_scl_lcnt
io_rw_32
Examples
References
from
examples
Code
Location
Scope
Referrer
typedef
struct
{
i2c.h:26
}
i2c_hw_t
;
i2c.h:331
check_hw_layout
(
i2c_hw_t
,
enable
,
I2C_IC_ENABLE_OFFSET
)
;
i2c.c:12
check_hw_layout
(
i2c_hw_t
,
clr_restart_det
,
I2C_IC_CLR_RESTART_DET_OFFSET
)
;
i2c.c:13
i2c_inst_t
i2c0_inst
=
{
i2c0_hw
,
false
}
;
i2c.c:15
i2c_inst_t
i2c1_inst
=
{
i2c1_hw
,
false
}
;
i2c.c:16
}
i2c_hw_t
;
i2c.h:331
i2c_hw_t
static_assert
(
sizeof
(
i2c_hw_t
)
==
0x0100
,
""
)
;
i2c.h:335
i2c_hw_t
*
hw
;
i2c.h:152
i2c_inst
i2c_inst::hw
static
inline
i2c_hw_t
*
i2c_get_hw
(
i2c_inst_t
*
i2c
)
{
i2c.h:218
i2c_get_hw()
i2c_hw_t
*
hw
=
i2c_get_hw
(
i2c
)
;
i2c.h:403
i2c_read_byte_raw()
i2c_hw_t
*
hw
=
i2c_get_hw
(
i2c
)
;
i2c.h:418
i2c_write_byte_raw()
i2c_hw_t
*
hw
=
i2c_get_hw
(
i2c
)
;
i2c_slave.c:22
i2c_slave_irq_handler()
i2c_hw_t
*
hw
=
i2c_get_hw
(
i2c
)
;
i2c_slave.c:69
i2c_slave_init()
i2c_hw_t
*
hw
=
i2c_get_hw
(
i2c
)
;
i2c_slave.c:95
i2c_slave_deinit()
Call Tree
from
examples
All items filtered out
All items filtered out
Data Use
from
examples
All items filtered out
All items filtered out
Class Tree
from
examples
All items filtered out
All items filtered out
Override Tree
from
examples
All items filtered out
All items filtered out
Implementations
from
examples
All items filtered out
All items filtered out
Instances
from
examples
Instance
Scope
Location
Project
i2c_inst::hw
i2c_inst
i2c.h:152
return
i2c_get_hw()
i2c.h:218
Lifecycle
from
examples
All items filtered out
All items filtered out