Microchip MDDFS 라이브러리를 사용하여 데이터를 SD 카드에 저장하는 장치에서 작업하고 있습니다. 로거는 1 분마다 최대 1 개의 항목 (56 바이트)으로 데이터를 기록합니다. 문제는 쓰기 시퀀스 도중에 언제라도 장치의 전원이 끊길 수 있다는 것입니다. 손상으로부터 데이터를 보호하는 가장 좋은 방법이 무엇인지 궁금합니다. 전원이 끊어졌을 때 파일이 열려 있으면 마지막 파일 닫기 후 파일에 기록 된 모든 데이터가 손실됩니다. 쓰기 시퀀스 도중에 전원이 끊기는 경우에도 마찬가지입니다.
쓰기 절차가 자주 발생하지 않기 때문에 데이터가 기록 될 때마다 파일을 열고 데이터를 쓴 다음 파일을 닫을 수 있습니다. 이 방법으로 시간이 지남에 따라 SD 카드가 손상됩니까?
다른 접근 방식은 파일을 열어 두는 것이지만 10 또는 50 쓰기마다 파일을 닫았다가 다시 열 수 있습니다.
또한 메모리에 데이터를 버퍼링 한 다음 kbyte 정도 후에 데이터를 플러시 할 수도 있습니다.
내가 마지막으로 생각한 것은 회로에서 파일을 빠르게 닫을 수 있도록 전원 연결이 끊어진 후 오랫동안 내 pic / sd 카드에 전원을 공급할 수있는 큰 커패시터를 추가 할 수 있다는 것입니다. 이 방법의 문제점은 파일을 닫거나 데이터를 저장하는 데 걸리는 시간이 매우 일관성이 없다는 것입니다. 내 이해에 따르면,이 시간은 파일이있는 플래시 페이지의 현재 위치에 따라 매우 달라질 수 있습니다.
어쨌든, 당신은 무엇을 제안 하시겠습니까?