OpenEdv-开源电子网

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

stm32 f1关于电平输出问题

[复制链接]

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2016-1-22
在线时间
16 小时
发表于 2016-2-24 18:55:16 | 显示全部楼层 |阅读模式
1金钱
stm32电平输出模式
都是需要选择输出频率,比如2MHZ、10MHZ、50MHZ。
那么我想要的一个引脚一直输出低电平,有办法实现吗?
谢谢各位,急用。。。

最佳答案

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

那个频率是端口频率,决定了端口置高置低的极限频率, 比如配置为2MHz, 而程序里这样写: while (1) { PA0 = 1; delay_ns(50); PA0 = 0; delay_ns(50); } 如果单看程序的话,是不是以为PA0引脚会输出10MHz的方波? 并不是!因为GPIO初始化为引脚翻转速度只能为2MHz,所以如上程序出来的波形会失真, 所以说,设置引脚究竟是高还是低完全有GPIOx->ODR决定, 选择合适的频率可以优化功耗、优化电磁兼容 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

1097

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3571
金钱
3571
注册时间
2014-12-2
在线时间
365 小时
发表于 2016-2-24 18:55:17 | 显示全部楼层
那个频率是端口频率,决定了端口置高置低的极限频率,

比如配置为2MHz,

而程序里这样写:
while (1)
{
    PA0 = 1; delay_ns(50);
    PA0 = 0; delay_ns(50);
}

如果单看程序的话,是不是以为PA0引脚会输出10MHz的方波?
并不是!因为GPIO初始化为引脚翻转速度只能为2MHz,所以如上程序出来的波形会失真,

所以说,设置引脚究竟是高还是低完全有GPIOx->ODR决定,
选择合适的频率可以优化功耗、优化电磁兼容等,这些在初学阶段可以先放一放,有个映象便可
坚决不用寄存器,拒绝重复造轮子。
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2016-1-22
在线时间
16 小时
 楼主| 发表于 2016-2-25 10:02:32 | 显示全部楼层
xkwy 发表于 2016-2-24 21:02
那个频率是端口频率,决定了端口置高置低的极限频率,

比如配置为2MHz,

谢谢您,现在有这么一个实际的问题,我是在用重力加速度传感器触发GPS工作,GPS电源引脚,一个是连接5V电源,一个是连接PB5引脚当地使用,系统初始化的时候我将PB5设为高电平,但是当重力加速度到一定值的时候,我将PB5变为低电平。这样GPS就可以工作了。(我本来是这么想的,做起来,电源指示灯也是正常亮的,但是就是不能工作,现在我试了下,将GPS电源地引脚连接到开发版的地引脚,GPS就开始正常工作了。)我的问题是,为什么我将PB5变为低电平的时候为啥就是不能工作,麻烦您了。
回复

使用道具 举报

62

主题

902

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3559
金钱
3559
注册时间
2016-1-8
在线时间
543 小时
发表于 2016-2-25 10:20:51 | 显示全部楼层
所谓的地线是不带电的,不能作为底电平使用,
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2016-1-22
在线时间
16 小时
 楼主| 发表于 2016-2-25 10:37:24 | 显示全部楼层
Sun_Fly 发表于 2016-2-25 10:20
所谓的地线是不带电的,不能作为底电平使用,

如果我将电源的5V换成PB5(它的工作电压是 3.3V~5.0V),地线就接地,这样呢?PB5的输出的高电平时几伏?(在下有点简陋,没有万用表,希望大神帮助下)
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2016-1-22
在线时间
16 小时
 楼主| 发表于 2016-2-25 10:42:54 | 显示全部楼层
GPIO_ResetBits(GPIOB, GPIO_Pin_5); //设置 GPIOB.5 输出 1,等同 LED0=1;
               
                               
                        }
                }
                t++;
               
                                        if ((2<X)&&(X<8))
                                        {
                                                delay_ms(2000);
                                                if ((2<X)&&(X<8))
                                                {
                                       
                                                LCD_ShowString(30,400,200,16,16,"liweiwei ");
                                                        while(1)
                                                        {
                                                        GPIO_SetBits(GPIOB, GPIO_Pin_5); //设置 GPIOB.5 输出 1,等同 LED0=1;
                                                        }
                                                }
                                        }
                                }
        }        






我的部分程序是这样子的
回复

使用道具 举报

62

主题

902

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3559
金钱
3559
注册时间
2016-1-8
在线时间
543 小时
发表于 2016-2-25 11:39:56 | 显示全部楼层
李威 发表于 2016-2-25 10:37
如果我将电源的5V换成PB5(它的工作电压是 3.3V~5.0V),地线就接地,这样呢?PB5的输出的高电平时几伏? ...

看你芯片工作电压是多少,他就是多少V
回复

使用道具 举报

25

主题

683

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1351
金钱
1351
注册时间
2012-4-25
在线时间
195 小时
发表于 2016-2-28 09:24:44 来自手机 | 显示全部楼层
pb5被你烧坏了吧,pb5为低电平时候 gps工作电流最少100ma了,应该用pb5控制开关管再控制gps地
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2016-1-22
在线时间
16 小时
 楼主| 发表于 2016-2-28 19:06:39 | 显示全部楼层
mygod 发表于 2016-2-28 09:24
pb5被你烧坏了吧,pb5为低电平时候 gps工作电流最少100ma了,应该用pb5控制开关管再控制gps地

谢谢你,应该是没有烧坏,我现在还是可以让它输出高低电平,现在正在想办法让PB5来控制三极管然后通过三极管来控制GPS。
回复

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
111
金钱
111
注册时间
2016-1-22
在线时间
16 小时
 楼主| 发表于 2016-2-28 19:13:40 | 显示全部楼层
mygod 发表于 2016-2-28 09:24
pb5被你烧坏了吧,pb5为低电平时候 gps工作电流最少100ma了,应该用pb5控制开关管再控制gps地

现在在补充模拟电路的知识,你说的开关管,是mos管吗?
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-26 06:10

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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