Thread 中讨论的其他器件:TRF7970A
工具与软件:
您好!
我正在使用 stm32l0开发 RFID 读取器 TRF7970a 芯片、我现在遇到的问题是我好像初始化芯片有误、因此不会发出射频场。 首先、电源状态良好、因为绿色 LED 亮起、通过 SPI 在 STM32和 trf 之间进行通信的情况良好、因为我可以写入寄存器、然后读取它、所有这些都匹配。 问题是、代码开始工作前一周、我可以在示波器上看到射频场、但现在没有变化、但不会发出射频场...
如果有任何帮助、将不胜感激。
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART2_UART_Init();
MX_TIM22_Init();
/* USER CODE BEGIN 2 */
SLAVE_SELECT_LOW;
HAL_Delay(2);
SLAVE_SELECT_HIGH;
// Wait until TRF system clock started
// HAL_Delay(5);
//set the enable Pin high
TRF_DISABLE;
HAL_Delay(4);
TRF_ENABLE;
// Set up TRF initial settings
TRF79xxA_initialSettings();
TRF79xxA_setTrfPowerSetting(TRF79xxA_3V_FULL_POWER);
// Initialize all enabled technology layers
NFC_init();
// TRF79xxA_writeRegister(0x00, 0x20);
log_message("Chip Status control register ");
log_byteAsBits(TRF79xxA_readRegister(0x00));
log_message("\r\n");
// test_NFRFID_SPI_Communication();
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
TRF79xxA_turnRfOn();
//
log_message("Chip Status control register ");
log_byteAsBits(TRF79xxA_readRegister(0x00));
log_message("\r\n");
log_message("IRQ register ");
log_byteAsBits(TRF79xxA_readRegister(TRF79XXA_IRQ_STATUS));
log_message("\r\n");
log_message("RSSI levels register ");
log_byteAsBits(TRF79xxA_readRegister(TRF79XXA_RSSI_LEVELS));
log_message("\r\n");
// IRQ_ON;
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
NFC_findTag();
// HAL_Delay(1000);
}
/* USER CODE END 3 */
}
