ดังที่คนอื่น ๆ กล่าวว่า SPI และ I2C สามารถใช้งานได้ในระยะทางไกลตราบใดที่ตัวต้านทานแบบดึงขึ้นความถี่นาฬิกาและอื่น ๆ
ทางเลือกหลัก (ซึ่งจะทำให้ภูมิคุ้มกันเสียงที่ดีกว่า) มีRS485และCAN ทั้งสองใช้เส้นที่ต่างกันเพื่อลดปัญหาเสียงรบกวนและเหมาะกับความยาวของการส่งข้อมูลมากกว่า I2C หรือ SPI อย่างไรก็ตามฉันไม่คิดว่า AVR จะมีอุปกรณ์ต่อพ่วง CAN ในตัวซึ่งทำให้สามารถใช้งานได้ง่ายขึ้นมาก
ฉันจะบอกว่าสิ่งที่สำคัญที่สุดที่ควรพิจารณาเมื่อเลือกบัสคือเพื่อให้แน่ใจว่าโปรโตคอลที่คุณใช้สำหรับการสื่อสารระหว่างอุปกรณ์นั้นมีCRCหรือเทียบเท่าเพื่อให้คุณสามารถกำหนดได้ว่าได้รับข้อความอย่างถูกต้องหรือไม่ แพ็คเก็ต) เมื่อพิจารณาสิ่งนี้ยังมีประโยชน์ที่จะมีการตอบกลับประเภท ACK / NACK ซึ่งเป็นส่วนหนึ่งของโปรโตคอลเพื่อให้สามารถส่งข้อความที่เสียหายได้อีกครั้ง