OpenEdv-开源电子网

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

关于STM32F051的串口配置

[复制链接]

20

主题

87

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2014-8-24
在线时间
0 小时
发表于 2015-6-15 10:04:23 | 显示全部楼层 |阅读模式
5金钱
RT
看了下例程,串口1的PA9、PA10配置是复用功能推挽输出,但为何要使能上下拉呢???

最佳答案

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

拉LOW RX就會判斷有資料 你會不斷收到 00 00 00 00 00 00 ...... 避免RX輸入端浮空時電位不確定 導致資料異常 使用上拉電阻 在無資料傳輸時確保不會產生垃圾 另一個用處是讓波型漂亮點 上拉速度快 減少誤碼率
哥的世界,你们不懂!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

239

帖子

0

精华

高级会员

Rank: 4

积分
545
金钱
545
注册时间
2015-6-5
在线时间
110 小时
发表于 2015-6-15 10:04:24 | 显示全部楼层
拉LOW RX就會判斷有資料 你會不斷收到 00 00 00 00 00 00 ......

避免RX輸入端浮空時電位不確定 導致資料異常 使用上拉電阻 在無資料傳輸時確保不會產生垃圾
另一個用處是讓波型漂亮點 上拉速度快 減少誤碼率
回复

使用道具 举报

20

主题

87

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2014-8-24
在线时间
0 小时
 楼主| 发表于 2015-6-15 14:12:45 | 显示全部楼层
补充一下,芯片是STM32F051C8T6
哥的世界,你们不懂!
回复

使用道具 举报

20

主题

87

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2014-8-24
在线时间
0 小时
 楼主| 发表于 2015-6-16 13:22:48 | 显示全部楼层
回复【3楼】Rocks:
---------------------------------
你的意思是说,如果我不要上拉,单纯用推挽,拉低RX会不断收到数据???
哥的世界,你们不懂!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-6-16 23:02:14 | 显示全部楼层
回复【4楼】CMOS:
---------------------------------
是RX悬空的时候,可能有问题。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

20

主题

87

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2014-8-24
在线时间
0 小时
 楼主| 发表于 2015-6-17 15:08:51 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
我大概明白你们的意思,你们都认为如果不接上拉,单纯用推挽,IO口会有悬空的可能

这个我有空再测试一下,我之前好几种51的IC,只要用了推挽,当配置为推挽输出高时,即使IO口什么都不接,用万用表测量一样有高电平(理论上PMOS管应该截止,不排除万用表的内阻与PMOS管形成通路)
哥的世界,你们不懂!
回复

使用道具 举报

54

主题

136

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
404
金钱
404
注册时间
2014-3-6
在线时间
41 小时
发表于 2016-7-13 14:50:31 | 显示全部楼层
大哥,有历程,可以发一下吗?工程模板之类,小弟先谢了!
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-7-13 15:07:19 | 显示全部楼层
春和景明 发表于 2016-7-13 14:50
大哥,有历程,可以发一下吗?工程模板之类,小弟先谢了!

GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef USART_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
                        
RCC_AHBPeriphClockCmd( RCC_AHBPeriph_GPIOA, ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE );
               
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10;                 
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_Init(GPIOA, &GPIO_InitStructure);

  GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_1);
  GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_1);   

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(USART1, &USART_InitStructure);

NVIC_InitStructure.NVIC_IRQChannel=USART1_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPriority=0;
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
NVIC_Init(&NVIC_InitStructure);

USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
USART_Cmd(USART1, ENABLE);
回复

使用道具 举报

0

主题

12

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2017-8-6
在线时间
0 小时
发表于 2017-8-7 15:50:57 | 显示全部楼层
代理兆易创新(GD)32-bit ARM架构,Cortex-M3、M4内核MCU,可提供技术支持等服务;
GD32F130系列 M3内核与STM32F030/051/070等系列,硬件pin to pin兼容;烧录器、寄存器、开发环境完全兼容;
欢迎来电咨询探讨,邱先生 电话:136 8955 5135;
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-22 04:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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