添加一些gpio_mtx注释
This commit is contained in:
@@ -153,6 +153,9 @@ uint8_t gpio_pin_func_get(uint32_t gpio)
|
||||
return 0;
|
||||
}
|
||||
|
||||
// 配置gpio输入的时候如果有gpio的func选通了这个外设,则这个外设可以选择接收mtx的信号还是gpio的信号
|
||||
// 指定外设输入连接的通路,0通过矩阵连接,1直连到gpio,对于有func的那一路起作用
|
||||
// offset要操作的寄存器偏移地址 val值
|
||||
void IRAM_ATTR gpio_mtx_sig_in_set_core(uint32_t offset, uint32_t val)
|
||||
{
|
||||
uint32_t tmp;
|
||||
@@ -163,6 +166,7 @@ void IRAM_ATTR gpio_mtx_sig_in_set_core(uint32_t offset, uint32_t val)
|
||||
GPIO_MTX_WRITE_REG(offset, tmp);
|
||||
}
|
||||
|
||||
// mtx sig信号到外设的输入源,0通过mtx进来,1常为0,2常为1,3通过mtx反向
|
||||
void IRAM_ATTR gpio_mtx_sig_in_set_def(uint32_t offset, uint32_t val)
|
||||
{
|
||||
uint32_t tmp;
|
||||
@@ -171,6 +175,7 @@ void IRAM_ATTR gpio_mtx_sig_in_set_def(uint32_t offset, uint32_t val)
|
||||
GPIO_MTX_WRITE_REG(offset, tmp);
|
||||
}
|
||||
|
||||
// mtx 信号来自哪个gpio,val gpio序号
|
||||
void IRAM_ATTR gpio_mtx_sig_in_set_gpio(uint32_t offset, uint32_t val)
|
||||
{
|
||||
uint32_t tmp;
|
||||
@@ -180,6 +185,7 @@ void IRAM_ATTR gpio_mtx_sig_in_set_gpio(uint32_t offset, uint32_t val)
|
||||
GPIO_MTX_WRITE_REG(offset, tmp);
|
||||
}
|
||||
|
||||
// 找到指定信号连接的gpio序号
|
||||
uint8_t IRAM_ATTR gpio_mtx_sig_in_get_gpio(uint8_t sig_id)
|
||||
{
|
||||
uint32_t sig_addr;
|
||||
@@ -190,6 +196,8 @@ uint8_t IRAM_ATTR gpio_mtx_sig_in_get_gpio(uint8_t sig_id)
|
||||
return (uint8_t)REG_FIELD_GET(SIG_IN_GPIO_SEL, rd_gpio);
|
||||
}
|
||||
|
||||
// 指定gpio输出到哪个mtx sig上,为255时使用gpio软控
|
||||
// offset 寄存器偏移地址, val mtx sig信号id
|
||||
void IRAM_ATTR gpio_mtx_sig_out_set_sel(uint32_t offset, uint32_t val)
|
||||
{
|
||||
uint32_t tmp;
|
||||
@@ -198,6 +206,7 @@ void IRAM_ATTR gpio_mtx_sig_out_set_sel(uint32_t offset, uint32_t val)
|
||||
GPIO_MTX_WRITE_REG(offset, tmp);
|
||||
}
|
||||
|
||||
// 为mtx sig id绑定gpio,输入是sig绑定gpio,输出是gpio绑sig
|
||||
void IRAM_ATTR gpio_mtx_sig_in(uint8_t id, uint8_t gpio, uint32_t mode)
|
||||
{
|
||||
uint32_t offset;
|
||||
@@ -226,6 +235,8 @@ void IRAM_ATTR gpio_mtx_sig_in_default(uint8_t id)
|
||||
gpio_mtx_sig_in_set_def(offset, 2);
|
||||
}
|
||||
|
||||
// 外设要通过mtx输出信号到gpio,gpio的func必须设置为0,并且id不为255
|
||||
// 如果id为255,则连接到gpio控制
|
||||
void IRAM_ATTR gpio_mtx_sig_out(uint8_t id, uint8_t gpio)
|
||||
{
|
||||
uint32_t offset;
|
||||
@@ -257,7 +268,8 @@ void gpio_module_pin_select(gpio_sig_info_t *info)
|
||||
}
|
||||
}
|
||||
|
||||
void gpio_module_sig_select(gpio_sig_info_t *info, uint32_t mode)
|
||||
// 选择gpio到外设的信号通路,mode为0时通过func连接,mode为1时通过mtx连接
|
||||
void gpio_module_sig_select(gpio_sig_info_t* info, uint32_t mode)
|
||||
{
|
||||
int i = 0;
|
||||
uint8_t gpio = 0;
|
||||
|
Reference in New Issue
Block a user