10898|29

4996

帖子

19

TA的资源

裸片初长成(初级)

楼主
 

LPC1114/LPC11U14和LPC1343对比学习(二)GPIO [复制链接]

对处理器的学习一般都是从GPIO开始,下面我们将对比这三种芯片的GPIO的应用及区别。

 

 

 

 

 

       下面三个表示是三种芯片的GPIO寄存器,从表可以看出,LPC1114的GPIO和LPC1343的GPIO寄存器是兼容的,也就是说这两类芯片的端口控制程序也是完全兼容的;反而LPC11U14作为LPC1100系列的一员却并不兼容,不知道NXP为什么要这样设计,真让人困惑啊?????

 

 

 

 

 

 

1. LPC1114 GPIO寄存器

 

 

 

2. LPC11U14 GPIO寄存器

 

 

 

 

3. LPC1343 GPIO寄存器

 

 

       对于LPC1114和LPC1343两种GPIO的设置方法是一样的,就是寄存器也是一致的,都不复杂。但是对于LPC11U14来说,寄存器比较多,上面的表中并没有完全列出,实在不明白NXP为什么要设计这么多寄存器。说实话从上面的寄存器看LPC1343倒是像和LPC1114同一系列,而LPC11U14不像。

 

 

[ 本帖最后由 zhaojun_xf 于 2011-8-14 16:44 编辑 ]
此帖出自NXP MCU论坛

最新回复

之前论坛下载另外一个模板4.22版本编译不过,看里面的文件都一样的,不解,这个版本的是可以正常在4.22版本下编译通过,再次感谢楼主的奉献,谢谢  详情 回复 发表于 2012-6-27 07:58
点赞 关注
个人签名我的博客
 

回复
举报

4996

帖子

19

TA的资源

裸片初长成(初级)

沙发
 

从上表可以看出LPC1114和LPC1343完全兼容,使用程序代码也是完全兼容的,下面对LPC1114的程序对LPC1343也是可以使用的。

 

初始化代码

 

1. LPC1114/LPC1343

 

 

2. LPC11U14

 

 

方向设置

 

1. LPC1114/LPC1343

 

 

2. LPC11U14

 

 

方向设置函数是一样的,都是设置DIR寄存器。。。。。。。。。。。

 

[ 本帖最后由 zhaojun_xf 于 2011-8-14 17:02 编辑 ]
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

板凳
 

      在读/写端口上有很大的区别,LPC1114和LPC1343通过屏蔽寄存器操作端口输出值;而LPC11U14则是通过两个寄存器来实现的,这一点很想ARM7的操作方法。

 

写端口

 

1. LPC1114/LPC1343

 

 

2. LPC11U14

 

 

读端口

 

1. LPC1114/LPC1343

 

 

2. LPC11U14

 

 

[ 本帖最后由 zhaojun_xf 于 2011-8-14 17:16 编辑 ]
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

4
 

对于GPIO中断控制比较复杂,这里就不在一一说明,大家可以阅读数据手册,下面提供了具体代码大家可以自行阅读,有什么问题,可以提出一起讨论。

 

LPC1114工程模板.rar (163.5 KB, 下载次数: 67, 售价: 2 分芯积分)

LPC11U14工程模板.rar (239.05 KB, 下载次数: 38, 售价: 2 分芯积分)

LPC1343工程模板.rar (260.17 KB, 下载次数: 29, 售价: 2 分芯积分)

 

附件都是收费的,可能有的网友是不喜欢这样做,但是没有办法,每一个工程代码都是来之不易的,希望大家理解,珍惜。。。。。。

[ 本帖最后由 zhaojun_xf 于 2011-8-14 17:25 编辑 ]
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

5
 
GPIO的学习基本完成,喜欢大家谈谈自己的看法,共同提高
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

33

帖子

0

TA的资源

一粒金砂(中级)

6
 
赞一个!
此帖出自NXP MCU论坛
 
 
 

回复

12

帖子

0

TA的资源

一粒金砂(初级)

7
 
还不错!
此帖出自NXP MCU论坛
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

8
 
我仔细验证了GPIOSetMutiValue(uint32_t portNum, uint32_t shield, uint32_t val)和GPIOStatusMutiValue(uint32_t portNum, uint32_t shield)函数,我觉得有问题啊这两个,一个问题是bast返回值一直不变,另外switch函数里,如果我选择了PORT2口,单步执行的话执行完case2总是会跳转到case0那一句之后才会break。望指点。谢谢。
此帖出自NXP MCU论坛
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

9
 

还有,假如说我写屏蔽PORT2的的低八位端口都为低电平, GPIOSetMutiValue(2,0x0FF,0xF00);这样写我觉得没有问题吧?

此帖出自NXP MCU论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

10
 

回复 8楼 liuying87112 的帖子

代码能运行就没有问题,至于单步运行有时乱跳可能跟MDK本身有关
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

11
 

回复 9楼 liuying87112 的帖子

没有问题,但是没有必要用12位,直接用8位就可以了
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

12
 

回复 10楼 zhaojun_xf 的帖子

恩,谢谢,你用这个函数读写过多位端口么?没有出错?
此帖出自NXP MCU论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

13
 

回复 12楼 liuying87112 的帖子

当然用过,这为什么会错呢?
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

14
 
 我也觉得这个函数应该没什么问题。我举个例子哈,我用GPIOStatusMutiValue()读P2.0口,P2.0口接地,读取地址对应的数据的返回值应该是0xFFE才对,是吧?但是返回值是0x000.就是说我的默认的引脚都成低电平了(实际应该为3.3v)。如果这个P2.0悬空,读取返回值为0x001 。我很纳闷    高位为什么都成0了?
此帖出自NXP MCU论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

15
 

回复 14楼 liuying87112 的帖子

需要注意屏蔽数据的应用
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

16
 

U盘读写程序已调通,十二分的感谢你的耐心解答,谢谢。下边准备上VS1003啦~~~~嘎嘎~~~

此帖出自NXP MCU论坛
 
 
 

回复

113

帖子

0

TA的资源

一粒金砂(中级)

17
 
mark!!
此帖出自NXP MCU论坛
 
个人签名中国人民解放军总装备部
 
 

回复

79

帖子

0

TA的资源

一粒金砂(高级)

18
 
楼主 我不明白一个函数:
void GPIOSetValue( uint32_t portNum, uint32_t bitPosi, uint32_t bitVal )
{
  LPC_GPIO[portNum]->MASKED_ACCESS[(1< }
这里的下表[(1<
此帖出自NXP MCU论坛
 
个人签名我的存在是为了这个世界
 
 

回复

45

帖子

0

TA的资源

一粒金砂(中级)

19
 
现在要对其中GPIO0~7位操作使其等于零怎么办?8~15位使其等于1,其他口不变怎么操作 啊、?
此帖出自NXP MCU论坛
 
 
 

回复

4996

帖子

19

TA的资源

裸片初长成(初级)

20
 

回复 18楼 hades2011 的帖子

好好看看,是不是你看错了:
此帖出自NXP MCU论坛
 
个人签名我的博客
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表