LPC55S26 PIO0_5 FC4_RXD use, ISP disable

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

LPC55S26 PIO0_5 FC4_RXD use, ISP disable

ソリューションへジャンプ
945件の閲覧回数
alfredocyberhom
Contributor I

Hello, I'm working with a LPC55S26. I use the PIO0_5 pin as a UART4 receiver (FC4_RXD). The problem is that if this pin is low during reset (receiving data) it jumps to the ISP and my program doesn't start. Is there a way to disable the ISP function and make the pin work only as a UART4 receiver? I tried to write 0x70 in BOOT_CFG (0x9E400) but this didn't work.

0 件の賞賛
返信
1 解決策
840件の閲覧回数
Harry_Zhang
NXP Employee
NXP Employee

Hi @alfredocyberhom 

The problem arises because the boot mode selection (via PIO0_5 pin) takes precedence during reset, which causes the processor to jump to the ISP if the pin is low.

To work around this issue, you can prevent the processor from entering the ISP mode by ensuring the state of PIO0_5 is high during reset. Since PIO0_5 is being used as a UART4 receiver (FC4_RXD), you have a couple of options:
You can add an external pull-up resistor (e.g., 10kΩ to 3.3V) to the PIO0_5 pin. This will ensure that PIO0_5 is high during reset, preventing the processor from entering ISP mode.

BR

Hang

元の投稿で解決策を見る

4 返答(返信)
909件の閲覧回数
Harry_Zhang
NXP Employee
NXP Employee

Hi @alfredocyberhom 

Can you try to read the CMPA, Check if the writing is successful.

HangZhang_0-1727333121721.pngHangZhang_1-1727333188405.png

BR

Hang

0 件の賞賛
返信
884件の閲覧回数
alfredocyberhom
Contributor I
I prepared the program image for the Cyclone (from PEMicro), setting bits 4-6 of BOOT_CFG (0x9E400) to one (0x70). I power up my board with PIO0_5 low and it hangs, it doesn't start. I connect in debugging with MultilinkUniversal (PEMicro) and verify that position 0x9E400 is set to 0x70. From what I understand from the LPC55S26 manual, during reset the CPU looks at pin PIO0_5 first of all, it would give the impression that if it is low it always enters ISP mode regardless of the bits in BOOT_CFG, but it is also strange that if so I don't find any sense in that PIO0_5 can be configured as UART reception.
0 件の賞賛
返信
841件の閲覧回数
Harry_Zhang
NXP Employee
NXP Employee

Hi @alfredocyberhom 

The problem arises because the boot mode selection (via PIO0_5 pin) takes precedence during reset, which causes the processor to jump to the ISP if the pin is low.

To work around this issue, you can prevent the processor from entering the ISP mode by ensuring the state of PIO0_5 is high during reset. Since PIO0_5 is being used as a UART4 receiver (FC4_RXD), you have a couple of options:
You can add an external pull-up resistor (e.g., 10kΩ to 3.3V) to the PIO0_5 pin. This will ensure that PIO0_5 is high during reset, preventing the processor from entering ISP mode.

BR

Hang

897件の閲覧回数
alfredocyberhom
Contributor I

I prepared the program image for the Cyclone (from PEMicro), setting bits 4-6 of BOOT_CFG (0x9E400) to one (0x70). I power up my board with PIO0_5 low and it hangs, it doesn't start. I connect in debugging with MultilinkUniversal (PEMicro) and verify that position 0x9E400 is set to 0x70. From what I understand from the LPC55S26 manual, during reset the CPU looks at pin PIO0_5 first of all, it would give the impression that if it is low it always enters ISP mode regardless of the bits in BOOT_CFG, but it is also strange that if so I don't find any sense in that PIO0_5 can be configured as UART reception.

0 件の賞賛
返信