0
我需要使用LPC1769將某些數據發送到帶SPI的FPGA。不過,我不太明白我應該如何處理這個問題。我目前有這個代碼,最終在硬故障處理程序。我不允許使用CMSIS,所以我必須自己定義寄存器。LPC1769上的SPI外設
void sendData(uint8_t *buf, uint32_t Length) {
uint32_t i;
for (i = 0; i < Length; i++) {
while (S0SPSR != (1 << 7)) {
S0SPDR = *buf;
gpio0WritePin(15, 1);
gpio0WritePin(15, 0);
buf++;
}
}
return;
}
,我的主要功能:
uint8_t TX[16];
int main(void) {
SpiInit();
TX[0] = 0x48;
TX[1] = 0x65;
TX[2] = 0x6c;
TX[3] = 0x6c;
TX[4] = 0x6f;
while (1) {
SPI_Begin();
sendData((uint8_t*)TX, 5);
SPI_End();
}
}
問題可能在任何地方,特別是在此處未顯示的代碼中。你將需要調試它。檢查你的故障狀態寄存器並追蹤它。 –
如果我將buf中的指針更改爲標準數組,它將不再以硬故障處理程序結束 – Arrrow