자유게시판
[Discussion] How to write files into MBED microcontroller USB Device
2022. 9. 7 (수) 21:06
칩헤드
조회 51
좋아요 1
스크랩 1
댓글 2
본 주제는 질문이 아니라 discussion을 위하여 기고를 하고 있습니다. ^^
임베디드개발보드를 USB를 이용하여 Windows10 PC에 연결을 하면, 다음과 같이
윈도우 익스플로러 탐색기에 "MBED micro controller USB Device"가 인식이 됩니다.
* 스크린샷:
스토리지 공간으로 인식되는 공간은 3MB용량입니다. 이 정도 사이즈면 개발중에 생성하는
*.txt , * 펌웨어 이미지 파일을 보관하는 공간으로도 충분합니다.
그러나 탐색기에서 이러한 파일들을 write해보면 동작이 불가합니다.
왜 그럴까요? 우리가 탐색기를 통하여 파일을 write를 할수 없다면, mbed 헤더 파일 정의를 통해서
파일 쓰기가 가능할까요? 예를들면 아래와 같은 방법으로요.
#include "mbed.h" LocalFileSystem local("local"); // Create the local filesystem under the name "local" int main() { FILE *fp = fopen("/local/out.txt", "w"); // Open "out.txt" on the local file system for writing fprintf(fp, "Hello World!"); fclose(fp); } |
os.mbed.com 웹사이트에서 아래와 같은 방법을 통한 write의 예시도 보이고 있습니다.
int ConfigDisk::disk_write(const uint8_t * data, uint64_t block) { if (block == 4) parseFile(data); return 0; } int ConfigDisk::disk_read(uint8_t * data, uint64_t block) { if (block < 4) memcpy(data, &disk[block*512], 512); else if (block == 4) createFile(data); else memset(data, 0, 512); return 0; } |
E4DSLAB
2022.09.14 17:40
답글
|
mbed에서도 부트로더에 FAT 파일시스템을 올리는 예제는 많이 있더라고요. github소스를 참조하면 어렵지 않게 올릴 수 있을 거 같습니다.
로그인 후
참가 상태를 확인할 수 있습니다.