κ°λ°ν λ λ΄κ° μ§ νλ‘κ·Έλ¨μ΄ μ μμ μΌλ‘ λκ³ μλμ§, λ³μλ€μ΄λ μ λ ₯λ μΌμ κ°λ€μ΄ μ μμ μΌλ‘ λ€μ΄μλμ§ νμΈμ ν΄μΌ νμ¬ λ³΄μ΄λ λμμ΄λ μ¦μμ λν΄μ μ΄ν΄ν μ μμ λκ° λ§λ€. κ·Έλμ λ¬΄λ£ νλ‘κ·Έλ¨μΈ ν λΌν μΌλ‘ λ°μ΄ν°λ₯Ό λ³Ό μ μκ² μ°κ²°νλ λ°©λ²μ μλμ μ 리νμλ€.
μ¬μ©ν 보λλ μ±ν¬μμ€μ SMC250 보λμ TMS320F28377D λͺ¨λμ νμ©νμλ€. κΈ°λ³Έ UART μμ λ C2000Ware 4.02.00.00μ μλ sciμ μμ½λ°± μμ€λ₯Ό μ¬μ©νμλ€.
[stm32f407] USART - 1.2 μ΄κ°λ¨ printf λ§λ€κΈ° : λ€μ΄λ² μΉ΄ν (naver.com)
[stm32f407] USART - 1.2 μ΄κ°λ¨ printf λ§λ€κΈ°
μ€λμ μ΄κ°λ¨ printf λ§λλλ²μ μ μ΄λ³΄λ €κ³ ν©λλ€.λ³΄ν΅ λλ²κΉ νλ©΄ Visual studio μμλ κ·Έλ₯ printfλ₯Ό μ°μΌλ©΄ λμ§λ§ νμ¨μ΄μμλ νμΈνλ λ°©λ²μ΄ μμ£ ....
cafe.naver.com
μ μ½λλ₯Ό κ°μ Έμμ TIκΊΌμ λ§κ² μμ νμλ€. μ μ½λλ STμ HALμ μ΄μ©νλ€κ³ νλ€.
μλμλ μ μ½λλ₯Ό κ°μ Έλ€κ° μμ ν μ½λμ΄λ€.
int dbg_printf(const char *pstr, ...)
{
va_list args;
int byte_n = 0;
volatile unsigned char sprint_buf[256];
unsigned int cnt = 0;
va_start(args, pstr);
byte_n = vsprintf((char *)sprint_buf, (const char *)pstr, args);
while(sprint_buf[cnt] != 0)
{
if(SCI_getTxFIFOStatus(SCIC_BASE) != SCI_FIFO_TX16)
{
HWREGH(SCIC_BASE + SCI_O_TXBUF) = sprint_buf[cnt++];
}
}
va_end(args);
return byte_n;
}
"(USART1->SR & USART_SR_TXE) != RESET" λΆλΆμ "SCI_getTxFIFOStatus(SCIC_BASE) != SCI_FIFO_TX16"μΌλ‘ μμ νμλ€. μν λ μ§μ€ν°μ TX(μ μ‘) λ²νΌκ° λΉμ΄μλμ§ νμΈνλ 쑰건μ΄λ€. TXλ²νΌκ° λΉμ΄ μλ€λ©΄ μν κ°μ '1'μ΄ λλλ°, μ΄λ IFλ¬Έ μμ λ΄μ©μ μ€ννλ€.
IFλ¬Έ μμλ "USART->DR = sprint_buf[cnt++];" μ΄ λΆλΆμ "HWREGH(SCIC_BASE + SCI_0_TXBUF) = sprint_buf[cnt++];"μΌλ‘ μμ νμλ€. λ°μ΄ν° λ μ§μ€ν°μ μ μ‘ν λ°μ΄ν°λ₯Ό μ¨μ£Όλ λ΄μ©μ΄λ€.
μ΄μ 루νμμ κ°μ μ¨λ³΄κ² λ€. 500ms λ§λ€ printfλ₯Ό μ°μ κ²μ΄λ€.
dbg_printf("\r\n loopcount : %d, %s \0", loopCounter, "test");
DEVICE_DELAY_US(500000);
loopCounter++
μ½μμ°½μ΄ μ λμ€λ κ²μ λ³Ό μ μλ€.
'Embedded HW & FW > TI (C2000...)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[TI] TMS320F28069 λ‘ SPI EEPROM μ°κ³ μ½κΈ° (0) | 2023.02.24 |
---|---|
[TI] SCI (UART) μΈλΆν΄λ μ¬μ©μ BAUD RATE μΈν (1) | 2023.02.24 |
[TI][CCS] νλ‘κ·Έλ¨ λ€μ΄λ‘λ λ°©λ² (0) | 2023.02.02 |
[TI] λ μ§μ€ν° μ κ·Όμ μ£Όμμ¬ν (0) | 2023.01.25 |
[TI][CCS] κΈ°μ‘΄ νλ‘μ νΈ νμΌ κ°μ Έμμ μ΄μλλ° (0) | 2023.01.19 |
μ΅κ·ΌλκΈ