OpenEdv-开源电子网

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

I/O口的快速与慢速怎么实现的

[复制链接]

1

主题

6

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2013-1-20
在线时间
0 小时
发表于 2013-3-11 21:24:35 | 显示全部楼层 |阅读模式
#if LCD_FAST_IO==1 //快速IO

#define LCD_CS_SET  GPIOC->BSRR=1<<9    //片选端口       PC9
#define LCD_RS_SET GPIOC->BSRR=1<<8    //数据/命令          C8   
#define LCD_WR_SET GPIOC->BSRR=1<<7    //写数据 PC7
#define LCD_RD_SET GPIOC->BSRR=1<<6    //读数据 PC6
   
#define LCD_CS_CLR  GPIOC->BRR=1<<9     //片选端口       PC9
#define LCD_RS_CLR GPIOC->BRR=1<<8     //数据/命令          C8   
#define LCD_WR_CLR GPIOC->BRR=1<<7     //写数据 PC7
#define LCD_RD_CLR GPIOC->BRR=1<<6     //读数据 PC6
   
#else //慢速IO

#define LCD_CS PCout(9)  //片选端口       PC9
#define LCD_RS PCout(8)  //数据/命令        C8   
#define LCD_WR PCout(7)  //写数据 PC7
#define LCD_RD PCout(6)  //读数据 PC6
    上面的I/O口的快速与慢速是怎么实现的,我觉得这两个好像都是一样的,怎么回事???





正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-11 22:31:20 | 显示全部楼层
看看st对BSRR和BRR这两个寄存器的介绍。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

43

主题

228

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1074
金钱
1074
注册时间
2012-1-10
在线时间
238 小时
发表于 2013-3-12 14:08:24 | 显示全部楼层
http://bbs.ednchina.com/BLOG_ARTICLE_283325.HTM
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2013-1-20
在线时间
0 小时
 楼主| 发表于 2013-3-14 15:06:36 | 显示全部楼层
回复【3楼】magicoctoy:
---------------------------------
谢谢,用BSRR会比较方便,但我还是不明白为什么调用寄存器和使用PAOUT()会造成IO口的读取速度不同。。。
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2013-1-20
在线时间
0 小时
 楼主| 发表于 2013-3-14 15:11:31 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子,我现在对使用寄存器和调用库函数不知道怎么来区分,PCOUT()是否是调用库函数,而GPIOC->BSRR=1<<8是调用寄存器???两者不是应该是等价的吗??怎么有读取速度的差别
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-14 22:52:09 | 显示全部楼层
回复【5楼】zhengyanpu:
---------------------------------
调用函数,是需要时间的。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

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

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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