Tôi có một mạch dễ dàng được nối lên, với một đèn LED được kết nối với chân 18 trên tham chiếu BOARD. Tôi chạy một chương trình đơn giản để đặt chân 18 lên CAO, bật đèn LED và sau đó vài giây, tôi đặt chân 18 thành THẤP và cuối cùng tôi kết thúc chương trình của mình với GPIO.cleanup ().
Lúc này đèn LED tắt, có nghĩa là chân 18 đã tắt (THẤP). Bây giờ tôi khởi động lại hoặc khởi động lại Raspberry Pi của mình và khi nó khởi động lại, đèn LED trên pin 18 sẽ bật lại, mặc dù pin đã tắt trước khi tôi khởi động lại Raspberry Pi.
Tại sao điều này có thể xảy ra? Làm cách nào tôi có thể định cấu hình một pin cụ thể, như pin 18 bị tắt khi Raspberry Pi khởi động? Và tôi không muốn bất kỳ chân GPIO nào ở mức CAO khi Raspberry Pi khởi động.
Tôi lo ngại về vấn đề này, vì giả sử rằng pin 18 được kết nối với động cơ DC trên robot và khi Raspberry Pi khởi động, động cơ sẽ bật và đây không phải là điều tôi muốn vì điều đó sẽ cản trở toàn bộ cấu trúc của robot và một số động cơ có thể khởi động và các động cơ khác sẽ không hoạt động, tùy thuộc vào các chân mà chúng được kết nối. Tôi muốn tự bật tất cả các động cơ một cách đồng bộ.
Một điều khác là không phải tất cả các chân có vấn đề này. Một số ở lại khi Raspberry Pi khởi động, nhưng những người khác thì không.
/sys/class/gpio
và xuất mã pin 18, hệ thống sẽ nói trạng thái nào nếu bạn không thay đổi gì?
echo
, mà viết, tức là, đặt một cái gì đó. Sau khi bạn xuất nó, bạn muốn kiềm chế điều đó và chỉ sử dụng cat
, đọc, để kiểm tra hướng và giá trị.