你好,
请问C6747使用CSL函数库怎么使能uart发送和接收(PWREMU_MGMT寄存器中),我在uart.c文件中没有找到。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
你好,
请问C6747使用CSL函数库怎么使能uart发送和接收(PWREMU_MGMT寄存器中),我在uart.c文件中没有找到。
//设置帧格式
UARTLineCharacConfig(CSL_UART_0_REGS, (UART_FRAME_WORD_LENGTH_8 | UART_FRAME_NUM_STB_1), UART_PARITY_NONE);(pdk里的)
这个不是基于函数的吗?
// Select 8 Bit Word Length
CSL_FINST(uart2Regs->LCR, UART_LCR_WLS, 8BITS);(quickStartOMAPL1x_rCSL里的)
这个是基于寄存器的。
是我理解错了吗?
感谢您的回复
他们都是基于寄存器的,只不过pdk里又对关于寄存器的操作做了一个封装,更高一个层次。这样理解对吗?
只是感觉pdk里的用起来比较方便,但是又感觉它的功能不全。
非常感谢您的回复
我想用pdk进行uart编程,但是在里面没有找到关于禁止使能FIFO和使能发送和接收功能的函数(其他配置好后,FIFO默认使能,接收和发送被禁止使能),我应该怎么办呢?
不好意思,要更正一下,你之前的理解是对的,这些是API函数。我下了最新的processor SDK,看到最新版本的csl是有库的,跟老版本的rcsl不同。
可以用UART_pwremuConfig_v0函数去设置,这个API函数原型在pdk_omapl13x_1_0_0\packages\ti\csl\src\ip\uart\V0\priv。
uint32_t UART_pwremuConfig_v0(uint32_t baseAdd,
uint32_t pwremuConfig)
{
uint32_t temp_addr = 0;
temp_addr = baseAdd + CSL_UART_PWREMU_MGMT;
HWREG(temp_addr) = pwremuConfig;
return pwremuConfig;
}
非常感谢您的回复,敬重您认真负责的态度。
我还有一个疑问,pdk_omapl13x_1_0_0\packages\ti\csl\src\ip\XXX\目录下,有V0,v1,有的还有v2,v3,他们有什么区别,我应该怎么确定我应该使用哪一个呢?