คำถามติดแท็ก floating-pin

7
เครื่องกำเนิดตัวเลขสุ่มโดยใช้พิน GPIO?
ฉันเพิ่งอ่านคำถามโดยใช้เครื่องกำเนิดหมายเลขสุ่มของ AVRและพบวิธีสร้างเมล็ดสุ่มใน AVR: ใช้ "Secure AVR" เพื่อวัตถุประสงค์พิเศษ ใช้เซ็นเซอร์อุณหภูมิภายใน อ่าน EEPROM ที่ไม่ได้เขียน วัดช่วงเวลาระหว่างอินพุตของผู้ใช้ ใช้ขา ADC แบบลอย เหตุใดจึงไม่ใช่เพียงพินดิจิตอลเดียวที่ตั้งค่าเป็นอินพุทโดยไม่ต้องดึงขึ้นและลอย ในทางทฤษฎีที่ควรสร้างกระแสบิตสุ่ม ทำไมไม่ใช้สิ่งนี้? รัฐเปลี่ยนแปลงช้าเกินไปหรือไม่? มันมักจะติดที่ 1 หรือ 0 หรือไม่? มีปัญหาอื่นอีกไหม?

2
จะทำอย่างไรกับอินพุตอนาล็อกที่ไม่ได้ใช้?
ฉันกำลังทำงานกับแอปพลิเคชันที่ใช้ไมโครคอนโทรลเลอร์ ATmega328p atmel ฉันเริ่มด้วยรุ่น PDIP 28 แต่ตอนนี้ฉันต้องการใช้ 32 TQFP ซึ่งฉันสังเกตเห็นว่ามีอินพุตเพิ่มอีก 2 รายการหลังจากรวบรวมโครงการ Altium ของฉัน อินพุตเหล่านี้คือ ADC7: 6 ซึ่ง "ทำหน้าที่เป็นอินพุตแบบอะนาล็อกไปยังตัวแปลง A / D พินเหล่านี้ใช้พลังงานจากแหล่งจ่ายอะนาล็อกและทำหน้าที่เป็นแชนเนล ADC 10 บิต" ตามแผ่นข้อมูล ฉันได้อ่านออนไลน์ว่าบางคนได้ผลลัพธ์ที่ไม่รู้จักเมื่อพวกเขาใช้ ADC และมีอินพุตแบบลอย สิ่งที่ฉันอ่านพวกเขาทำคือเปิดใช้งานตัวต้านทานแบบเลื่อนลง แต่ฉันไม่เห็นวิธีกำหนดค่า (เนื่องจากพวกเขาไม่ได้อยู่ในพอร์ต I / O) แอปพลิเคชันของฉันไม่ได้ใช้ตัวแปลง A / D เลย อะไรคือการปฏิบัติที่ดีที่สุด? ฉันควรเชื่อมต่อตัวต้านทานแบบดึงลงภายนอกหรือไม่ ละเว้นข้อผิดพลาด Altium หรือไม่

2
Arduino ดิจิตอลอ่านผิด
ฉันตั้งค่า Arduino UNO ของฉันด้วยสายอินพุต 4 เส้นพวกเขาเชื่อมต่อกับพอร์ต 10, 11, 12, 13 พวกเขาเชื่อมต่อกับเขียงหั่นขนมของฉันโดยไม่มีอะไรเหลืออยู่นอกจากสายไฟ รหัสของฉันจะเป็น: Serial.println(digitalRead(13)); Serial.println(digitalRead(12)); Serial.println(digitalRead(11)); Serial.println(digitalRead(10)); สิ่งนี้คือหลังจากที่ฉันเชื่อมต่อพินกับ 5V หรือ 3V3 สั้น ๆ การอ่านจะเริ่มเป็นบ้าอย่างเช่น: 1 0 0 1 0 1 1 1 1 0 1 1 1 1 1 0 0 0 โดยไม่รู้สึกอะไร! โดยไม่ต้องมีสายเชื่อมต่อโดยตรงกับ VCC ของฉัน (5V หรือ 3V3) การอ่านจะเปลี่ยนแปลงตลอดเวลาเมื่อมันควรจะเป็นศูนย์! Arduino …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.