请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430FR4133 你好。
我正在 使用 SPI 测试 MSP430FR4133芯片。
时钟频率 MCLK 和 SMCLK 为8MHz、ACLK 为32.768KHz (全部经过测试)
SPI init code is below; GPIO_setAsPeripheralModuleFunctionInputPin( GPIO_PORT_P1, GPIO_PIN0 + GPIO_PIN1 + GPIO_PIN2, GPIO_PRIMARY_MODULE_FUNCTION ); //Initialize Master EUSCI_A_SPI_initMasterParam param = {0}; param.selectClockSource = EUSCI_A_SPI_CLOCKSOURCE_SMCLK; param.clockSourceFrequency = 8000000; param.desiredSpiClock = param.clockSourceFrequency / 4; param.msbFirst = EUSCI_A_SPI_MSB_FIRST; param.clockPhase = EUSCI_A_SPI_PHASE_DATA_CAPTURED_ONFIRST_CHANGED_ON_NEXT; param.clockPolarity = EUSCI_A_SPI_CLOCKPOLARITY_INACTIVITY_HIGH; param.spiMode = EUSCI_A_SPI_3PIN; EUSCI_A_SPI_initMaster(EUSCI_A0_BASE, ¶m); //Enable SPI module EUSCI_A_SPI_enable(EUSCI_A0_BASE); and code in main is; for(;;) { while (!EUSCI_A_SPI_getInterruptStatus(EUSCI_A0_BASE, EUSCI_A_SPI_TRANSMIT_INTERRUPT)); EUSCI_A_SPI_transmitData(EUSCI_A0_BASE, 0xAA); _delay_cycles(8000000); //1 sec interval }
在这种情况下、SPI 工作正常(我使用逻辑分析仪测量了 SCK 和 MOSI 线路)
但是、当我更改下面的代码时;
param.clockPolarity = EUSCI_A_SPI_CLOCKPOLARITY_INACT_LOW;
SCK 和 MOSI 上没有任何信号...
MSP430FR4133存在错误? 为什么 SPI 不能与时钟极性0配合使用?