답변:
이 답변은 여전히 정확하고,보다 상세하게 변화의 본질을 설명하지만, 단지 실행해야 현재 Raspbian의 대부분의 사용자
sudo raspi-config
선택은Interfacing Options / Serial
당신이 원하는하지 않는 경우 다음을 지정 시리얼 콘솔 (아마 더)를 당신이 원하는 경우 다음 직렬 포트 하드웨어를 사용할 수 아마 ( 예). 그런 다음/dev/serial0
직렬 포트에 액세스하는 코드를 사용 하십시오.
Raspberry Pi3, Pi3B +, PiZeroW의 BCM2837에는 2 개의 UART가 있지만 (이전 버전과 동일) Bluetooth 기능을 지원하기 위해 완전한 기능을 갖춘 PL011 UART가 헤더 핀에서 Bluetooth 칩으로 이동하고 미니 UART가 헤더 핀에서 사용 가능하게되었습니다. 8 & 10.
이것은 직렬 인터페이스 사용자에게 많은 영향을 미칩니다.
는 /dev/ttyAMA0
이전에 UART 이제 블루투스 연결 액세스하는 데 사용됩니다.
miniUART는 현재에서 제공됩니다 /dev/ttyS0
.
최신 운영 시스템 소프트웨어에서는이 /dev/serial0
당신이 교체 할 수 있도록 적절한 장치를 선택하는 /dev/ttyAMA0
과 /dev/serial0
와 PI3 및 이전 모델에 동일한 소프트웨어를 사용합니다.
불행히도 여러 가지 다른 결과가 있습니다.
The mini UART is a secondary low throughput UART
intended to be used as a console.
The mini Uart has the following features:
• 7 or 8 bit operation.
• 1 start and 1 stop bit.
• No parities.
• Break generation.
• 8 symbols deep FIFOs for receive and transmit.
• SW controlled RTS, SW readable CTS.
• Auto flow control with programmable FIFO level.
• 16550 like registers.
• Baudrate derived from system clock.
패리티에 대한 지원이없고 처리량이 제한되지만 후자는 대부분의 사용에 영향을 미치지 않습니다.
시스템 클럭 감소 또는 저전력 모드 등의 경우이 클럭이 동적으로 변경 될 수 있으므로 miniUART를 쓸모 없게 만드는 킬러 기능 "시스템 클럭에서 파생 된 보레이트"가 있습니다.
/boot/config.txt
제거를 수정하면 끝에 다음 줄을 추가하여이 종속성을 제거합니다.
core_freq=250
이것은 문제를 해결하고 거의 영향을 미치지 않는 것으로 보입니다. SPI clock frequency
하고 ARM Timer
또한 시스템 클럭에 따라 달라집니다.
기괴한 이유로 최신 4.4.9 커널을 사용하는 Pi3의 기본값은 UART 비활성화입니다. 을 활성화하려면 변경할 필요
enable_uart=1
에/boot/config.txt
. (이것은 또한core_freq
더 이상 필요하지 않도록 수정합니다 .)
마지막으로 Bluetooth를 사용하지 않거나 불필요하게 사용하는 경우 장치 트리에서 포트를 다시 교환 할 수 있습니다. 가 pi3-miniuart-bt
와 pi3-disable-bt
에 설명되어 있습니다 모듈 /boot/overlays/README
.
마침내 이것은 내 pi3에 대한 작업을 얻었습니다 (OS : 데비안 제시)
이 6 단계를 주의해서 따르십시오 .
1 단계-Raspbian Jessie를 SD 카드에 설치하고 네트워크에 연결되면 Pi를 부팅합니다. 터미널 또는 데스크탑 및 쉘을 통해 로그인합니다.
sudo raspi-config
파일 시스템을 확장하고 고급 페이지에서 직렬을 활성화 한 후 종료 및 재부팅하십시오.
2 단계-jessie 새 릴리스가있는 경우 필요하지 않습니다.
sudo apt-get update
sudo apt-get upgrade
3 단계-다음과 같은 장치 트리 설정
Raspberry Pi 3 블루투스를 비활성화하려면 /boot/config.txt 에 장치 트리를 추가하십시오 .
sudo nano /boot/config.txt
파일 끝에 추가
* blutooth를 miniuart 포트로 변경하려면 (나쁜)
dtoverlay=pi3-miniuart-bt
* blutooth를 비활성화하려면 (좋은)
dtoverlay=pi3-disable-bt
변경 사항을 저장하고 편집기를 종료하십시오.
4 단계-파이 재부팅
sudo reboot
5 단계-
a) 시리얼 콘솔을 비활성화하려면 다음을 사용하여 파일을 편집하십시오.
sudo nano /boot/cmdline.txt
단어 " console=serial0,115200
"또는 " console=ttyAMA0,115200
"제거
종료하고 변경 사항을 저장하십시오
b) 시리얼 콘솔을 활성화하려면 다음을 사용하여 파일을 편집하십시오.
sudo nano /boot/cmdline.txt
파일을 다음과 같이 변경하십시오.
dwc_otg.lpm_enable=0 console=tty1 console=serial0(or ttyAMA0),115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
종료하고 변경 사항을 저장하십시오
6 단계-파이 재부팅
sudo reboot
------------------ 그게 다야 , 재미있게 ---------------------------- ---
Naseer의 대답은 정확하지만 최신 rasbian을 방금 비추었다면 약간 정교합니다. 내가해야 할 일은 config.txt에 다음 줄을 추가하는 것입니다 (예 : fat32 파티션의 SD 카드를 연결하는 창에서).
dtoverlay=pi3-disable-bt
그런 다음 플러그를 꽂으면 파이가 콘솔 핀에 직접 인쇄합니다.
9600
.core_freq=250
ma python 스크립트에서 보드 속도를 설정 한 다음 구성 하면 작동 합니까? 또한 raspberrypi.stackexchange.com/questions/47379/…를 볼 수 있다면 좋을 것입니다. 감사합니다!