mirror of
https://gitee.com/seekfree/TC264_Library.git
synced 2026-06-04 03:32:56 +00:00
V3.2.8
新增凌瞳无MCU版本驱动
新增SBUS遥控器底层驱动
This commit is contained in:
@@ -404,6 +404,55 @@ void uart_rx_interrupt (uart_index_enum uart_n, uint32 status)
|
||||
}
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> sbus<75><73>ʼ<EFBFBD><CABC>
|
||||
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> uartn <20><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>(UART_0,UART_1,UART_2,UART_3)
|
||||
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> baud <20><><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> tx_pin <20><><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> rx_pin <20><><EFBFBD>ڽ<EFBFBD><DABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ź<EFBFBD>
|
||||
// <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD> void
|
||||
// ʹ<><CAB9>ʾ<EFBFBD><CABE> uart_sbus_init(UART_2, 100000, UART2_TX_P10_5, UART2_RX_P10_6);
|
||||
// <20><>ע<EFBFBD><D7A2>Ϣ
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
void uart_sbus_init (uart_index_enum uartn, uint32 baud, uart_tx_pin_enum tx_pin, uart_rx_pin_enum rx_pin)
|
||||
{
|
||||
|
||||
boolean interrupt_state = disableInterrupts();
|
||||
|
||||
volatile Ifx_ASCLIN *moudle = IfxAsclin_getAddress((IfxAsclin_Index)uartn);
|
||||
|
||||
IfxAsclin_Asc_initModuleConfig(&uart_config, moudle); // <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ýṹ<C3BD><E1B9B9>
|
||||
|
||||
uart_set_buffer(uartn); // <20><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
uart_set_interrupt_priority(uartn); // <20><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
||||
|
||||
uart_config.clockSource = IfxAsclin_ClockSource_ascFastClock; // ʹ<>ø<EFBFBD><C3B8><EFBFBD>ʱ<EFBFBD><CAB1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>6.25M
|
||||
uart_config.baudrate.prescaler = 4;
|
||||
uart_config.baudrate.baudrate = (float32)baud;
|
||||
uart_config.baudrate.oversampling = IfxAsclin_OversamplingFactor_8;
|
||||
|
||||
uart_config.frame.stopBit = IfxAsclin_StopBit_2; //ֹͣλ
|
||||
uart_config.frame.parityType = IfxAsclin_ParityType_even; //żУ<C5BC><D0A3>
|
||||
uart_config.frame.dataLength = IfxAsclin_DataLength_8;
|
||||
uart_config.frame.parityBit = TRUE; //<2F><><EFBFBD><EFBFBD>У<EFBFBD><D0A3>
|
||||
|
||||
IfxAsclin_Asc_Pins pins; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
pins.cts = NULL;
|
||||
pins.rts = NULL;
|
||||
uart_mux(uartn, tx_pin, rx_pin, (uint32 *)&pins.tx, (uint32 *)&pins.rx);
|
||||
pins.rxMode = IfxPort_InputMode_pullUp;
|
||||
pins.txMode = IfxPort_OutputMode_pushPull;
|
||||
pins.pinDriver = IfxPort_PadDriver_cmosAutomotiveSpeed1;
|
||||
uart_config.pins = &pins;
|
||||
|
||||
IfxAsclin_Asc_initModule(uart_get_handle(uartn), &uart_config);
|
||||
uart_rx_interrupt(uartn, 1);
|
||||
uart_tx_interrupt(uartn, 0);
|
||||
restoreInterrupts(interrupt_state);
|
||||
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ڳ<EFBFBD>ʼ<EFBFBD><CABC>
|
||||
// <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5> uartn <20><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD>(UART_0,UART_1,UART_2,UART_3)
|
||||
|
||||
@@ -125,6 +125,7 @@ uint8 uart_query_byte (uart_index_enum uartn, uint8 *dat);
|
||||
void uart_tx_interrupt (uart_index_enum uartn, uint32 status);
|
||||
void uart_rx_interrupt (uart_index_enum uartn, uint32 status);
|
||||
|
||||
void uart_sbus_init (uart_index_enum uartn, uint32 baud, uart_tx_pin_enum tx_pin, uart_rx_pin_enum rx_pin);
|
||||
void uart_init (uart_index_enum uartn, uint32 baud, uart_tx_pin_enum tx_pin, uart_rx_pin_enum rx_pin);
|
||||
//====================================================<3D><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>====================================================
|
||||
|
||||
|
||||
Reference in New Issue
Block a user