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.

[参考译文] EK-TM4C123GXL:UART0可以回波到 Tera Term、其他 UART CAN#39;t

Guru**** 2484615 points
Other Parts Discussed in Thread: EK-TM4C123GXL

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/732909/ek-tm4c123gxl-uart0-can-echo-to-tera-term-other-uart-can-t

器件型号:EK-TM4C123GXL

为了测试我想打印到 Tera Term 的 UART 设置、如果我使用 UART0 (很明显在端口 A 的引脚0和1上)、它将起作用、但如果我将代码更改为 UART4、 并更改掩码值和寄存器、使其端口 C 的引脚4和5字符不会打印到 Tera Term。 我已包含我的代码、我是否缺少某些内容?

int main (空)


UARTM();
// UARTJ();
字符 c;
while (1){
C = ReadChar();
WriteChar (c);


字符读取字符(空)

字符 c;
while ((UART4_FR & 0x10)== 0x10){};
C = UART4_DR;
返回 c;

空 WriteChar (char c)

while ((UART4_FR & 0x20)== 0x20){};
UART4_DR = c;


空 UARTJ (空)

SYSCTL_RCGUART |= 1;
while ((SYSCTL_PRUART & 1)!= 1);

UART0_CTL &=~0x21;
UART0_IBRD = 17;
UART0_FBRD = 23;
UART0_LCRH &=~0xE;
UART0_LCRH |= 0x60;
UART0_CTL |= 0x301;

SYSCTL_RCGCGPIO |= 1;
while ((SYSCTL_PRGPIO & 1)!= 1);

GPIOA_DIR &=~0x1;
GPIOA_PUR |= 0x1;
GPIOA_DIR |= 0x2;
GPIOA_DEN |= 0x3;
GPIOA_AFSEL |= 0x3;
GPIOA_PCTL &=~0xFF;
GPIOA_PCTL |= 0x11;

void UARTM (void)

SYSCTL_RCGUART |= 0x10;
while ((SYSCTL_PRUART & 0x10)!= 0x10);

UART4_CTL &=~21;
UART4_IBRD = 17;
UART4_FBRD = 23;
UART4_LCRH &&~0xE;//57600波特率、8个数据位、无奇偶校验、1个停止位、 16位预分频器
UART4_LCRH |= 0x60;
UART4_CTL |= 0x301;

SYSCTL_RCGCGPIO |= 0x4;
while ((SYSCTL_PRGPIO & 0x4)!= 0x4);

GPIOC_DIR &=~ 0x10;
GPIOC_PUR |= 0x10;
GPIOC_DIR |= 0x20;
GPIOC_DEN |= 0x30;
GPIOC_AFSEL |= 0x30;
GPIOC_PCTL &=~0x0000;
GPIOC_PCTL |= 0x110000;

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

     在 EK-TM4C123GXL LaunchPad 上、只有 UART0连接到 PC 以进行虚拟 COM 端口枚举。 有关详细信息、请参阅 EK-TM4C123GXL 用户指南。 以下是摘录。 如果您要使用其他用于虚拟 COM 端口的 UARTx、则需要具有单独的 USB 转串行适配器。