Arduino

คำถาม & คำตอบสำหรับนักพัฒนาซอฟต์แวร์และซอฟต์แวร์โอเพ่นซอร์สที่เข้ากันได้กับ Arduino

2
จะเกิดอะไรขึ้นเมื่อฉันใช้หมายเลขพินไม่ถูกต้อง
ที่เกี่ยวข้องกับ: จะเกิดอะไรขึ้นหากมีข้อผิดพลาดรันไทม์? คำถามนี้คล้ายกับคำถามข้างต้นอย่างไรก็ตามนี่เป็นสถานการณ์อื่น: int pin = 999; pinMode(pin, OUTPUT); digitalWrite(pin, HIGH); จะเกิดอะไรขึ้นในกรณีนี้? คอมไพเลอร์อาจจับได้ แต่ถ้าคุณใช้หมายเลขสุ่มไอดีจะจับมันได้หรือไม่

5
Arduino สามารถส่งออกความถี่พาหะเฉพาะ (เช่น 56 kHz) ได้อย่างไร?
ฉันกำลังทำงานในโครงการทัศนศาสตร์อวกาศเพื่อส่งข้อมูลแบบไร้สายระหว่างสองจุด เพื่อให้บรรลุผลนี้ฉันใช้ IR LED เชื่อมต่อกับ Arduino Uno ที่พัลส์ด้วยความถี่ตัวส่งสัญญาณ 56 kHz สำหรับเครื่องส่งสัญญาณและ Arduino ตัวที่สองที่มีโมดูลตัวตรวจจับ IR 56 kHz สำหรับตัวรับสัญญาณ ฉันพยายามใช้ delayMicroseconds () ระหว่างคำสั่ง pin high และ pin low เพื่อสร้างความถี่ของผู้ให้บริการ งานประเภทนี้ แต่ความถี่ไม่เหมือนกันเสมอและความล่าช้าเพิ่มเติมใด ๆ สำหรับการส่งสัญญาณ (เช่นเวลาที่ต้องใช้ในการเรียกใช้ฟังก์ชั่นและการลดลง) สามารถเปลี่ยนแปลงได้ การอ่านแผ่นข้อมูลสำหรับ ATmega328 ดูเหมือนว่ามีวิธีการตั้งค่าพัลส์ที่แม่นยำยิ่งขึ้นโดยใช้ตัวจับเวลาของชิป เป็นไปได้และถ้าเป็นเช่นนั้นคุณจะสร้างพัลส์ 56 kHz โดยใช้ตัวจับเวลาได้อย่างไร?


4
วิธีย่อขนาดร่างจริง ๆ
ฉันต้องการสร้างภาพร่างที่มีขนาดเล็กที่สุดเพื่อจุดประสงค์ในการทดสอบ ปัญหาคือเมื่อฉันรวบรวมร่าง BareMinimum (ด้วยการเซ็ตอัพและลูปที่ว่างเปล่า) ฉันได้ 466 ไบต์สำหรับ Uno และ 4,242 สำหรับ Leonardo มีวิธีการเขียนรหัสของคุณเองที่ไม่มีฟังก์ชั่นพิเศษใด ๆ (เช่น Timer0 สำหรับmillis()และdelay()) ฉันต้องการที่จะปิดการใช้งานฟังก์ชั่นแป้นพิมพ์ / เมาส์สำหรับ Leonardo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.