이 라이브러리는 ESP32와 함께 Hobbytronics의 USB 호스트 보드 - USB Flash Drive Reader/Writer를 사용하는 데 도움을주기위한 도서관 개발입니다.
이사회에는 이미 UART가 보낸 프로세스 명령을 보유한 칩이 있지만, 일을 덜 복잡하게 만들기 위해 일부 기능을 썼으므로 일부 세부 사항에 대해 걱정할 필요가 없습니다.
Hobbytronics 웹 페이지는 유용 할 수있는 명령에 대한 정보를 제공합니다. 또한 몇 가지 예가 있지만 Arduino에게는 적용이 있습니다.
main/usb2esp_demo_main.c에는 몇 가지 작업이 있습니다
ESP를 보여주기 위해 LED를 깜박이는 작업이 작동합니다.
10ms마다 소프트웨어 중단을 호출하는 작업. Ideia는 가능한 한 많이 UART를 방해하는 것입니다.
USB의 메시지를 기다리는 작업.
USB에 대한 명령을 보내는 작업.
TX_TASK에서 나는 각 기능을 사용하는 방법에 대한 몇 가지 예를 썼습니다.
5 가지 예가 있습니다.
예 = 0-> 단자 모드에서 도움말을 표시하십시오. 보드 속도를 테스트하는 것이 유용합니다
예 = 1-> 파일을 만들고 쓰기
예 = 2-> 파일 읽기
예 = 3-> 파일을 복사, 삭제 및 바꾸십시오
Ex = 4-> 디렉토리 작업
예 = 5-> 쓰기 128kb 문자열
참고 : Ex 5에서는 큰 문자열을 씁니다. 우리는 uart_write_bytes 기능이 WDT를 공급한다는 것을 보여주기 위해이 작업을 수행했으며, 이에 대해 걱정할 필요가 없습니다.
모든 함수는 전송 된 바이트 수를 반환합니다. 더 유용한 것을 위해 미래에 바뀔 수 있습니다.
int sendData(uart_port_t UART_NUM, const char* data)
UART_NUM 에 의해 데이터를 보내는 기능. 내부 사용.
int setTime(uart_port_t UART_NUM, char* time);
USB 브레이크 아웃에는 내부 시간 시계가 있지만 배터리가 없으므로 켜질 때마다 설정해야합니다. 시간은 [hh : mm : ss] 형식이어야합니다.
int setDate(uart_port_t UART_NUM, char* date);
USB 브레이크 아웃에는 내부 시간 시계가 있지만 배터리가 없으므로 켜질 때마다 설정해야합니다. 날짜는 [yyyy-mm-dd] 형식이어야합니다.
int createFile(uart_port_t UART_NUM, char* filename);
Filename 이라는 이름으로 실제 디렉토리에서 파일을 만듭니다.
int appendFile(uart_port_t UART_NUM, char* filename);
Filename 이라는 실제 디렉토리에서 파일을 엽니 다.
int writeOnFile(uart_port_t UART_NUM, char* s, int ssize);
파일이 열거 나 생성되었으므로 파일에 Size Ssize가 있는 문자열 S를 작성하십시오.
int closeFile(uart_port_t UART_NUM);
파일을 닫은 상태에서 Control+Z 명령을 보내십시오.
int dir(uart_port_t UART_NUM, char* filename);
Bash ls 와 유사합니다. 파일 이름 이 ""인 경우 모든 파일이 나열됩니다. Filename 이 "*.txt"인 경우 txt 파일 만 나열됩니다.
int fileSize(uart_port_t UART_NUM, char* filename, int mode);
해당 파일 크기를 계산합니다. 바이트 수 (Mode = Byte) 또는 선수 (Mode = Line) 수를 계산할 수 있습니다.
int readFile(uart_port_t UART_NUM, char* filename);
파일 이름 으로 전체 파일을 읽으십시오.
int readLine(uart_port_t UART_NUM, char* filename, int line);
파일 파일 이름의 줄 라인 만 읽으십시오.
int readNextLine(uart_port_t UART_NUM, char* filename);
readLine() 명령을 사용한 후에는 readNextLine() 사용하여 다음 파일 파일 이름을 읽을 수 있습니다.
int readSection(uart_port_t UART_NUM, char* filename, int start, int len);
파일 파일 이름 의 일부를 읽으십시오. 이 부분은 바이트 스타트 에서 시작하여 바이트 스타트 + LEN 에서 끝납니다.
int readNextSection(uart_port_t UART_NUM, char* filename, int len);
명령 readSection() 사용한 후에는 readNextSection() 사용하여 파일 파일 이름 의 다음 섹션을 읽을 수 있습니다. 예를 들어 : filename.txt는 "abcdef"readsection (uart_num, "filename.txt", 0, 4); // UART는 "abcd"readnextsection (uart_num, "filename.txt", 2)을 수신합니다. // UART는 "ef"를받습니다.
int copyFile(uart_port_t UART_NUM, char* origin, char* destiny);
파일 원점을 파일 데스티니 로 복사하십시오.
int delFile(uart_port_t UART_NUM, char* filename);
파일 파일 이름을 삭제합니다.
int renameFile(uart_port_t UART_NUM, char* oldname, char* newname);
파일의 이름을 newName 으로 바꾸십시오.
int makeDir(uart_port_t UART_NUM, char* dirname);
Bash mk 와 동일하게 이름 Dirname이 있는 새 디렉토리를 만듭니다.
int changeDir(uart_port_t UART_NUM, char* dirname);
Bash cd 에 해당하는 디렉토리 Dirname 으로 변경됩니다.
int removeDir(uart_port_t UART_NUM, char* dirname);
디렉토리 Dirname을 제거하십시오.
int setBaud(uart_port_t UART_NUM, char* baudrate);
보드 속도를 보드 레이트 로 변경하십시오. 허용 값 : [2400 | 4800 | 9600 | 14400 | 19200 | 38400 | 57600 | 115200]