次のピンの IOCON 設定を変更しようとすると、エラーが発生します。
以下に、エラーを生成するコードの一部、または場合によってはスタックする部分を示します。
void main(void) {
uint32_t regValue;
/* Init board hardware. */
BOARD_InitBootPins();
BOARD_InitBootClocks();
BOARD_InitBootPeripherals();
#ifndef BOARD_INIT_DEBUG_CONSOLE_PERIPHERAL
/* Init FSL debug console. */
BOARD_InitDebugConsole();
#endif
IOCON->PIO[0][23] = 256;
IOCON->PIO[0][24] = 256;
IOCON->PIO[0][25] = 256;
IOCON->PIO[0][26] = 256;
IOCON->PIO[0][27] = 256;
IOCON->PIO[0][28] = 256;
gpio_pin_config_t DUT_SYNCDAC_config = {
.pinDirection = kGPIO_DigitalOutput,
.outputLogic = 0U
};
/* Initialize GPIO functionality on pin PIO0_28 (pin M9) */
GPIO_PinInit(GPIO, 0U , 28U, &DUT_SYNCDAC_config);このエラーは表示されず、[Link Applciation to RAM] を選択し、デバッグ モードでコードを実行すると、すべての FW が機能します。なぜでしょうか。
解決!このように!
プレーンロードイメージは、外部フラッシュを解放するソリューションです。
Hi,
答えをありがとう、私はすでにLPC54S018のアーキテクチャを知っています。しかし、それでも私には不思議です。
フラッシュはバイナリFWを格納するために使用されますが、MCUの起動時にバイナリをMCU RAMにロードし、ブートの最後にマイクロコントローラがフラッシュを解放する必要があります
私は間違っていますか?
ご回答をよろしくお願い申し上げます。
Hi,
これがspifiフラッシュハードウェア回路です。
P0_23、P0_24、P0_25、P0_26、P0_27、P0_28ピンがSPIFIモジュールピンとして機能していることがわかりますが、LPC54018にはオンチップフラッシュがなく、命令ごとに上記のピンを介してSPIFIフラッシュからコードを読み込んで実行します。GPIOなどで上記のピンを構成すると、spifiフラッシュから読み取られるバイナリコードが正しくなく、間違ったバイナリコードが実行されると、ハードウェア障害が発生します。
結論として、アプリケーションコードでP0_23、P0_24、P0_25、P0_26、P0_27、P0_28ピンを構成することはできません。
それがあなたを助けることができることを願っています
BR
シャンジュン・ロン