picocom - 16진수 바이트를 읽는 방법

picocom - 16진수 바이트를 읽는 방법

나는 picocom을 사용하여 직렬 포트를 읽습니다. 나는 이런 식으로 16진수 바이트를 표시하려고 합니다(남성):

picocom --imap ???hex -b 19200 /dev/ttyS0

그러나 이것은 작동하지 않습니다. 뭐가 문제 야?

답변1

picocom매뉴얼 페이지 에서 :

--imap <map> (input mappings)
<map> is a comma-separated list of one or more of ...
picocom --imap spchex,tabhex,crhex,lfhex,nrmhex,8bithex -b 19200 /dev/ttyS0

답변2

정말 "???hex"라고 썼나요? 그렇다면 작동하지 않는 이유입니다.

그러나 가장 논리적인 대답은 picocom에 존재하는 많은 매핑 옵션을 참조하고 있다는 것입니다. 귀하의 라인은 이미 괜찮습니다. 제 생각에는 귀하의 picocom 버전이 이러한 기능을 사용하기에는 너무 오래된 것 같습니다.

예를 들어 Raspberry Pi에 v1.7이 설치되어 있는데 이 옵션에서는 작동하지 않지만 최신 v3.1에서는 잘 작동합니다.

답변3

이것은 ???문자 그대로의 의미가 아닙니다. The "to hex" mappings (???hex) replace the respective characters with their hexadecimal representation (in square brackets), like this:매뉴얼 페이지의 문장은 다음을 참조합니다.

       • spchex (map special chars (< 0x20 || 0x7f), excl.  CR, LF, and TAB to hex)

       • tabhex (map TAB to hex)

       • crhex (map CR to hex)

       • lfhex (map LF to hex)

       • 8bithex (map chars with 8th-bit set to hex)

       • nrmhex (map normal ascii chars (0x20 <= c < 0x7f) to hex)

내 생각에 당신이 달리고 싶은 것은

picocom --imap 8bithex -b 19200 /dev/ttyS0

관련 정보