OpenEdv-开源电子网

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

求解答一个关于ODR设置的问题

[复制链接]

11

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2012-2-17
在线时间
0 小时
发表于 2012-3-1 21:51:15 | 显示全部楼层 |阅读模式
以前有人问过关于这个上拉下拉的问题,GPIOC->ODR=1<<11;//PC11上拉,这个好理解;那下面的LED
初始化的 GPIOA->ODR|=1<<8;      //PA8 输出高,是不是说PA8输出是高电平,而不应该去理解为上下拉?
不知道这样理解的对不对?
地址为 http://www.openedv.com/posts/list/1004.htm
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
原子你的STM32不完全手册中的第94页“给个实例,比如我们要设置PORTC的11位为上拉输入,12位为推挽输出。代码如下:
                                                    GPIOC->CRH&=0XFFF00FFF;//清掉这2个位原来的设置,同时也不影响其他位的设置
                                                    GPIOC->CRH|=0X00038000; //PC11输入,PC12输出
                                                    GPIOC->ODR=1<<11;//PC11上拉”
中的最后一行“GPIOC->ODR=1<<11;//PC11上拉”和例程中“void LED_Init(void)
                                                                                   {
                                                                                    RCC->APB2ENR|=1<<2;    //使能PORTA时钟      
                                                                                    RCC->APB2ENR|=1<<5;    //使能PORTD时钟 
                                                                                    GPIOA->CRH&=0XFFFFFFF0;
                                                                                    GPIOA->CRH|=0X00000003;//PA8 推挽输出    
                                                                                    GPIOA->ODR|=1<<8;      //PA8 输出高
                                                                                    GPIOD->CRL&=0XFFFFF0FF;
                                                                                    GPIOD->CRL|=0X00000300;//PD.2推挽输出
                                                                                    GPIOD->ODR|=1<<2;      //PD.2输出高
                                                                                    }”的关于上拉下拉问题我该一个为准啊,晕啊,搞的头大啊。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------



那些年,我们一起走过的日子...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-3-1 22:19:01 | 显示全部楼层
上下拉是对输入来说的.
输出是高或低,而不是拉.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

11

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2012-2-17
在线时间
0 小时
 楼主| 发表于 2012-3-1 22:28:13 | 显示全部楼层
回复【2楼】正点原子:
上下拉是对输入来说的.
输出是高或低,而不是拉.
---------------------------------
问了群里和度娘,还是觉得原子回答到最点上,点清楚了输入和输出对应上下拉和高低电平,太谢谢了
那些年,我们一起走过的日子...
回复 支持 反对

使用道具 举报

8

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
78
金钱
78
注册时间
2012-6-15
在线时间
0 小时
发表于 2012-12-30 16:37:11 | 显示全部楼层
开漏输出呢,如果没有上拉电阻,不能输出高电平.
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2013-3-12
在线时间
0 小时
发表于 2013-3-12 21:45:11 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
我想请问一下,在《STM32不完全手册》第150页中的void WM_Init(u16 arr,u16 psc)函数里,
GPIOA->CRL&=0X0FFFFFFF;//PA7输出
GPIOA->CRL|=0XB0000000;//复用功能输出    
GPIOA->ODR|=1<<7;//PA7上拉
这里PA7设置为输出,那为什么第三行的注释是PA7上拉呢?我这里不太懂!
女孩,握紧你的右手!——毕淑敏
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-12 21:50:23 | 显示全部楼层
这句可以去掉。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-23 20:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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