Change voltage on UART, SPI, GPIO

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Change voltage on UART, SPI, GPIO

跳至解决方案
2,051 次查看
rajtantajtan
Contributor I

Hi

According to i.MX28 Applications Processor Reference Manual it is possible to change voltage on GPIO to 1.8V or 3.3V.

Does this mean that it is possible to change voltage on UART and SPI also or is it just when those pins are configured as GPIO?

Where and how do I configure the mux registers when I'm building the whole thing with Yocto?

标签 (2)
0 项奖励
回复
1 解答
1,600 次查看
AnsonHuang
NXP Employee
NXP Employee

Hi, Rajtantajtan

     Based on my understanding, the voltage setting should be functioning for all pins except EMI pins, no matter what mux mode you set for this pin. As we can see that for SDHC or SPI, we set pins' voltage to 3V3. So you can do some measurement to confirm it, this is only my understanding, the pin's voltage setting is not just for GPIO. But for some modules that can NOT work at 3V3, we should be careful. The reset value of the pin already make it work at proper voltage, some pins are 1.8V, some are 3.3V, so before you change it, please make sure the devices connected in these pins can work at 3V3.

     To change a mux, please modify below file: arch/arm/mach-mx28/mx28evk_pins.c the structure in this file will set the pin's mux and voltage and drive strength etc.. Such as SPI:

1077         {

1078          .name  = "SSP2 MOSI",

1079          .id    = PINID_SSP2_MOSI,

1080          .fun   = PIN_FUN1,

1081          .strength      = PAD_4MA,

1082          .voltage       = PAD_3_3V,

1083          .drive         = 1,

1084          },

在原帖中查看解决方案

0 项奖励
回复
1 回复
1,601 次查看
AnsonHuang
NXP Employee
NXP Employee

Hi, Rajtantajtan

     Based on my understanding, the voltage setting should be functioning for all pins except EMI pins, no matter what mux mode you set for this pin. As we can see that for SDHC or SPI, we set pins' voltage to 3V3. So you can do some measurement to confirm it, this is only my understanding, the pin's voltage setting is not just for GPIO. But for some modules that can NOT work at 3V3, we should be careful. The reset value of the pin already make it work at proper voltage, some pins are 1.8V, some are 3.3V, so before you change it, please make sure the devices connected in these pins can work at 3V3.

     To change a mux, please modify below file: arch/arm/mach-mx28/mx28evk_pins.c the structure in this file will set the pin's mux and voltage and drive strength etc.. Such as SPI:

1077         {

1078          .name  = "SSP2 MOSI",

1079          .id    = PINID_SSP2_MOSI,

1080          .fun   = PIN_FUN1,

1081          .strength      = PAD_4MA,

1082          .voltage       = PAD_3_3V,

1083          .drive         = 1,

1084          },

0 项奖励
回复