2920|9

60

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

初学者请教,2个不同的LPC1768芯片的工程源代码,QEIPOS寄存器不会使用 [复制链接]

2个工程,一个是头文件lpc1700.h里面就有QEIPOS寄存器的define的值,另外一个在LPC17xx.h里面只有一个typedef struct。右边的工程不太明白这个寄存器怎么使用。

我试过
LPC_QEI_TypeDef lpcQEI;
然后使用
lpcQEI.QEIPOS这样使用,虽然编译可以通过,但是貌似也没初始值,程序烧写进去也不能正常运行。
还试过
lpcQEI.QEIPOS = 0x400BC00C;
也不行,报错。

此帖出自NXP MCU论坛

最新回复

看芯片的用户手册。模块要初始化才能用。你直接上来就搞,肯定要出事。   详情 回复 发表于 2020-9-15 16:05
点赞 关注
 

回复
举报

7671

帖子

2

TA的资源

五彩晶圆(高级)

沙发
 

lpcQEI.QEIPOS 就是那个寄存器,初始值是器件上电默认初始值。使用的时候直接读写这个东西就行了。

lpcQEI.QEIPOS = x;

int x = lpcQEI.QEIPOS;

此帖出自NXP MCU论坛

点评

lpcQEI.QEIPOS = x; 你这个赋值了? 我之前也是直接用lpcQEI.QEIPOS,但是我打印了lpcQEI.QEIPOS 的值,发现是0  详情 回复 发表于 2020-9-15 12:37
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

60

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
本帖最后由 yunhai14 于 2020-9-15 13:14 编辑
freebsder 发表于 2020-9-15 11:09 lpcQEI.QEIPOS 就是那个寄存器,初始值是器件上电默认初始值。使用的时候直接读写这个东西就行了。 lpcQ ...

lpcQEI.QEIPOS = x; 你这个赋值了?

我之前也是直接用lpcQEI.QEIPOS,但是我打印了lpcQEI.QEIPOS 的值,发现是0,而且感觉下位机没有正常执行,卡住了

此帖出自NXP MCU论坛

点评

你要做的是按照1768的数据手册和开发手册核对 QEIPOS 的地址是不是 0x400BC00C ,然后你要做的是查看 QEIPOS 的读写属性,只读只写还是某些位可读写等。最后,不要感觉下位机怎么样,要打断点,调试  详情 回复 发表于 2020-9-15 13:37
 
 
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

4
 
yunhai14 发表于 2020-9-15 12:37 freebsder 发表于 2020-9-15 11:09 lpcQEI.QEIPOS 就是那个寄存器,初始值是器件上电默认初始值。使用的 ...

你要做的是按照1768的数据手册和开发手册核对 QEIPOS 的地址是不是 0x400BC00C ,然后你要做的是查看 QEIPOS 的读写属性,只读只写还是某些位可读写等。最后,不要感觉下位机怎么样,要打断点,调试,IAR和Keil都可以查看外设寄存器的操作情况。

此帖出自NXP MCU论坛

点评

我单独在main函数开始的地方写了一行qei_num = LPC_QEI->QEIPOS/2;,用JLINK进行debug,发现一直停在 HardFault_Handler\                 PROC     &nbs  详情 回复 发表于 2020-9-15 15:48
怎么看QEIPOS读写属性,我确实太菜了,不太会  详情 回复 发表于 2020-9-15 15:20
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

60

帖子

0

TA的资源

一粒金砂(中级)

5
 
freebsder 发表于 2020-9-15 13:37 你要做的是按照1768的数据手册和开发手册核对 QEIPOS 的地址是不是 0x400BC00C ,然后你要做的 ...

怎么看QEIPOS读写属性,我确实太菜了,不太会

此帖出自NXP MCU论坛

点评

看芯片的用户手册。  详情 回复 发表于 2020-9-15 16:04
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(中级)

6
 
freebsder 发表于 2020-9-15 13:37 你要做的是按照1768的数据手册和开发手册核对 QEIPOS 的地址是不是 0x400BC00C ,然后你要做的 ...

我单独在main函数开始的地方写了一行qei_num = LPC_QEI->QEIPOS/2;,用JLINK进行debug,发现一直停在

HardFault_Handler\
                PROC
                EXPORT  HardFault_Handler         [WEAK]
                B       .
                ENDP

这行

 

此帖出自NXP MCU论坛

点评

看芯片的用户手册。模块要初始化才能用。你直接上来就搞,肯定要出事。  详情 回复 发表于 2020-9-15 16:05
 
 
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

7
 
yunhai14 发表于 2020-9-15 15:20 怎么看QEIPOS读写属性,我确实太菜了,不太会

看芯片的用户手册。

此帖出自NXP MCU论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

7671

帖子

2

TA的资源

五彩晶圆(高级)

8
 
yunhai14 发表于 2020-9-15 15:48 我单独在main函数开始的地方写了一行qei_num = LPC_QEI->QEIPOS/2;,用JLINK进行debug,发现一直停在 ...

看芯片的用户手册。模块要初始化才能用。你直接上来就搞,肯定要出事。

此帖出自NXP MCU论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 
 

回复

60

帖子

0

TA的资源

一粒金砂(中级)

9
 
本帖最后由 yunhai14 于 2020-9-15 17:53 编辑

    LPC_SC->PCONP |= 0x00040000;                                                                                                
    LPC_SC->PCLKSEL1 |= 0x00000001;                                                                                            
    LPC_PINCON->PINSEL3 |= 0x000100 + 0x004000;                                                                              
    LPC_QEI->QEICON = 0;                                                                                                                       
    LPC_QEI->QEICONF = 0;                                                                                                                                                                                           
    LPC_QEI->QEIMAXPOS = 0xFFFFFFFF;
        NVIC_SetPriority(QEI_IRQn, 3);
    NVIC_EnableIRQ(QEI_IRQn);

 

我看下左边工程的代码,类似需要这样初始化,但是我初始化了,QEI的值还是读不到,是不是哪里细节还有问题?

求高手帮忙

此帖出自NXP MCU论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(中级)

10
 
LPC_SC->PCONP |= 0x00040000;                                                                                                     LPC_SC->PCLKSEL1 |= 0x00000001;                                                                                                 LPC_PINCON->PINSEL3 |= 0x000100 + 0x004000;                                                                                   LPC_QEI->QEICON = 0;                                                                                                                            LPC_QEI->QEICONF = 0;                                                                                                                                                                                                LPC_QEI->QEIMAXPOS = 0xFFFFFFFF;         NVIC_SetPriority(QEI_IRQn, 3);     NVIC_EnableIRQ(QEI_IRQn);     我看下左边工程的代码,类似需要这样初始化,但是我初始化了,QEI的值还是读不到,是不是哪里细节还有问题?  求高手帮忙
此帖出自NXP MCU论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
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
快速回复 返回顶部 返回列表