cr315 发表于 2025-2-18 11:00

断电保存数据 上电读取nm1120

断电保存数据我是芯片断电定时器里读取I/O口高低电平,达到时间保存 有时候板子用的时间久了 就会保存读取失败 芯片复位,大佬们看一下我的保存参数有问题吗?
void remeber()
{      
               
                        SYS_UnlockReg();
      FMC_Open();
                        set_data_flash_base(DATA_FLASH_TEST_BASE);
                  FMC_Erase(sudu_base);
                        FMC_Write(sudu_base, set_xiansudu);


                        FMC_Write(first_base,0x19);
                  FMC_Close();
      SYS_LockReg();
}


这个是启动读取参数
int main()
{      
                unsigned int i;               
                unsigned int j;
                /* Initialize at begining */


                /* Initialize all register setting*/      
          delay_ms(10);
                SYS_Init();
//                SYS_UnlockReg();      
          SYS_LockReg();
                EADC_Init();
                PGA_Init();
                GPIO_Init();
                ECAP_Init();      
                Timer0_Init();
                Timer1_Init();
                EPWM_Init();      
          USCI_UART_Open(USCI1, 9600);
                RXD_set();
                Motor_Start();
                u8_StopMotor_Flag=1;      
          SYS_UnlockReg();
    FMC_Open();//开始读取
          first_set_Flag=FMC_Read(first_base);
                if(first_set_Flag==0x19)
                {
                set_xiansudu=FMC_Read(sudu_base);

                }
                FMC_Close();
                WDT_Open(WDT_TIMEOUT_2POW14, 0, TRUE, FALSE);
                SYS_LockReg();
               


    set_para();//设置参数
          Motor_Start();
               
                get_shijichangdu(666666);
                TM1668_Init(size],size],size],size],size],size],0x01);//显示实际长度

                NVIC_Configuration();

yhu1983 发表于 2025-7-11 17:04

你有开看门狗。保存读取过程有可能因为时间长,没有喂狗,导致看么狗复位.

jcky001 发表于 2025-7-30 16:20

在电压不稳定时写入可能导致数据损坏或芯片复位。

cr315 发表于 2025-7-30 16:20

中断优先级冲突?

elephant00 发表于 2025-7-30 16:20

FMC_Erase()和FMC_Write()未检查返回值,无法确认操作是否成功。

stormwind123 发表于 2025-7-30 16:59

建议在电压检测比较器输出端增加施密特触发器,消除信号抖动。

flycamelaaa 发表于 2025-7-30 17:21

全局变量未保护。

powerantone 发表于 2025-7-30 19:22

看门狗配置有冲突。

probedog 发表于 2025-7-30 20:23

在电压跌落至2.7V前完成所有Flash操作.
页: [1]
查看完整版本: 断电保存数据 上电读取nm1120