OpenEdv-开源电子网

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

STM32F1MINI,跑马灯翻转速度设置问题

[复制链接]

7

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
160
金钱
160
注册时间
2016-11-8
在线时间
33 小时
发表于 2016-11-15 20:46:11 | 显示全部楼层 |阅读模式
本人小白,刚刚接触STM32 关于跑马灯设置的时候,有个         GPIOA->CRH&=0XFFFFFFF0;

         GPIOA->CRH|=0X00000003;              
         GPIOA->IDR|=1<<8;                                      //将输出模式设置为推挽输出,翻转速度为50MHz
        我也设置成10MHz过,也可以,但是不知道为啥要设置这个?
        求各位大哥大姐大神们解答一下
        <a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=&site=qq&menu=yes"><img border="0" src="http://wpa.qq.com/pa?p=2::52" alt="点击这里给我发消息" title="点击这里给我发消息"/></a>
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5722
金钱
5722
注册时间
2013-11-22
在线时间
1201 小时
发表于 2016-11-15 21:34:01 | 显示全部楼层
这个设置IO口的最高翻转速度,点led不需要用到那么高的翻转速度的,给个几K的翻转频率,就已经看不出来了。
回复 支持 反对

使用道具 举报

7

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
160
金钱
160
注册时间
2016-11-8
在线时间
33 小时
 楼主| 发表于 2016-11-16 13:44:17 | 显示全部楼层
lycreturn 发表于 2016-11-15 21:34
这个设置IO口的最高翻转速度,点led不需要用到那么高的翻转速度的,给个几K的翻转频率,就已经看不出来了。

LED翻转频率是干嘛的?还有怎么设置几k的翻转频率啊?设定不就只有5MHz,10MHz和50MHz三个吗?
回复 支持 反对

使用道具 举报

3

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5722
金钱
5722
注册时间
2013-11-22
在线时间
1201 小时
发表于 2016-11-16 15:03:54 | 显示全部楼层
希望 发表于 2016-11-16 13:44
LED翻转频率是干嘛的?还有怎么设置几k的翻转频率啊?设定不就只有5MHz,10MHz和50MHz三个吗?

就是设置IO口 高低电平     开灯关灯开灯关灯。。。。while(1){LED0=0;delay_ms(10);LED0=1;delay_ms(10);};调整延时就可以调整led的开关频率了
那个是IO的最大翻转速度  最大最大。。。
回复 支持 反对

使用道具 举报

7

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
160
金钱
160
注册时间
2016-11-8
在线时间
33 小时
 楼主| 发表于 2016-11-18 16:15:14 | 显示全部楼层
lycreturn 发表于 2016-11-16 15:03
就是设置IO口 高低电平     开灯关灯开灯关灯。。。。while(1){LED0=0;delay_ms(10);LED0=1;delay_ms(10) ...

是不是就是设置一个最大的翻转速度,在写程序的时候,IO高低电平的切换速度不能大于设置的这个频率?
回复 支持 反对

使用道具 举报

3

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5722
金钱
5722
注册时间
2013-11-22
在线时间
1201 小时
发表于 2016-11-18 19:01:39 | 显示全部楼层
希望 发表于 2016-11-18 16:15
是不是就是设置一个最大的翻转速度,在写程序的时候,IO高低电平的切换速度不能大于设置的这个频率?

是的  不能大于这个频率
回复 支持 反对

使用道具 举报

7

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
160
金钱
160
注册时间
2016-11-8
在线时间
33 小时
 楼主| 发表于 2016-11-25 21:04:54 | 显示全部楼层
lycreturn 发表于 2016-11-18 19:01
是的  不能大于这个频率

那可以不设置吗?
回复 支持 反对

使用道具 举报

3

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5722
金钱
5722
注册时间
2013-11-22
在线时间
1201 小时
发表于 2016-11-25 22:13:06 | 显示全部楼层
希望 发表于 2016-11-25 21:04
那可以不设置吗?

IO设置为推挽输出,就会设定一个值的,这个正常情况下配置速度50MHZ就可以了,不要太多纠结。
回复 支持 反对

使用道具 举报

7

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
160
金钱
160
注册时间
2016-11-8
在线时间
33 小时
 楼主| 发表于 2016-11-30 21:13:02 | 显示全部楼层
lycreturn 发表于 2016-11-25 22:13
IO设置为推挽输出,就会设定一个值的,这个正常情况下配置速度50MHZ就可以了,不要太多纠结。

哦哦,谢谢(^-^)
回复 支持 反对

使用道具 举报

6

主题

54

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
295
金钱
295
注册时间
2017-6-14
在线时间
43 小时
发表于 2017-7-3 14:32:29 | 显示全部楼层
希望 发表于 2016-11-30 21:13
哦哦,谢谢(^-^)

额,如果一开始就没设置的话,应该还是会有个翻转速度上限吗????那个是默认的吗?
回复 支持 反对

使用道具 举报

7

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
160
金钱
160
注册时间
2016-11-8
在线时间
33 小时
 楼主| 发表于 2017-7-17 15:30:43 | 显示全部楼层
多吃蔬菜少吃肉 发表于 2017-7-3 14:32
额,如果一开始就没设置的话,应该还是会有个翻转速度上限吗????那个是默认的吗?

一般在配置IO口的时候是用16进制的一个数字代表4位2进制,如果复位开启了IO口的时钟在不配置的情况下寄存器的值为0,二进制为0000,引脚为模拟(输入输出)模式。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-12-18 22:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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