/******************************************************************************* * @note Copyright (C) 2023 Shanghai Panchip Microelectronics Co., Ltd. All rights reserved. * * @file pan_port.c * @brief * * @history - V0.8, 2024-4 *******************************************************************************/ #include "pan_port.h" #include "mk_spi.h" #include "lora_1268.h" extern uint8_t spi_tx_rx(uint8_t tx_data); rf_port_t rf_port= { .antenna_init = rf_antenna_init, .tcxo_init = rf_tcxo_init, .set_tx = rf_antenna_tx, .set_rx = rf_antenna_rx, .antenna_close = rf_antenna_close, .tcxo_close = rf_tcxo_close, .spi_readwrite = spi_readwritebyte, .spi_cs_high = spi_cs_set_high, .spi_cs_low = spi_cs_set_low, .delayms = rf_delay_ms, .delayus = rf_delay_us, }; //void spi_transfer_callback(void *dev, uint32_t err_code) //{ //} static void spi_receive_callback(void *dev, uint32_t err_code) { } /** * @brief spi_readwritebyte * @param[in] spi readwritebyte value * @return result */ //uint8_t spi_readwritebyte(uint8_t tx_data) //{ // uint8_t rx_data[10] = {0,}; // ÓÃÓÚ´æ´¢½ÓÊÕµÄÊý¾Ý //// while (spi_is_busy(SPI_ID0)) //// { //// } // spi_transfer(SPI_ID0, &tx_data, rx_data, 1, spi_transfer_callback); //// spi_transfer(SPI_ID0, 0x09, rx_buf, 1, spi_transfer_callback); //// spi_receive(SPI_ID0, rx_data, 1,spi_receive_callback); //// while (Reset == SPI_GetFlag(SPI_ID0, SpiFlagReceiveBufferFull)) //// { //// } // return rx_data[0]; // ·µ»Ø½ÓÊÕµ½µÄÊý¾Ý //} /** * @brief spi_cs_set_high * @param[in] * @return none */ void spi_cs_set_high(void) { // PORT_SetBits(PortA, Pin04); gpio_pin_set(LORA_CS); // gpio_pin_set(LORA_CS2); } /** * @brief spi_cs_set_low * @param[in] * @return none */ void spi_cs_set_low(void) { // PORT_ResetBits(PortA, Pin04); gpio_pin_clr(LORA_CS); // gpio_pin_clr(LORA_CS2); } /** * @brief rf_delay_ms * @param[in]