打印

求助!关于STM32串口调试的问题!

[复制链接]
4450|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
fredinand|  楼主 | 2010-7-16 17:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fredinand 于 2010-7-16 17:10 编辑

硬件状况:开发板一块,自制板卡一块
调试情况说明:串口配置如下:

  USART_ClockInitStructure.USART_Clock = USART_Clock_Disable;
  USART_ClockInitStructure.USART_CPOL = USART_CPOL_Low;
  USART_ClockInitStructure.USART_CPHA = USART_CPHA_2Edge;
  USART_ClockInitStructure.USART_LastBit = USART_LastBit_Disable;
  USART_ClockInit(USART2, &USART_ClockInitStructure);
  USART_InitStructure.USART_BaudRate = 115200;
  USART_InitStructure.USART_WordLength = USART_WordLength_8b;
  USART_InitStructure.USART_StopBits = USART_StopBits_1;
  USART_InitStructure.USART_Parity = USART_Parity_No ;
  USART_InitStructure.USART_HardwareFlowControl =USART_HardwareFlowControl_None;
  USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
  USART_Init(USART2, &USART_InitStructure);
  USART_Cmd(USART2, ENABLE);
采用8M的晶振,该程序在开发板上调试情况良好,串口助手接收数据正常,在本人自制的板卡上调试就出现了问题。串口助手接收到的数据与程序中发送的不同,但并非乱码,而是非常有规律的,比如我发送0,1,2,3四个数结果收到的十六进制数为00,7F,3F,7E.再比如我发送a,b,c,d结果收到的却是3D,7A,1E,79,结果不对但是非常固定。改变波特率也没有效果
  十分的懊恼,不知道问题出在哪里,望大家给些提示!
沙发
香水城| | 2010-7-16 17:16 | 只看该作者
用示波器看看吧,似乎你的232转换芯片有问题?

使用特权

评论回复
板凳
fredinand|  楼主 | 2010-7-16 17:28 | 只看该作者
转换芯片???我直接从芯片引脚连到串口线的T_T

使用特权

评论回复
地板
香水城| | 2010-7-16 17:30 | 只看该作者
转换芯片???我直接从芯片引脚连到串口线的T_T
fredinand 发表于 2010-7-16 17:28


:curse:

你没有把STM32芯片烧掉,算你运气比较大,:L

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
fredinand + 1
5
fredinand|  楼主 | 2010-7-16 17:31 | 只看该作者
这个电平问题能解释这种有规律的乱码吗?

使用特权

评论回复
6
一级菜鸟| | 2010-7-16 17:53 | 只看该作者
这个电平问题能解释这种有规律的乱码吗?
fredinand 发表于 2010-7-16 17:31


当然,RS232电平与TTL电平是完全不同的两种定义。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

124

主题

151

帖子

1

粉丝