GPREG0~GPREG4 Value

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

GPREG0~GPREG4 Value

6,660件の閲覧回数
明锐陈
Contributor I

Hello!

Question1:

I am make a test:

1、Reset RTC,VDD(REG)(3V3) and VBAT is 0 V

2、Only Power on VDD(REG)(3V3),read GPREG0~4 value,some of  them is not 0, example:GPREG1 is 0x09004000。

3、Power on VBAT,then  Power on VDD, read GPREG0~4 value,some of  them is not 0, example:GPREG1 is 0x01004000

4、Different board ,the values are different。

What is the reason?

Question2:

The datasheet,page of 702。

1、“NC” mean that,the value is maybe any?

2、After reset RTC ,Must I initialize GPREG0~4,then read them?

2、After reset RTC,if I do not initialize GPREG0~4,what are their value? What will happen?

pastedImage_1.png

pastedImage_2.png

タグ(1)
0 件の賞賛
返信
9 返答(返信)

6,465件の閲覧回数
jeremyzhou
NXP Employee
NXP Employee

Hi 明锐 陈,

非常感谢使用NXP产品,很高兴为你提供技术支持!

可否告知你说的参考手册名称是什么,以及版本号。
Have a great day,
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信

6,465件の閲覧回数
明锐陈
Contributor I

您好!

编号:UM10470

名称:LPC178X/7X用户手册

版本:修订版1.5-2011年7月6日

如下图:

pastedImage_1.png

0 件の賞賛
返信

6,465件の閲覧回数
jeremyzhou
NXP Employee
NXP Employee

Hi 明锐 陈,

谢谢回复,

GPREG[0~4]寄存器最主要的功能是作为LPC 掉电前重要数据的存储“仓库”,除非RTC模块也掉电复位可以将其复位,不然不受芯片复位的影响,一直会保存存储的数据,参考手册说的已经蛮清楚了。

pastedImage_2.png


Have a great day,
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信

6,465件の閲覧回数
明锐陈
Contributor I

您好!谢谢回复。

另外有以下疑问:

1、复位的“NC”值是否表示任意值?

2、RTC复位后,先给VBAT供电,再给VDD供电。与只有VDD供电,GPREG[0~4]寄存器的值不一样。这是否正常?

能否电话沟通?我的手机号码86-18664774072

0 件の賞賛
返信

6,465件の閲覧回数
jeremyzhou
NXP Employee
NXP Employee

Hi 明锐 陈,

1) 复位的“NC”值是否表示任意值?

    不是任意值的,而是无法预料,因为里面存储的是上次写的数据。

2、RTC复位后,先给VBAT供电,再给VDD供电。与只有VDD供电,GPREG[0~4]寄存器的值不一样。这是否正常?

    我手上没有LPC1778,我测试了LPC1788,他们公用同一个参考手册,所以RTC IP应该是一样的,测试结果是:GPREG[0~4]寄存器的值会保留上次写的值,当RTC 重新上电时,不管RTC是通过独立电源供电或者通过VDD来供电的。

Have a great day,
TIC

 

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信

6,465件の閲覧回数
明锐陈
Contributor I

您好!谢谢回复!

我用的是LPC1788,在量产过程中,通一批板,RTC复位后(VBAT和VDD都断开),然后上电直接读取GPREG[0~4]的值,80%的板卡GPREG[0~4]为0,20%的为其他值。没有保留上一次的值。与您的实验结果完全不一致。测试代码见下面。

另外,对您的实验有以下疑问:

1、RTC重新上电时,是否确保之前VBAT和VDD都断开?

2、VBAT前面是否有储能电容?能否把电池去掉,VBAT引脚进行放电,然后做一次实验?

希望可以得到深圳这边的FAE现场支持。

谢谢!

代码1,先对寄存器写值,若VBAT有电(不复位),GPREG[0~4]值不变

