OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9655|回复: 10

官方stm32f401vc discovery板调试usart1,引脚接入PA9和PA10就是没调通

[复制链接]

1

主题

3

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2015-4-9
在线时间
0 小时
发表于 2015-4-9 11:37:48 | 显示全部楼层 |阅读模式
5金钱

是不是官方板的问题呢,程序看过对比过好多次了,和407的没多大出入的,407的就行,这块401的就不行。这块板的串口开发官方也没例子程序,只有io操作的,奇怪得很。

有遇到并解决过这个问题的大牛支持下。谢谢

最佳答案

查看完整内容[请看2#楼]

增加一下串口时钟配置看看: 曾加一变量: USART_ClockInitTypeDef  USART_ClockInitStructure; 增加以下代码: USART_ClockInitStructure.USART_Clock = USART_Clock_Disable; USART_ClockInitStructure.USART_CPOL = USART_CPOL_Low; USART_ClockInitStructure.USART_CPHA = USART_CPHA_1Edge; USART_ClockInitStructure.USART_LastBit = USART_LastBit_Disable; /*  ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

13

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2015-3-30
在线时间
2 小时
发表于 2015-4-9 11:37:49 | 显示全部楼层
增加一下串口时钟配置看看:
曾加一变量:
USART_ClockInitTypeDef  USART_ClockInitStructure;
增加以下代码:
USART_ClockInitStructure.USART_Clock = USART_Clock_Disable;
USART_ClockInitStructure.USART_CPOL = USART_CPOL_Low;
USART_ClockInitStructure.USART_CPHA = USART_CPHA_1Edge;
USART_ClockInitStructure.USART_LastBit = USART_LastBit_Disable;
/* Configure the USART1 synchronous paramters */
USART_ClockInit(USART1, &USART_ClockInitStructure);
回复

使用道具 举报

4

主题

13

帖子

0

精华

初级会员

Rank: 2

积分
51
金钱
51
注册时间
2015-3-30
在线时间
2 小时
发表于 2015-4-9 11:37:49 | 显示全部楼层
你串口的RXD不应该配置为输出,否则接收不了数据。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-4-9 23:24:13 | 显示全部楼层
帮顶。。。。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2015-4-9
在线时间
0 小时
 楼主| 发表于 2015-4-15 14:44:38 | 显示全部楼层

还是不行,代码如下

三楼说的配置,我现在是想写,读的配置不对不影响写的吧

回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2014-12-22
在线时间
1 小时
发表于 2015-5-3 16:56:22 | 显示全部楼层
换成usart2就可以了,usart1被占用了,出来全是乱码
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
27
金钱
27
注册时间
2015-4-9
在线时间
0 小时
 楼主| 发表于 2015-5-5 18:14:35 | 显示全部楼层
回复【6楼】飞鱼爱上鸟:
---------------------------------
能否给段代码试试看,串口2没调出来
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2014-12-22
在线时间
1 小时
发表于 2015-5-12 10:43:55 | 显示全部楼层
[mw_shl_code=c,true]#include "usart.h" void USART1_Config() { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA , ENABLE); //?ò??PE?±?? RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2 , ENABLE); //?ò???®???±?? //Tx GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; //?è?????????? GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; //IO·?×?????50MHz GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //?è?????????????? GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; GPIO_Init(GPIOA, &GPIO_InitStructure); //Rx GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN; //?è?????????? GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_PinAFConfig(GPIOA,GPIO_PinSource2,GPIO_AF_USART2); GPIO_PinAFConfig(GPIOA,GPIO_PinSource3,GPIO_AF_USART2); USART_InitStructure.USART_BaudRate = 9600; 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); } int fputc(int ch ,FILE *f) { USART_SendData(USART2, (unsigned char)ch); while(USART_GetFlagStatus(USART2,USART_FLAG_TC)!=SET); return(ch); } void USART_Send(uint8_t *f) { while(USART_GetFlagStatus(USART2,USART_FLAG_TC)!=SET); USART_SendData(USART2, *f); f++; } void USART_Send_bate(uint8_t bate) { while(USART_GetFlagStatus(USART2,USART_FLAG_TC)!=SET); USART_SendData(USART2, bate); } 需要勾选use MicroLIB 然后主程序可以直接使用printf输出[/mw_shl_code]
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2014-12-22
在线时间
1 小时
发表于 2015-5-12 10:46:19 | 显示全部楼层
回复【8楼】飞鱼爱上鸟:
---------------------------------
为什么我的注释全是乱码    ????
回复

使用道具 举报

1

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2015-7-27
在线时间
5 小时
发表于 2015-12-21 17:48:31 | 显示全部楼层
我也遇到了这个问题,同样的配置使用 UART2 可以,使用 UART1 C接收到是乱码。
PA9  A10 在 USB 我也没有使能,是怎么回事?
回复

使用道具 举报

1

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2015-7-27
在线时间
5 小时
发表于 2015-12-25 17:34:57 | 显示全部楼层
现在问题已经解决,去掉板子上的 C54 之后,UART1 正常。
硬件工程师说是 电容充放电影响了串口的波形。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-25 21:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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