추가 읽기

추가 읽기

나는스피커 코어 v2.0이 보드가 다른 보드와 통신할 수 있도록 UART 인터페이스(보드에는 Uart 포트에 연결된 USB-TTL 어댑터가 있음)를 사용하고 싶습니다.

설정[편집]

직렬 TTL 변환기를 노트북에 연결하고 RespeakerCore의 TX, RX 및 GND 핀에 연결했습니다. 그런 다음 랩톱에서 미니 콘솔(올바른 전송 속도 및 포트 설정 포함)을 열고 Respeaker에서 다른 콘솔을 열었습니다. Respeaker를 켜보니 미니텀에 아래와 같은 내용이 떴습니다.

Starting kernel ...

[    0.065704] /cpus/cpu@f00 missing clock-frequency property
[    0.071689] /cpus/cpu@f01 missing clock-frequency property
[    0.077712] /cpus/cpu@f02 missing clock-frequency property
[    0.083677] /cpus/cpu@f03 missing clock-frequency property
[    0.829278] rk-vcodec 20020000.vpu-service: could not find power_model node
[    0.856875] rockchip-vop 20050000.vop: invalid resource
[    0.862758] rockchip-vop 20050000.vop: invalid resource
[    0.868586] rockchip-vop 20050000.vop: missing rockchip,grf property
[    0.876380] i2c i2c-0: of_i2c: modalias failure on /hdmi@200a0000/ports
[    2.037851] cpu cpu0: Failed to get pvtm
[    2.122396] rockchip-dmc dmc: Failed to get pvtm
[    2.128437] rockchip-dmc dmc: failed to get vop bandwidth to dmc rate
[    2.139954] rknandbase v1.2 2018-05-08
[    2.612237] rk_gmac-dwmac 30200000.ethernet: Can not read property: tx_delay.
[    2.620241] rk_gmac-dwmac 30200000.ethernet: set tx_delay to 0x30
[    2.627017] rk_gmac-dwmac 30200000.ethernet: Can not read property: rx_delay.
[    2.635007] rk_gmac-dwmac 30200000.ethernet: set rx_delay to 0x10
[    2.642046] rk_gmac-dwmac 30200000.ethernet: cannot get clock clk_mac_speed
[    5.638765] get ac108 regulator name failed 
[    5.749516] get ac108 regulator name failed 
[    5.760861] mali-utgard 20001000.gpu: Failed to get pvtm
[    5.938710] devfreq 20001000.gpu: Couldn't update frequency transition information.
[    6.153327] ac108_write error->[REG-0x00,val-0x12]
[    6.175033] ac108_write error->[REG-0x00,val-0x12]
[    9.971169] rk_gmac-dwmac 30200000.ethernet: rk_get_eth_addr: mac address: 72:1c:0a:8e:4a:4a

Debian GNU/Linux 9 glutamate ttyS2

respeaker.io Debian Image 20180801

Support/FAQ: http://respeaker.io

glutamate login:

TX 및 RX 핀은 직렬 콘솔로 사용됩니다.

userk@glutamate:~$ setserial -g /dev/ttyS[0123]
/dev/ttyS0, UART: 16550A, Port: 0x0000, IRQ: 29
/dev/ttyS1, UART: 16550A, Port: 0x0000, IRQ: 30
/dev/ttyS2, UART: 16550A, Port: 0x0000, IRQ: 31
/dev/ttyS3, UART: unknown, Port: 0x0000, IRQ: 0

제가 관심을 갖고 있는 ttyS2 장치를 사용하고 있는 서비스가 있습니다.

userk@glutamate:~$ sudo systemctl status | grep tty
           │ ├─system-serial\x2dgetty.slice
           │ │ ├─[email protected]
           │ │ │ └─721 /sbin/agetty --keep-baud 115200,38400,9600 ttyS2 vt220
           │ │ └─[email protected]
           │ │   └─747 /sbin/agetty --keep-baud 115200,38400,9600 ttyGS0 vt220
           │ │ └─767 brcm_patchram_plus --enable_hci --no2bytes --use_baudrate_for_download --tosleep 200000 --baudrate 1500000 --patchram /system/etc/firmware/bcm43438a0.hcd /dev/ttyS1
           │ ├─system-getty.slice
           │ │ └─[email protected]
           │ │   └─720 /sbin/agetty --noclear tty1 linux
               │ ├─1050 grep tty

내가 시도한 것

다음을 사용하여 서비스 중지를 시도했습니다.

sudo systemctl stop [email protected]

하지만 5초 후에 자동으로 다시 시작됩니다.

질문

잠시 후 시스템은 콘솔 출력을 ttyS2 포트로 다시 보내기 시작합니다.

ttyS2에 대한 직렬 콘솔 링크를 완전히 제거할 수 있습니까?

해결책

서비스를 중지하고 비활성화하면 됩니다.

sudo systemctl stop [email protected]
sudo systemctl disable [email protected]

그리고 의사소통은 양방향입니다.

답변1

당신은 잘못된 곳을 찾고 있습니다.

이를 구동하는 기본 구성 항목은 console부트로더를 통해 명령줄에서 커널에 제공되는 설정입니다. 시작할 직렬 콘솔 서비스를 생성기에 알려줍니다. 커널 콘솔 출력을 보낼 위치를 커널에 알려줍니다. /dev/console출력을 보낼 위치를 커널에 알려줍니다 . 직렬 장치를 콘솔로 사용하지 않으려면 조정이 필요합니다.

단, 서비스가 제공되지 않으니 주의하세요 [email protected]. 당신에게는 [email protected]서비스와 [email protected]서비스가 있습니다. 따라서 시스템은 이것이 ttyGS0직렬 콘솔 장치라고 생각하지만 분명히 더 이상 그렇게 생각하지 않습니다 ttyS2.

[email protected]아마 언젠가는 손으로 만들어 본 적이 있을 것입니다 . 이는 systemd에 의해 설정된 표준이 아닙니다. systemd에 의해 설정됩니다. 왜냐하면 그것은 틀렸기 때문입니다. 이 [email protected]템플릿은 직렬 장치에 적합하지 않으며 커널 가상 터미널 장치용으로 설계되었습니다. 올바른 템플릿이 [email protected]설정되어 있습니다.다른시스템 장비하다콘솔이라고 생각하세요.

그래서 비활성화되었습니다 [email protected].

추가 읽기

관련 정보