int main (void)
{
int test0,test1,test2,test3,test4,i;
SystemInit();
LPC_RTC->GPREG0 = 0x07654321;
LPC_RTC->GPREG1 = 0x17654321;
LPC_RTC->GPREG2 = 0x27654321;
LPC_RTC->GPREG3 = 0x37654321;
LPC_RTC->GPREG4 = 0x47654321;
test0 = LPC_RTC->GPREG0;
test1 = LPC_RTC->GPREG1;
test2 = LPC_RTC->GPREG2;
test3 = LPC_RTC->GPREG3;
test4 = LPC_RTC->GPREG4;
i = 0;
}

代码2,对寄存器读值

int main (void)
{
int test0 = 0;
int test1 = 0;
int test2 = 0;
int test3 = 0;
int test4 = 0;

SystemInit();
GPIOInit();

LPC_GPIO3->DIR |= LED3;
LPC_GPIO3->SET = LED3;
test0 = LPC_RTC->GPREG0;
test1 = LPC_RTC->GPREG1;
test2 = LPC_RTC->GPREG2;
test3 = LPC_RTC->GPREG3;
test4 = LPC_RTC->GPREG4;

}

0 件の賞賛
返信

6,465件の閲覧回数
jeremyzhou
NXP Employee
NXP Employee

Hi 明锐 陈

测试是在LPC1788-32 Developer's Kit 上做的,VBAT没有纽扣电池作为backup,

我的建议你可以先找供货代理商的DFAE解决,现场会比在线了解更多问题细节,而且他们有渠道联系FAE,

我们这边没有办法联系local FAE,望理解。
Have a great day,
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信

6,465件の閲覧回数
明锐陈
Contributor I

您好,能否提供LPC1788-32 Developer's Kit原理图给我参考一下?

希望把您的测试代码提供给我,在我的板子上进行测试。

现处于量产,等待交货。比较棘手。

我的邮箱:chenmr1@163.com

谢谢!

0 件の賞賛
返信

6,462件の閲覧回数
jeremyzhou
NXP Employee
NXP Employee

Hi 明锐 陈,

I use the periph_rtc demo in the LPCOpen library, and display these value in debug window by inserting the breakpoints.

Chip_RTC_Init(LPC_RTC);

     /* Set current time for RTC 2:00:00PM, 2012-10-05 */
     FullTime.time[RTC_TIMETYPE_SECOND]  = 0;
     FullTime.time[RTC_TIMETYPE_MINUTE]  = 0;
     FullTime.time[RTC_TIMETYPE_HOUR]    = 14;
     FullTime.time[RTC_TIMETYPE_DAYOFMONTH]  = 5;
     FullTime.time[RTC_TIMETYPE_DAYOFWEEK]   = 5;
     FullTime.time[RTC_TIMETYPE_DAYOFYEAR]   = 279;
     FullTime.time[RTC_TIMETYPE_MONTH]   = 10;
     FullTime.time[RTC_TIMETYPE_YEAR]    = 2012;

     Chip_RTC_SetFullTime(LPC_RTC, &FullTime);
        
        
        LPC_RTC->GPREG[0]= 0x55555555;
        LPC_RTC->GPREG[1]= 0x56565656;
        LPC_RTC->GPREG[2]= 0x65656565;
        LPC_RTC->GPREG[3]= 0x85858585;
        
          

     /* Set ALARM time for 17 seconds from time */
     FullTime.time[RTC_TIMETYPE_SECOND]  = 17;
     Chip_RTC_SetFullAlarmTime(LPC_RTC, &FullTime);

     /* Set the RTC to generate an interrupt on each second */
     Chip_RTC_CntIncrIntConfig(LPC_RTC, RTC_AMR_CIIR_IMSEC, ENABLE);

     /* Enable matching for alarm for second, minute, hour fields only */
     Chip_RTC_AlarmIntConfig(LPC_RTC, RTC_AMR_CIIR_IMSEC | RTC_AMR_CIIR_IMMIN | RTC_AMR_CIIR_IMHOUR, ENABLE);‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

pastedImage_1.png

I've attached the sch, please checking it.

Have a great day,
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信