迪文科技论坛

 找回密码
 立即注册
搜索
查看: 384|回复: 1

【提问】T5L屏 UART4串口发送数据不正确

[复制链接]

1

主题

1

回帖

56

积分

注册会员

Rank: 2

积分
56
发表于 2023-1-30 17:12:55 | 显示全部楼层 |阅读模式
本帖最后由 panda1985 于 2023-1-30 18:17 编辑
  1. void BSP_UART4_Init(void)           //8N1 9600
  2. {
  3.     uint32_t tmp;

  4.     tmp = 8 * 9600;
  5.     tmp = FOSC / tmp;
  6.     BODE2_DIV_H = (uint8_t)(tmp >> 8);
  7.     BODE2_DIV_L = (uint8_t)tmp;
  8.     SCON2T = 0X80;
  9.     SCON2R = 0X80;
  10.     ES2R = 1;
  11.     ES2T = 1;

  12.     //IEN1 |= 0X0C;

  13.     Uart_Struct.tx_head = 0;
  14.     Uart_Struct.tx_tail = 0;
  15.     Uart_Struct.rx_head = 0;
  16.     Uart_Struct.rx_tail = 0;
  17.     Uart_Struct.tx_flag = 0;

  18. }
复制代码
  1. void Uart_Send_Data(uint16_t len, const uint8_t *buf)
  2. {
  3.     uint16_t i;

  4.     EA = 0;

  5.     Uart_Struct.tx_head = 0;
  6.     Uart_Struct.tx_tail = 0;
  7.     Uart_Struct.rx_head = 0;
  8.     Uart_Struct.rx_tail = 0;
  9.     Uart_Struct.tx_flag = 0;

  10.     for(i = 0; i < len; i++)
  11.     {
  12.         Uart_Struct.tx_buf[Uart_Struct.tx_head] = *buf++;
  13.         Uart_Struct.tx_head++;
  14.         Uart_Struct.tx_head &= SERIAL_COUNT;
  15.     }

  16.     if(Uart_Struct.tx_flag == 0)
  17.     {

  18.         Uart_Struct.tx_flag = 1;
  19.         SBUF2_TX = 'a';//Uart_Struct.tx_buf[Uart_Struct.tx_tail];
  20.         Uart_Struct.tx_tail++;
  21.         Uart_Struct.tx_tail &= SERIAL_COUNT;
  22.     }

  23.     EA = 1;
  24. }
复制代码
  1. void BSP_UART4_TX_ISR() interrupt 10
  2. {
  3.     EA = 0;
  4.     SCON2T &= 0XFE;

  5.     if(Uart_Struct.tx_head != Uart_Struct.tx_tail)
  6.     {
  7.         SBUF2_TX = 'b';//Uart_Struct.tx_buf[Uart_Struct.tx_tail];
  8.         Uart_Struct.tx_tail++;
  9.         Uart_Struct.tx_tail &= SERIAL_COUNT;
  10.     }
  11.     else
  12.     {
  13.         Uart_Struct.tx_flag = 0;
  14.         Uart_Struct.tx_head = 0;
  15.         Uart_Struct.tx_tail = 0;
  16.     }

  17.     EA = 1;
  18. }
复制代码
  1. [16:47:10.880]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  2. [16:47:11.349]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  3. [16:47:11.820]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  4. [16:47:12.292]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  5. [16:47:12.779]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  6. [16:47:13.252]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  7. [16:47:13.728]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  8. [16:47:14.198]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  9. [16:47:14.671]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  10. [16:47:15.144]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  11. [16:47:15.616]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  12. [16:47:16.088]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  13. [16:47:16.559]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
  14. [16:47:17.030]收←◆C0 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0 00 00 C0
复制代码
发送的数据和程序中得不一样,是什么原因呢?  波特率 是 9600 8 N 1            FOSC=206438400UL
回复

使用道具 举报

1

主题

1

回帖

56

积分

注册会员

Rank: 2

积分
56
 楼主| 发表于 2023-1-30 18:22:33 | 显示全部楼层
好了,解决了,是波特率计算错了,tmp = FOSC / 8/9600;这样写就可以了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2025-7-10 10:51 , Processed in 0.026451 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表