OpenEdv-开源电子网

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

跑马灯的实验有地方不懂,大侠指导下

[复制链接]

17

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2013-6-13
在线时间
0 小时
发表于 2013-9-23 16:55:24 | 显示全部楼层 |阅读模式


这是查看 LED0 在底层怎么定义的

接着下一步


下一步


下一步


下一步


最后一步


从51的思维调到stm32中来看,一个I/O口的操作这么麻烦,我对库函数的理解就是学会用st提供的库函数,学会库函数的接口使用,说实话看完这个例子如果要我写一个流水灯的程序的话,我还是不知道怎么写,云里雾里,大侠能给我个大致的讲解先









在无人关注的黑夜,你是否动情的燃烧
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

11

主题

55

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
290
金钱
290
注册时间
2013-9-2
在线时间
9 小时
发表于 2013-9-23 17:56:30 | 显示全部楼层
我也是初学者,说说我个人的理解,大家一起讨论,共同进步。

在使用STM32库函数时,我理解操作的步骤一般为:
1、配置时钟
2、配置引脚功能(输入或输出等)
3、配置某一特定功能(以串口为例,比如说配置串口的波特率/奇偶校验位/停止位等)
4、使能中断及中断优先级配置(比如串口发送或接收中断)
5、我们要实现的具体某一个功能,我理解是上层应用程序

以上是我的理解,有什么不对的地方,大家一起讨论。
众人划桨开大船!!!
回复 支持 反对

使用道具 举报

16

主题

56

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2013-8-10
在线时间
0 小时
发表于 2013-9-23 18:53:29 | 显示全部楼层
我也是初学者,首先点亮一个灯
第一  设置GPIO口的时钟RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOE, ENABLE);
第二   配置GPIO口的引脚功能(输入或输出等) 
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
第三 就是初始化GPIO    GPIO_Init( GPIOE, &GPIO_InitStructure);
最后就是调用函数了
GPIO_SetBits( GPIOE, GPIO_Pin_5);
GPIO_ResetBits( GPIOE, GPIO_Pin_5);
也可以进行位带操作
#define LED1 Eout(5)// E5
回复 支持 反对

使用道具 举报

17

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2013-6-13
在线时间
0 小时
 楼主| 发表于 2013-9-24 09:58:42 | 显示全部楼层
回复【2楼】I6believe:
---------------------------------
像上面的那些地址好像很复杂的
在无人关注的黑夜,你是否动情的燃烧
回复 支持 反对

使用道具 举报

17

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2013-6-13
在线时间
0 小时
 楼主| 发表于 2013-9-24 10:13:26 | 显示全部楼层
回复【3楼】Naga1991:
---------------------------------
main函数里面的操作跟51类似,
像设置这些东西在那个底层函数,这个底层是st提供的吗?



设置GPIO口的时钟RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOE, ENABLE); 
第二   配置GPIO口的引脚功能(输入或输出等)  
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; 
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; 
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
在无人关注的黑夜,你是否动情的燃烧
回复 支持 反对

使用道具 举报

11

主题

55

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
290
金钱
290
注册时间
2013-9-2
在线时间
9 小时
发表于 2013-9-25 15:19:16 | 显示全部楼层
回复【4楼】追梦人ZWC:
---------------------------------
库函数一般用了很多宏定义、强制类型转换、指针之类的,刚开始的确有点繁琐,你可以在刚开始的时候光看库函数,学一段时间了,再具体的看库函数操作的寄存器,时间长了,就好了。毕竟万事开头难嘛!
众人划桨开大船!!!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-13 07:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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