ฉันกำลังทำงานกับอุปกรณ์ที่ใช้ไลบรารี Microchip MDDFS เพื่อเก็บข้อมูลลงในการ์ด SD ตัวบันทึกจะบันทึกข้อมูลในอัตราสูงสุด 1 รายการ (56bytes) ทุกนาที ปัญหาคืออุปกรณ์อาจสูญเสียพลังงานในเวลาใดก็ได้ซึ่งอาจอยู่ในช่วงกลางของลำดับการเขียน ฉันสงสัยว่าอะไรคือวิธีที่ดีที่สุดในการปกป้องข้อมูลของฉันจากการทุจริต ฉันพบว่าหากไฟล์นั้นถูกเปิดเมื่อไฟดับข้อมูลทั้งหมดที่ถูกเขียนไปยังไฟล์หลังจากการปิดไฟล์ครั้งสุดท้ายจะหายไป ฉันไม่ทราบว่าสิ่งเดียวกันนี้เป็นจริงหรือไม่หากพลังงานสูญหายระหว่างการเขียนลำดับ
เนื่องจากโพรซีเดอร์การเขียนไม่ได้เกิดขึ้นบ่อยนักฉันสามารถเปิดไฟล์เขียนข้อมูลแล้วปิดไฟล์ได้ทุกครั้งที่มีการบันทึกข้อมูล วิธีการนี้จะทำให้การ์ด sd เสียหายตลอดเวลาหรือไม่
อีกวิธีคือให้เปิดไฟล์ไว้ แต่หลังจากเขียนครบ 10 หรือ 50 ครั้งฉันสามารถปิดไฟล์แล้วเปิดใหม่อีกครั้ง
ฉันยังสามารถบัฟเฟอร์ข้อมูลในหน่วยความจำแล้วล้างข้อมูลบางครั้งอาจหลังจาก kbyte หรือดังนั้น
ความคิดสุดท้ายที่ฉันมีในวงจรของฉันฉันสามารถเพิ่มตัวเก็บประจุขนาดใหญ่ที่จะให้พลังงานกับการ์ด pic / sd ของฉันนานพอหลังจากที่ไฟฟ้าถูกตัดการเชื่อมต่อเพื่อปิดไฟล์อย่างรวดเร็ว ปัญหาของวิธีนี้คือเวลาที่ใช้ในการปิดไฟล์และ / หรือบันทึกข้อมูลนั้นไม่สอดคล้องกันมาก จากความเข้าใจของฉันคราวนี้สามารถขึ้นอยู่กับตำแหน่งปัจจุบันในหน้าแฟลชที่ไฟล์นั้นมีอยู่
ยังไงพวกคุณจะแนะนำอะไร?