데이터 전송
- 구현됨:
- USB를 통해 가상 UART에 UART 연결 가능
- J-Link를 통한 RTT 및 ST-Link를 통한 RTT
- 작은 별도의 마이크로 컨트롤러는 항상 GPIO, I²C, SPI, CAN, LIN 등에 대한 인터페이스 브리지로 사용할 수 있습니다.
- FTDI의 칩을 사용하면 Adafruit FT232H 브레이크아웃, GPIO, I2C 및 SPI에 쉽게 액세스할 수 있는지 확인하세요.
디스플레이 서버 옵션
콘솔 내에서 trice ds
시작하고 옵션: third_party/alacritty, 로컬 또는 원격 PC에서 예를 들어 trice log -p COM15 -ds
와 같은 여러 Trice 도구 인스턴스에 연결하세요.
선적 서류 비치
- https://interrupt.memfault.com/blog/trice (약간 구식)
- Trice 사용자 매뉴얼(인터럽트 블로그 실제 정보도 포함)
- 마감된 안건을 포함한 이슈와 토론을 확인하세요.
- 대상 소스 코드, 특히 triceDefaultConfig.h를 읽으십시오.
- 터미널에서
trice help -all
실행하거나 tricehelpall_test.go를 읽어 CLI 옵션을 확인하세요. - ./internal/emitter/lineTransformerANSI.go를 살펴보고 선택적으로 수정합니다. (나중에
go install ./cmd/trice/...
해야 합니다.)
SEGGER-RTT를 통한 Direct-Out 모드에서 Trice 계측 프로젝트에 대해 VS-Code 및 Clang을 사용하여 디버깅
(자세한 내용은 ./examples 폴더를 참조하세요.)
트라이스 캐시
Trice 버전 0.70.0부터 trice insert
및 trice clean
명령에 Trice -cache
CLI 스위치를 추가로 사용할 수 있습니다. 이 스위치는 사용자가 자신의 홈 디렉터리에 .trice/cache
폴더를 생성할 때만 적용됩니다. (Trice 캐시 사양)
언제 사용하는가
trice i
컴파일 전 단계로 사용하고 trice c
컴파일 후 단계로 사용하여 작업할 때 프로젝트 소스 코드에 ID가 없으므로 컴파일 시간 동안에만 ID를 갖고 전체 속도를 높이려는 경우 물건.
작동 원리
Trice 캐시는 반복적으로 ID를 삽입하고 정리하는 것을 방지하기 위해 trice i
또는 trice c
통과한 모든 파일을 처리한 후 해당 파일의 복사본을 보관합니다. 복사본은 중간에 편집되지 않은 모든 파일에 대해 trice i
또는 trice c
와 동일한 결과를 얻는 데 사용됩니다. 편집된 파일은 정상적으로 처리되며 이후 캐시가 업데이트됩니다. 파일 수정 시간을 변경하지 않고 파일 복사가 이루어지기 때문에 파일에서 ID가 일시적으로 제거되더라도 빌드 시스템은 변경되지 않은 파일을 다시 처리하지 않습니다 .
힌트
빌드 시스템이 소스 파일도 수정하는 경우 특별한 주의가 필요합니다!
예를 들어 자동 포맷터는 tice insert
명령 전에 활성화되어야 합니다.
어떤 모드를 사용할 것인가?
- SEGGER_RTT를 사용한 개발 직접 모드를 권장합니다.
- 대부분의 사용 사례는 TRICE_MULTI_PACK_MODE(전송 데이터 감소)에서 TRICE_BUFFER == TRICE_RING_BUFFER(RAM 필요 감소)를 사용하여 지연 모드에서 처리할 수 있습니다.
프로젝트 현황
Trice는 완전히 사용할 수 있으며 알려진 버그가 없습니다(문제 참조).
미래
예를 들어 빠른 시작 도움말을 추가하면 문서가 개선될 수 있습니다. 원격 프로시저 호출과 같은 추가 기능을 설명할 수 있으며 C로 작성된 별도의 tlog를 사용하면 Go 지원 플랫폼뿐만 아니라 모든 플랫폼에서 로깅을 허용할 수 있습니다.
지원하다?
네, 제발요. 아니면 그냥 그렇게 하세요. ☺
Github 계정으로 후원자가 되세요
또는
또는
저장소 복제:
git clone https://github . com/rokath/trice . git
유사한 프로젝트
- baical.net (C)
- 호출 스택 로거 기능 계측(프로그램 실행 흐름을 추적하는 방법)
- 동적 Printf 중단점을 사용한 디버깅(Eclipse IDE 옵션)
- defmt (러스트)
- 진단 로그 및 추적(AUTOSAR)
- elog(최소 공간과 메모리 사용량을 갖춘 내장형 로거)
- J-Link 시스템 뷰(SEGGER)
- 기호를 사용한 로깅 - Embedonomicon
- MCU뷰어
- Memfault 컴팩트 로그 라이브러리
- 금속 직렬 라이브러리
- 자율 주행 차량을 위한 최소 구조적 로깅(C++, 비공개 소스 대화)
- 나노로그(리눅스 C++)
- Percepio Tracealyzer(시각적 추적 진단)
- 명아주 추적 토큰화
- Postform(C++에서 문자열 인턴을 사용한 형식 지정 실험 연기. defmt Rust 상자에서 영감을 받음)
- qpspy(C/C++)
- 실시간 바이너리 데이터 로깅/추적 툴킷
- Serial-Studio(데이터 시각화)
- Traces(Linux C/C++ 애플리케이션용 API 추적 프레임워크)
- Zepyr 사전 기반 로깅
(맨 위로)