欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機意外掉電數據快速保存方法 [打印本頁]

作者: qqq333    時間: 2024-7-15 11:11
標題: 單片機意外掉電數據快速保存方法
最近在項目上遇到需要意外掉電保存20個字節的數據,因為要保存查看這些信息,所以數據保存在外部eeprom里面,但是掉電瞬間系統供電不能長時間維持寫入,,方法將要寫的數據先保存在單片機內部flash里面,開機的時候在寫到外部存貯器,STM32本身具有低電壓檢測,這樣就不需要硬件電路配合就可以簡單的實現大量數據意外掉電保存的要求,目前測試良好,提供給大家,看看哪位高人還有什么方法能決絕這樣類似問題。

作者: 藍藍小星星    時間: 2024-7-15 17:17
還可以用鐵電,寫入次數接近無限次,無視掉電
作者: Y_G_G    時間: 2024-7-15 18:32
藍藍小星星 發表于 2024-7-15 17:17
還可以用鐵電,寫入次數接近無限次,無視掉電

鐵電一般是100億次以上,但并不是無限的,一樣的要掉電檢測的
作者: 人中狼    時間: 2024-7-15 20:07
要保存的數據在調電瞬間有更新的話該怎么保存呢
作者: 藍藍小星星    時間: 2024-7-16 01:52
Y_G_G 發表于 2024-7-15 18:32
鐵電一般是100億次以上,但并不是無限的,一樣的要掉電檢測的

鐵電內部就是用的ram,沒有寫入等待時間。肯定是無限次,只是廠家保守了。掉電還寫入引起出錯的問題,這是程序邏輯問題,不是鐵電的問題。
作者: szqinyi    時間: 2024-7-16 07:46
用了N年的掉電數據源保存!
void PVD_NVIC_Configuration(void)
{
    NVIC_InitTypeDef NVIC_InitStructure; //中斷優先級配置
    EXTI_InitTypeDef EXTI_InitStructure;

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);

    NVIC_InitStructure.NVIC_IRQChannel = PVD_IRQn;
    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
    NVIC_Init(&NVIC_InitStructure);

    EXTI_StructInit(&EXTI_InitStructure);
    EXTI_InitStructure.EXTI_Line = EXTI_Line16;             //PVD連接到中斷線16上
    EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;     //使用中斷模式
    EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising;  //電壓低于閥值時產生中斷
    EXTI_InitStructure.EXTI_LineCmd = ENABLE;               //使能中斷線
    EXTI_Init(&EXTI_InitStructure);                         //初始

    PWR_PVDLevelConfig(PWR_PVDLevel_2V8);//設定監控閥值
    PWR_PVDCmd(ENABLE);//使能PVD
}
/*-------------------------------------------------------------------------------
PVD中斷
---------------------------------------------------------------------------------*/
void PVD_IRQHandler(void)
{
    if(EXTI_GetITStatus(EXTI_Line16) != RESET)
    {
       這里些:代碼,需要保持的數據。。。
        EXTI_ClearITPendingBit(EXTI_Line16);//清中斷
    }
}
作者: a399288395    時間: 2024-7-16 08:45
如果硬件不能更改; 就用鐵電吧;幾乎接近無限次寫入!  其次再考慮一些偏門的方案,比如寫入到時鐘芯片內
作者: qqq333    時間: 2024-7-16 15:01
szqinyi 發表于 2024-7-16 07:46
用了N年的掉電數據源保存!
void PVD_NVIC_Configuration(void)
{

這個程序本身沒有任何問題,只是斷電系統耗電太大,寫入數據較大,就會出問題




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1