การออกแบบพีซีบี, การผลิต, พีซีบี, พีอีซีวีดี, และการเลือกส่วนประกอบด้วยบริการแบบครบวงจร

ดาวน์โหลด | เกี่ยวกับ | อ้าง | แผนผังเว็บไซต์

ทำความเข้าใจธรรมชาติที่แท้จริงของ GPIO, ไอทูซี, เอสพีไอ, ยูอาร์ที, ใช้, และอินเทอร์เฟซการสื่อสาร USB - UGPCB

พีซีบีเทค

ทำความเข้าใจธรรมชาติที่แท้จริงของ GPIO, ไอทูซี, เอสพีไอ, ยูอาร์ที, ใช้, และอินเทอร์เฟซการสื่อสาร USB

คุณต้องเคยเห็นอินเทอร์เฟซต่าง ๆ บนแผงวงจรอุปกรณ์อิเล็กทรอนิกส์จำนวนมาก, เช่น GPIO, ไอทูซี, เอสพีไอ, ยูอาร์ที, ใช้, USB, ฯลฯ. คุณต้องสงสัยเกี่ยวกับหลักการทำงาน, วัตถุประสงค์, และความแตกต่างระหว่างอินเทอร์เฟซเหล่านี้บนแผงวงจร. วันนี้, บรรณาธิการของเราไปเยี่ยมเพื่อนร่วมงานจากแผนกเทคนิคของบริษัท UGPCB เพื่ออธิบายเกี่ยวกับพวกเขา “ธรรมชาติที่แท้จริง”

อินเทอร์เฟซการสื่อสาร

อินเทอร์เฟซการสื่อสาร

ความแตกต่างง่ายๆ

1) GPIO (อินพุตเอาต์พุตวัตถุประสงค์ทั่วไป) เป็นอินพุต/เอาต์พุตอเนกประสงค์, พอร์ตทั่วไป, ตัวขยายบัสที่ทำให้การขยาย I/O ง่ายขึ้นโดยใช้ I2C มาตรฐานอุตสาหกรรม, เอสเอ็มบัส™, หรือเอสพีไอ™ อินเทอร์เฟซ. เมื่อไมโครคอนโทรลเลอร์หรือชิปเซ็ตขาดพอร์ต I/O เพียงพอ, หรือเมื่อระบบต้องการการสื่อสารหรือการควบคุมแบบอนุกรมระยะไกล, ผลิตภัณฑ์ GPIO สามารถให้ฟังก์ชันการควบคุมและการตรวจสอบเพิ่มเติมได้.

2) เอสพีไอ (อินเทอร์เฟซอุปกรณ์ต่อพ่วงแบบอนุกรม) เป็นบัสอนุกรมแบบสองทิศทางแบบซิงโครนัสสี่สายมาตรฐาน. อินเทอร์เฟซ SPI ส่วนใหญ่จะใช้ใน EEPROM, แฟลช, นาฬิกาเรียลไทม์, ตัวแปลง AD, และระหว่างโปรเซสเซอร์สัญญาณดิจิทัลกับตัวถอดรหัสสัญญาณดิจิทัล. SPI เป็นความเร็วสูง, ฟูลดูเพล็กซ์, บัสสื่อสารแบบซิงโครนัสที่ใช้เพียงสี่พินบนชิป, ประหยัดจำนวนพินและพื้นที่เค้าโครง PCB. เนื่องจากมีลักษณะที่เรียบง่ายและใช้งานง่าย, ชิปจำนวนมากขึ้นเรื่อยๆ กำลังรวมโปรโตคอลการสื่อสารนี้ไว้.

3) ฉัน2C (อินเตอร์ไอซีบัส) เป็นบัสอนุกรมแบบสองสายที่พัฒนาโดย PHILIPS สำหรับเชื่อมต่อไมโครคอนโทรลเลอร์และอุปกรณ์ต่อพ่วง. เป็นมาตรฐานบัสที่นำมาใช้กันอย่างแพร่หลายในด้านการควบคุมการสื่อสารไมโครอิเล็กทรอนิกส์. มีข้อดีคือมีเส้นอินเทอร์เฟซน้อยกว่า, วิธีการควบคุมง่ายๆ, แบบฟอร์มบรรจุภัณฑ์อุปกรณ์ขนาดเล็ก, และอัตราการสื่อสารที่สูงขึ้น.

4) ยูอาร์ที (เครื่องส่งสัญญาณตัวรับสัญญาณแบบอะซิงโครนัสสากล) เป็นอุปกรณ์รับ/ส่งสัญญาณแบบอะซิงโครนัสสากล.

5) USART Universal Synchronous Asynchronous Receiver เครื่องส่ง;

6) USB ยูนิเวอร์แซลบัสอนุกรม (ยูนิเวอร์แซลอนุกรมบัส)

7) CAN ฟิลด์บัส

ตารางพารามิเตอร์การส่งผ่านอินเทอร์เฟซ

ตารางพารามิเตอร์การส่งผ่านอินเทอร์เฟซ

องค์ประกอบของสายส่งข้อมูล

บัส SPI ประกอบด้วยสายสัญญาณสามสายนาฬิกาอนุกรม (เอสซีแอลเค), เอาท์พุทข้อมูลแบบอนุกรม (สดีโอ), และการป้อนข้อมูลแบบอนุกรม (เอสดีไอ). บัส SPI สามารถเชื่อมต่ออุปกรณ์ SPI ได้หลายตัว. อุปกรณ์ SPI ที่ให้นาฬิกา SPI เป็นอุปกรณ์หลักหรืออุปกรณ์หลัก (ผู้เชี่ยวชาญ), ในขณะที่อุปกรณ์อื่นเป็นทาสหรืออุปกรณ์ทาส (ทาส). อุปกรณ์หลักและอุปกรณ์รองสามารถบรรลุการสื่อสารแบบฟูลดูเพล็กซ์. เมื่อมีอุปกรณ์ทาสหลายตัว, สามารถเพิ่มบรรทัดเลือกทาสเพิ่มเติมได้.

หากจำลองบัส SPI ด้วยพอร์ต IO ทั่วไป, จำเป็นต้องมีพอร์ตเอาต์พุตหนึ่งพอร์ต (สดีโอ), พอร์ตอินพุตหนึ่งพอร์ต (เอสดีไอ), และขึ้นอยู่กับประเภทของอุปกรณ์ที่ใช้งาน, พอร์ตอื่นหากใช้อุปกรณ์หลักและทาส, ต้องการทั้งพอร์ตอินพุตและเอาต์พุต; หากใช้เฉพาะอุปกรณ์หลักเท่านั้น, พอร์ตเอาท์พุตก็เพียงพอแล้ว; หากใช้เฉพาะอุปกรณ์ทาสเท่านั้น, จำเป็นต้องมีพอร์ตอินพุต.

บัส I2C เป็นแบบสองทาง, สองสาย (เอสซีแอล, สดีเอ), อนุกรม, มาตรฐานอินเทอร์เฟซหลายต้นแบบพร้อมกลไกอนุญาโตตุลาการบัส, ทำให้เหมาะมากสำหรับการยิงระยะใกล้, การสื่อสารข้อมูลระหว่างอุปกรณ์ไม่บ่อยนัก. ในระบบโปรโตคอลของมัน, เมื่อส่งข้อมูล, รวมถึงที่อยู่ของอุปกรณ์ปลายทางด้วย, เปิดใช้งานเครือข่ายอุปกรณ์.

หากจำลองบัส I2C ด้วยพอร์ต IO ทั่วไปสำหรับการส่งสัญญาณแบบสองทิศทาง, พอร์ตอินพุต/เอาท์พุตหนึ่งพอร์ต (สดีเอ) เป็นสิ่งจำเป็น, และพอร์ตเอาต์พุตอื่น (เอสซีแอล) เป็นสิ่งจำเป็น. (หมายเหตุ ความเข้าใจของฉันเกี่ยวกับ I2C ค่อนข้างจำกัด, ดังนั้นคำอธิบายนี้อาจไม่สมบูรณ์)

บัส UART เป็นพอร์ตอนุกรมแบบอะซิงโครนัส, ดังนั้นโดยทั่วไปจึงมีโครงสร้างที่ซับซ้อนกว่าพอร์ตอนุกรมแบบซิงโครนัสสองพอร์ตก่อนหน้านี้มาก (ตามที่แนะนำในหนังสือไมโครคอนโทรลเลอร์, แม้ว่าจะไม่ถือว่าซับซ้อนก็ตาม). โดยทั่วไปจะประกอบด้วยเครื่องกำเนิดอัตรารับส่งข้อมูล (อัตรารับส่งข้อมูลที่สร้างขึ้นจะเท่ากับ 16 คูณด้วยอัตรารับส่งข้อมูล), เครื่องรับ UART, และเครื่องส่งสัญญาณ UART, ด้วยสายไฟสองเส้นในฮาร์ดแวร์, อันหนึ่งสำหรับส่งและอีกอันสำหรับรับ.

ชัดเจน, หากจำลองบัส UART ด้วยพอร์ต IO ทั่วไป, จำเป็นต้องมีพอร์ตอินพุตหนึ่งพอร์ตและพอร์ตเอาต์พุตหนึ่งพอร์ต.

จากจุดที่สอง, เห็นได้ชัดว่า SPI และ UART สามารถบรรลุฟูลดูเพล็กซ์ได้, แต่ I2C ทำไม่ได้.

ความแตกต่างของโปรโตคอลการสื่อสาร

เอสพีไอ

 

เอสพีไอ

เอสพีไอ

SPI เป็นโปรโตคอลที่อนุญาตให้อุปกรณ์หลักเริ่มต้นการสื่อสารแบบซิงโครนัสกับอุปกรณ์สลาฟ, จึงทำให้การแลกเปลี่ยนข้อมูลเสร็จสมบูรณ์. วิธีการสื่อสารนี้มีข้อดีคือใช้พอร์ตน้อยลง; โดยทั่วไป, สี่อันก็เพียงพอสำหรับการสื่อสารขั้นพื้นฐาน. ในเวลาเดียวกัน, ความเร็วในการส่งข้อมูลก็สูงมากเช่นกัน. โดยทั่วไป, กำหนดให้อุปกรณ์หลักต้องมีตัวควบคุม SPI (แต่ก็สามารถจำลองได้เช่นกัน) เพื่อสื่อสารกับชิปที่ใช้ SPI.

หลักการสื่อสารของ SPI นั้นง่ายมาก; ต้องใช้สายไฟอย่างน้อยสี่เส้น, แต่สามอย่างก็เพียงพอแล้ว. เป็นเรื่องปกติสำหรับอุปกรณ์ SDI ที่ใช้ SPI ทั้งหมด (การป้อนข้อมูล), สดีโอ (เอาท์พุทข้อมูล), เอสซีเค (นาฬิกา), ซีเอส (เลือกชิป). CS จะควบคุมว่าจะเลือกชิปหรือไม่, หมายความว่าการทำงานบนชิปนี้จะมีผลเฉพาะเมื่อสัญญาณเลือกชิปอยู่ที่สัญญาณเปิดใช้งานที่กำหนดไว้ล่วงหน้าเท่านั้น (ระดับสูงหรือระดับต่ำ). ช่วยให้สามารถเชื่อมต่ออุปกรณ์ SPI หลายตัวบนบัสเดียวกันได้.

ถัดไปคือสามบรรทัดที่รับผิดชอบในการสื่อสาร. การสื่อสารเสร็จสิ้นผ่านการแลกเปลี่ยนข้อมูล. ที่นี่, สิ่งสำคัญคือต้องรู้ว่า SPI เป็นโปรโตคอลการสื่อสารแบบอนุกรม, หมายถึงข้อมูลถูกส่งทีละบิต. นี่คือสาเหตุว่าทำไมสายนาฬิกา SCK จึงมีอยู่. SCK ให้พัลส์นาฬิกา, และเอสดีไอ, การส่งข้อมูลที่สมบูรณ์ของ SDO ขึ้นอยู่กับพัลส์เหล่านี้. เอาต์พุตข้อมูลเกิดขึ้นผ่านสาย SDO; ข้อมูลเปลี่ยนแปลงบนขอบขาขึ้นหรือขอบขาลงของนาฬิกา และจะถูกอ่านที่ขอบขาขึ้นหรือขาขึ้นถัดไปทันที. การส่งข้อมูลหนึ่งบิตเสร็จสิ้นในลักษณะนี้. ข้อมูลเข้าเป็นไปตามหลักการเดียวกัน. ดังนั้น, การเปลี่ยนแปลงสัญญาณนาฬิกาอย่างน้อยแปดครั้ง (วงจรขึ้นและลงหนึ่งรอบถือเป็นการเปลี่ยนแปลงครั้งเดียว) ขออนุญาติถ่ายทอด. 8 บิตของข้อมูล.

ควรสังเกตว่าสายสัญญาณ SCK ถูกควบคุมโดยอุปกรณ์หลักเท่านั้น, และอุปกรณ์สเลฟไม่สามารถควบคุมสายสัญญาณได้. ในทำนองเดียวกัน, ในอุปกรณ์ที่ใช้ SPI, ต้องมีอุปกรณ์หลักอย่างน้อยหนึ่งเครื่อง.

คุณลักษณะการส่งข้อมูลนี้มีข้อได้เปรียบเหนือการสื่อสารแบบอนุกรมทั่วไป ซึ่งต่างจากการสื่อสารแบบอนุกรมทั่วไป, ซึ่งส่งผ่านเป็นอย่างน้อย 8 บิตของข้อมูลอย่างต่อเนื่อง, SPI อนุญาตให้ส่งข้อมูลทีละบิต, และอนุญาตให้หยุดชั่วคราวได้เนื่องจากสายนาฬิกา SCK ถูกควบคุมโดยอุปกรณ์หลัก. เมื่อนาฬิกาไม่มีการเปลี่ยนแปลง, อุปกรณ์ทาสไม่รวบรวมหรือส่งข้อมูล. กล่าวอีกนัยหนึ่ง, อุปกรณ์หลักสามารถควบคุมการสื่อสารผ่านการควบคุมสายนาฬิกา SCK.

SPI ยังเป็นโปรโตคอลการแลกเปลี่ยนข้อมูลเนื่องจากบรรทัดอินพุตและเอาต์พุตข้อมูล SPI มีความเป็นอิสระ, ช่วยให้สามารถป้อนข้อมูลและส่งออกข้อมูลได้พร้อมกัน.

อุปกรณ์ SPI ที่แตกต่างกันมีการใช้งานที่แตกต่างกัน, ส่วนใหญ่ในแง่ของเวลาที่ข้อมูลเปลี่ยนแปลงและถูกรวบรวม, โดยมีคำจำกัดความที่แตกต่างกันสำหรับการรวบรวมบนขอบขาขึ้นหรือขอบขาลงของสัญญาณนาฬิกา. สำหรับรายละเอียดเฉพาะ, โปรดดูเอกสารประกอบของอุปกรณ์ที่เกี่ยวข้อง.

ฉัน2C

ต้องใช้บัสสองบรรทัดเท่านั้นหนึ่งบรรทัดข้อมูลอนุกรม SDA และหนึ่งบรรทัดนาฬิกาอนุกรม SCL.

อุปกรณ์ทุกชิ้นที่เชื่อมต่อกับบัสสามารถแก้ไขได้ด้วยที่อยู่เฉพาะและความสัมพันธ์แบบมาสเตอร์-สเลฟที่เรียบง่ายซึ่งกำหนดโดยซอฟต์แวร์. โฮสต์สามารถทำหน้าที่เป็นเครื่องส่งหรือเครื่องรับหลักได้.

มันเป็นบัสหลายมาสเตอร์ที่แท้จริง; หากต้นแบบตั้งแต่สองคนขึ้นไปเริ่มการถ่ายโอนข้อมูลพร้อมกัน, การตรวจจับข้อขัดแย้งและอนุญาโตตุลาการป้องกันความเสียหายของข้อมูล.

อัตราการถ่ายโอนข้อมูลแบบสองทิศทางแบบอนุกรม 8 บิตสามารถเข้าถึงได้สูงสุด 100kbit/s ในโหมดมาตรฐาน, 400kbit/s ในโหมดเร็ว, และ 3.4Mbit/s ในโหมดความเร็วสูง.

ตัวกรองบนชิปจะขจัดข้อบกพร่องออกจากสายข้อมูลบัสเพื่อให้แน่ใจว่าข้อมูลมีความสมบูรณ์.

จำนวนไอซีที่เชื่อมต่อกับบัสเดียวกันถูกจำกัดด้วยความจุบัสสูงสุดที่ 400pF เท่านั้น.

ยูอาร์ที

บัส UART เป็นพอร์ตอนุกรมแบบอะซิงโครนัส, ดังนั้นโครงสร้างโดยทั่วไปจึงซับซ้อนกว่าพอร์ตอนุกรมแบบซิงโครนัสสองพอร์ตก่อนหน้านี้มาก. โดยทั่วไปจะประกอบด้วยเครื่องกำเนิดอัตรารับส่งข้อมูล (ซึ่งสร้างอัตรารับส่งข้อมูลเท่ากับ 16 คูณด้วยอัตรารับส่งข้อมูล), เครื่องรับ UART, และเครื่องส่งสัญญาณ UART, ด้วยสายไฟสองเส้นในฮาร์ดแวร์, อันหนึ่งสำหรับส่งและอีกอันสำหรับรับ.

UART มักใช้สำหรับควบคุมชิปคอมพิวเตอร์สำหรับอุปกรณ์อนุกรม. ประเด็นหนึ่งที่ควรทราบก็คือ มีอินเทอร์เฟซอุปกรณ์เทอร์มินัลข้อมูล RS-232C, ช่วยให้คอมพิวเตอร์สื่อสารกับโมเด็มหรืออุปกรณ์อนุกรมอื่น ๆ โดยใช้อินเทอร์เฟซ RS-232C.

UART ย่อมาจาก Universal Asynchronous Receiver/Transmitter (พอร์ตการสื่อสารแบบอนุกรมแบบอะซิงโครนัส). ประกอบด้วยมาตรฐานและข้อกำหนดสำหรับอินเทอร์เฟซ เช่น RS232, ฿499, RS423, RS422, และ RS485, ทำให้ UART เป็นคำทั่วไปสำหรับพอร์ตการสื่อสารแบบอนุกรมแบบอะซิงโครนัส. RS232, ฿499, RS423, RS422, และ RS485 เป็นมาตรฐานอินเทอร์เฟซและข้อกำหนดสำหรับพอร์ตการสื่อสารแบบอนุกรมแบบอะซิงโครนัสต่างๆ, การกำหนดลักษณะทางไฟฟ้า, อัตราการส่งข้อมูล, ลักษณะการเชื่อมต่อ, และคุณสมบัติทางกลของอินเทอร์เฟซ. พวกมันอยู่ในชั้นทางกายภาพ (ชั้นต่ำสุด) แนวคิดในเครือข่ายการสื่อสารและไม่เกี่ยวข้องโดยตรงกับโปรโตคอลการสื่อสาร. โปรโตคอลการสื่อสารเป็นของดาต้าลิงค์เลเยอร์ (ชั้นที่สูงขึ้นถัดไป) แนวคิดในเครือข่ายการสื่อสาร. พอร์ต COM เป็นตัวย่อสำหรับพอร์ตการสื่อสารแบบอนุกรมแบบอะซิงโครนัสบนพีซี (คอมพิวเตอร์ส่วนบุคคล). เนื่องจากเหตุผลทางประวัติศาสตร์, อินเทอร์เฟซภายนอกพีซีของ IBM ได้รับการกำหนดค่าเป็น RS232, กลายเป็นมาตรฐานโดยพฤตินัยในอุตสาหกรรมพีซี. ดังนั้น, พอร์ต COM บนพีซีสมัยใหม่นั้นเป็น RS232 ทั้งหมด. หากมีพอร์ตการสื่อสารแบบอนุกรมแบบอะซิงโครนัสหลายพอร์ต, พวกเขาชื่อ COM1, คอม2, ฯลฯ.

เป็นที่ชัดเจนว่าทั้ง SPI และ UART สามารถบรรลุการสื่อสารแบบฟูลดูเพล็กซ์ได้, แต่ I2C ทำไม่ได้.

USART เครื่องรับและส่งสัญญาณอะซิงโครนัสซิงโครนัสสากล. (ความแตกต่างจาก UART นั้นชัดเจน)

UART เครื่องรับและส่งสัญญาณแบบอะซิงโครนัสสากล;

USART เครื่องรับและส่งสัญญาณอะซิงโครนัสซิงโครนัสสากล. โดยทั่วไป, ในไมโครคอนโทรลเลอร์, อินเทอร์เฟซชื่อ UART ใช้สำหรับการสื่อสารแบบอนุกรมแบบอะซิงโครนัสเท่านั้น, ในขณะที่ชื่อ USART สามารถใช้สำหรับการสื่อสารแบบอนุกรมทั้งแบบซิงโครนัสและแบบอะซิงโครนัส.

USB

USB ย่อมาจาก Universal Serial Bus, มาตรฐานบัสภายนอกสำหรับการเชื่อมต่อและสื่อสารระหว่างคอมพิวเตอร์และอุปกรณ์ภายนอก, นำไปใช้ในโดเมนพีซี. USB รองรับฟังก์ชัน Plug-and-Play และ Hot-swap. USB ได้รับการเสนอโดยกลุ่มพันธมิตรรวมทั้ง Intel, คอมแพค, ไอบีเอ็ม, และไมโครซอฟต์ในตอนท้าย 1994.

USB

USB

ลักษณะทางไฟฟ้าและลักษณะการส่งสัญญาณของ USB ประกอบด้วยตัวรับส่งสัญญาณ USB ความเร็วสูงเช่น Philips’ 82C251, SN65/75LBC031 ของ TI, CF150 ของ Bosch, C250, และ UC5350 ของ Intersil; ตัวรับส่งสัญญาณ USB ความเร็วต่ำ ได้แก่ Philips 82C252, TJA1053, ซีเมนส์ TLE 6252G; ตัวรับส่งสัญญาณ USB แบบสายเดี่ยวประกอบด้วย Philips AU5790, อินฟิเนียน TLE 6255, เดลฟี DK166153.

สามารถ

เมื่อรถบัสว่าง, โหนด CAN ใด ๆ ก็สามารถเริ่มการส่งข้อมูลได้. หากตั้งแต่สองโหนดขึ้นไปเริ่มส่งสัญญาณพร้อมกัน, การอนุญาโตตุลาการแบบบิตต่อบิตที่ใช้ตัวระบุช่วยแก้ไขข้อขัดแย้งในการเข้าถึง. CAN เป็นบัสประเภทบรอดคาสต์ที่โหนดทั้งหมดรับข้อมูลจากบัส, และกลไกการกรองฮาร์ดแวร์จะกำหนดว่าข้อความนั้นถูกส่งไปยังโหนดหรือไม่.

กรอบข้อความมี 4 ประเภท คือ Data Frame, กรอบระยะไกล, กรอบข้อผิดพลาด, และเฟรมโอเวอร์โหลด.

ตัวควบคุม CAN พื้นฐานมีความคุ้มค่าด้วยบัฟเฟอร์ข้อความที่จำกัดสำหรับการส่ง/รับ และกลไกการกรองข้อความ CAN พื้นฐาน. ตัวควบคุม CAN เต็มรูปแบบมีราคาและประสิทธิภาพที่สูงกว่าพร้อมบัฟเฟอร์ที่สามารถจัดการได้ 8 หรือข้อความเพิ่มเติมสำหรับการส่งและรับ. คอนโทรลเลอร์ CAN มาตรฐานจัดการข้อความด้วยตัวระบุ 11 บิต, ในขณะที่ตัวควบคุม CAN แบบขยายจะจัดการข้อความระบุทั้ง 11 บิตและ 29 บิต. CAN ที่ทริกเกอร์ตามเวลา (ทีทีแคน) ตัวควบคุมกำหนดเวลาข้อความ CAN ตามเวลาและเหตุการณ์, เพิ่มประสิทธิภาพโดยรวมและความสามารถในการคาดการณ์พฤติกรรมของเครือข่าย CAN.

ไบต์ข้อมูลจะถูกส่งโดยเริ่มจากบิตที่สำคัญที่สุด. ไบต์ข้อมูล 8 บิตสามารถส่งได้ในการดำเนินการส่งครั้งเดียว, โดยความเร็วสูงสุด CAN บัสคือ 1Mbps.

ไมโครคอนโทรลเลอร์ CAN ส่วนใหญ่ต้องใช้ตัวรับส่งสัญญาณภายนอกเพื่อเชื่อมต่อกับฟิสิคัลบัส. ตลาดมีเครื่องรับส่งสัญญาณความเร็วสูงเช่น Philips’ 82C251, SN65/75LBC031 ของ TI, CF150 ของ Bosch, C250, และ UC5350 ของ Intersil; และเครื่องรับส่งสัญญาณความเร็วต่ำเช่น Philips 82C252, TJA1053, และซีเมนส์ TLE 6252G.

การเลือกบัสอนุกรม

ไมโครคอนโทรลเลอร์ (ไมโครซี) ถือเป็นหัวใจสำคัญของผลิตภัณฑ์อิเล็กทรอนิกส์ขั้นสูงในปัจจุบัน, ต้องการการสื่อสารกับอุปกรณ์ต่อพ่วงตั้งแต่หนึ่งเครื่องขึ้นไป. ตามเนื้อผ้า, อุปกรณ์ต่อพ่วง µC เชื่อมต่อผ่านข้อมูลที่แมปหน่วยความจำและแอดเดรสบัส. อินเทอร์เฟซประเภทนี้ต้องใช้จำนวนพินขั้นต่ำ (ไม่รวมไฟฟ้าและสายดิน) 8 (ข้อมูล) + 1 (ร//ว) + 1 (/ซีเอส) + n บรรทัดที่อยู่ [n = ล็อก2(การลงทะเบียนภายในหรือจำนวนไบต์ของหน่วยความจำ)]. ตัวอย่างเช่น, การสื่อสารกับอุปกรณ์ต่อพ่วงขนาด 16 ไบต์ต้องใช้ 8 + 1 + 1 + 4 - 14 หมุด. อินเทอร์เฟซนี้ให้การเข้าถึงที่รวดเร็ว แต่เพิ่มขนาดแพ็คเกจและต้นทุนทั้งหมดเนื่องจากมีพินจำนวนมากขึ้น. เพื่อลดต้นทุนและขนาดบรรจุภัณฑ์, อินเทอร์เฟซแบบอนุกรมเป็นทางเลือกในอุดมคติ.

การเลือกบัสอนุกรมไม่ใช่เรื่องง่าย. นอกจากการพิจารณาอัตราข้อมูลแล้ว, ลำดับการส่งบิตข้อมูล (บิตที่สำคัญที่สุดก่อนหรือหลัง), และแรงดันไฟฟ้า, นักออกแบบควรคำนึงถึงวิธีการเลือกอุปกรณ์ต่อพ่วง (ผ่านอินพุตเลือกชิปฮาร์ดแวร์หรือโปรโตคอลซอฟต์แวร์), อุปกรณ์ต่อพ่วงซิงโครไนซ์กับ µC อย่างไร (การใช้สายสัญญาณนาฬิกาของฮาร์ดแวร์หรือข้อมูลนาฬิกาที่ฝังอยู่ในสตรีมข้อมูล), ไม่ว่าข้อมูลจะถูกส่งไปในบรรทัดเดียวหรือไม่ (สลับไปมาระหว่าง “สูง” และ “ต่ำ”) หรือบนคู่ที่แตกต่างกัน (เส้นสองเส้นสลับไปในทิศทางตรงกันข้ามพร้อมกัน), และสายสื่อสารใช้ความต้านทานที่ตรงกันที่ปลายทั้งสองข้างหรือไม่ (โดยปกติสำหรับการส่งสัญญาณที่แตกต่างกัน), ไม่ตรงกัน, หรือจับคู่ที่ปลายด้านหนึ่ง (ทั่วไปสำหรับรถเมล์ปลายเดียว). โต๊ะ 1 แสดงความแตกต่างระหว่างระบบบัสทั่วไปต่างๆ ในรูปแบบเมทริกซ์. เพียงสี่เท่านั้น 16 ชุดค่าผสมที่เป็นไปได้เป็นที่รู้จักกันดี.

นอกจากลักษณะเหล่านี้แล้ว, การใช้งานเฉพาะอาจมีข้อกำหนดเพิ่มเติม เช่น วิธีการจ่ายไฟ, การแยกตัว, การปราบปรามเสียง, สูงสุด µC (เจ้าภาพ) ไปยังอุปกรณ์ต่อพ่วง (ทาส) ระยะการส่งข้อมูล, และวิธีการเชื่อมต่อสายเคเบิล (ประเภทรถบัส, ประเภทดาว, การป้องกันขั้วย้อนกลับ, ฯลฯ). แอปพลิเคชันเช่นระบบอัตโนมัติในอาคาร, การควบคุมอุตสาหกรรม, อ่านมิเตอร์, ฯลฯ, ได้กำหนดมาตรฐานสำหรับข้อกำหนดดังกล่าว.

I²C/SMBus เทียบกับ. 1-ไวร์บัส

หากแอปพลิเคชันสามารถจัดหาสายนาฬิกาได้, การเลือกบัสสามารถขยายไปยังอุปกรณ์I²C/SMBus. ตามข้อกำหนด SMBus, สามารถมองเห็นได้ว่าเป็นอนุพันธ์ของข้อกำหนดบัส I²C 100kbps พร้อมคุณสมบัติการหมดเวลาเพิ่มเติม. ในกรณีที่โหนดสูญเสียการซิงโครไนซ์กับบัสมาสเตอร์, คุณลักษณะการหมดเวลาป้องกันการล็อกบัส, ในขณะที่ระบบ I²C จำเป็นต้องรีเซ็ตการเปิดเครื่องเพื่อกู้คืนจากสภาวะข้อผิดพลาดดังกล่าว. ระบบ 1-Wire จะรีเซ็ต/ตรวจจับการมีอยู่ในระหว่างเฟสการเริ่มต้นอินเทอร์เฟซการสื่อสาร.

นอกจากสายนาฬิกาแล้ว, I²C/SMBus จัดเตรียมบิตการตอบรับสำหรับทุกไบต์ที่ส่งบนบัส, ลดอัตราข้อมูลที่มีประสิทธิภาพโดย 12%. กระบวนการสื่อสารเริ่มต้นด้วยเงื่อนไขการเริ่มต้นตามด้วยที่อยู่อุปกรณ์สลาฟและบิตทิศทางข้อมูล (อ่าน/เขียน), ลงท้ายด้วยเงื่อนไขการหยุด. สำหรับระบบ 1-Wire, ต้องเป็นไปตามข้อกำหนดเลเยอร์เครือข่ายก่อน (เช่น., การเลือกอุปกรณ์เฉพาะผ่านคำสั่งค้นหา ROM หรือการออกอากาศ), แล้วส่งรหัสคำสั่งที่เกี่ยวข้องกับอุปกรณ์เฉพาะที่ส่งผลต่อทิศทางการรับส่งข้อมูล (อ่าน/เขียน).

ปัญหาที่น่าสังเกตเกี่ยวกับระบบบัส I²C และ SMBus ดั้งเดิมคือพื้นที่ที่อยู่ 7 บิตที่จำกัด. ที่มีมากกว่า 127 มีอุปกรณ์ประเภทต่างๆ, เป็นไปไม่ได้ที่จะอนุมานฟังก์ชันการทำงานของอุปกรณ์จากที่อยู่ทาสเพียงอย่างเดียว. นอกจากนี้, อุปกรณ์ I²C จำนวนมากอนุญาตให้ผู้ใช้ตั้งค่าบิตที่อยู่อย่างน้อยหนึ่งบิตโดยพลการเพื่อแนบอุปกรณ์ที่เหมือนกันหลายตัวบนบัส, ลดพื้นที่ที่อยู่ที่มีอยู่เพิ่มเติม. การแก้ไขข้อขัดแย้งเกี่ยวข้องกับการแบ่งส่วนระบบบัสออกเป็นหลายส่วนซึ่งสามารถเปิดใช้งานภายใต้การควบคุมซอฟต์แวร์ในเวลาใดก็ได้. ต้องใช้ฮาร์ดแวร์เพิ่มเติมและทำให้เฟิร์มแวร์ของแอปพลิเคชันซับซ้อน. ระบบ I²C ขาดความสามารถในการค้นหาโหนดเครือข่ายหรือการแจงนับ, ทำให้การจัดการเครือข่ายด้วยจำนวนโหนดที่เปลี่ยนแปลงแบบไดนามิกเป็นเรื่องท้าทาย. ปัญหานี้แก้ไขได้ด้วยโปรโตคอลการแก้ไขที่อยู่ในเวอร์ชันข้อกำหนด SMBus 2.013, แม้ว่าอุปกรณ์ SMBus ที่รองรับจะหายากก็ตาม.

อินเทอร์เฟซ SPI และ MICROWIRE

SPI และไมโครไวร์ (เซตย่อยของ SPI) ต้องมีสายเลือกชิปเพิ่มเติมสำหรับอุปกรณ์ทาสแต่ละตัว. เนื่องจากสัญญาณเลือกชิป, โปรโตคอล SPI กำหนดเฉพาะคำสั่งอ่าน/เขียนสำหรับที่อยู่หน่วยความจำและการลงทะเบียนสถานะโดยไม่มีฟังก์ชันการตอบรับ. โดยทั่วไป, อุปกรณ์ SPI ใช้พินแยกกันสำหรับการป้อนข้อมูลและเอาท์พุท. เนื่องจากข้อมูลเอาต์พุตเป็นแบบไตรสเตต ยกเว้นระหว่างการดำเนินการอ่าน, พินข้อมูลทั้งสองสามารถเชื่อมต่อเข้าด้วยกันเพื่อสร้างสายข้อมูลสองทิศทางเดียว. บัส SPI จะถูกเลือกเมื่อระบบบัสอื่นไม่มีฟังก์ชันที่จำเป็น หรือเมื่อต้องการอัตราการถ่ายโอนข้อมูลที่สูงกว่า, รองรับอัตราสูงสุด 2Mbps หรือสูงกว่า. อย่างไรก็ตาม, การสร้างสัญญาณ CS เพื่อระบุอุปกรณ์เฉพาะถือเป็นข้อเสียของ SPI และ MICROWIRE. เช่นเดียวกับI²C, ไม่รองรับการค้นพบโหนด. โฮสต์ไม่สามารถอนุมานฟังก์ชันการทำงานของอุปกรณ์จากที่อยู่ทาสแบบลอจิคัลได้, ทำให้ยากต่อการจัดการเครือข่ายที่มีการเปลี่ยนแปลงโหนดแบบไดนามิก.

RS-485, LVDS, สามารถ, USB 2.0, และไฟร์ไวร์

มาตรฐานเหล่านี้แสดงให้เห็นถึงลักษณะเฉพาะของระบบส่งกำลังแบบดิฟเฟอเรนเชียล. เร็วที่สุดในบรรดาระบบบัสเหล่านี้คือ FireWire และ USB 2.0, ซึ่งใช้การเชื่อมต่อไฟฟ้าแบบจุดต่อจุด. ด้วยโหนดหรือฮับขั้นสูง, พวกมันสามารถสร้างบัสเสมือนที่มีโทโพโลยีแบบต้นไม้ได้, การส่งแพ็กเก็ตข้อมูลจากต้นทางไปยังปลายทาง (USB) หรือแบบเพียร์ทูเพียร์ (ไฟร์ไวร์), ด้วยอัตราการส่งข้อมูลสูงสุด 480Mbps (USB 2.0) หรือ 1600Mbps (ไฟร์ไวร์). แพ็กเก็ตข้อมูลที่มีขนาดจำกัดและกลไกการสื่อสารการรับ/บัฟเฟอร์/ส่งซ้ำจะทำให้เวลาในการส่งข้อมูลเพิ่มขึ้น, จึงช่วยลดปริมาณข้อมูลที่มีประสิทธิภาพ. โทโพโลยีและโปรโตคอลของ USB อนุญาตสูงสุด 126 โหนด, ในขณะที่ FireWire รองรับได้ถึง 63 โหนดที่มีระยะห่างระหว่างโหนดต่อโหนดสูงสุด 4.5 ม. โดยใช้สายเคเบิลแบบพาสซีฟ. ออกแบบมาสำหรับอุปกรณ์ต่อพ่วงพีซี, มัลติมีเดีย, การควบคุมอุตสาหกรรม, และการใช้งานด้านการบิน (ไฟร์ไวร์เท่านั้น), อุปกรณ์ USB และ FireWire รองรับการเสียบปลั๊ก. คุณลักษณะนี้ช่วยให้สามารถเปลี่ยนแปลงจำนวนโหนดเครือข่ายแบบไดนามิกได้.

LVDS, RS-485, และสามารถใช้โทโพโลยีบัสที่เชื่อมต่อหลายโฮสต์ได้. การส่งสัญญาณดิฟเฟอเรนเชียลแรงดันต่ำ (LVDS) ให้ความเร็วสูงสุดเหนือมาตรฐานเหล่านี้, สามารถทำงานที่ความเร็ว 100Mbps ในระยะทางสูงสุด 10 เมตร. อัตราข้อมูลและปริมาณงานจริงขึ้นอยู่กับขนาดเครือข่าย. มาตรฐานไฟฟ้า LVDS ได้รับการออกแบบสำหรับการใช้งานแบ็คเพลน และรองรับการเสียบปลั๊กแบบ hot-plug แต่ไม่มีโปรโตคอลใดๆ.

RS-485 ยังกำหนดเฉพาะพารามิเตอร์ทางไฟฟ้าเท่านั้น, การระบุความสามารถในการรับน้ำหนักและการรับน้ำหนักสูงสุดต่อสายบัส (32), ไม่ใช่ในแง่ของโหนด. โหลดของโหนดไฟฟ้าสามารถน้อยกว่าได้ 1. อัตราข้อมูลทั่วไปสามารถเข้าถึงได้สูงสุด 35Mbps ในระยะทาง 12 เมตร, และ 100kbps ในระยะทาง 1,200 ม, เพียงพอสำหรับการรับข้อมูลและการควบคุมแอปพลิเคชัน. โปรโตคอลอุปกรณ์ RS-485 มักอิงตามโปรโตคอลที่เดิมออกแบบมาสำหรับ RS-232.

อาร์เอส ซีรีส์

อาร์เอส ซีรีส์

ในทางตรงกันข้าม, เครือข่ายพื้นที่ควบคุม (สามารถ) กำหนดโปรโตคอลการสื่อสารสำหรับการควบคุมแบบเรียลไทม์แบบกระจายพร้อมความปลอดภัยที่สูงมาก, มุ่งเป้าไปที่การใช้งานระบบอัตโนมัติในยานยนต์และอุตสาหกรรมโดยเฉพาะ. อัตราข้อมูลมีตั้งแต่ 1Mbps ในระยะทางสูงสุด 40 ม. ถึง 50kbps ในระยะทางสูงสุด 1,000 ม.. วิธีการระบุที่อยู่จะขึ้นอยู่กับข้อความ, และโปรโตคอลเองก็ไม่จำกัดจำนวนโหนด. โหนด CAN รองรับการเสียบปลั๊กร้อน, อนุญาตให้มีการเปลี่ยนแปลงจำนวนโหนดเครือข่ายแบบไดนามิก.

บทสรุป

ในความเรียบง่าย, ระบบบัสราคาประหยัดเมื่อเปรียบเทียบกับบัส LIN และ SensorPath, 1-ระบบสายมีฟังก์ชันและไดรเวอร์เครือข่ายที่หลากหลายที่สุดสำหรับอุปกรณ์สลาฟ. I²C และ SMBus ต้องการสายข้อมูลและกราวด์ รวมถึงสายสัญญาณนาฬิกาและแหล่งจ่ายไฟ VCC แต่มีฟังก์ชันการทำงานของอุปกรณ์มากมาย. SPI และ MICROWIRE ต้องการสายการเลือกชิปเพิ่มเติมแต่ให้อัตราข้อมูลที่สูงกว่า. นอกจากสนับสนุนแหล่งจ่ายไฟปรสิตและการค้นพบโหนดเครือข่ายแล้ว, อินเทอร์เฟซและโปรโตคอล 1 สายรองรับการเสียบปลั๊ก, มักพบเฉพาะในระบบความเร็วสูงที่ใช้การส่งสัญญาณแบบดิฟเฟอเรนเชียลและ SMBus 2.0 ผลิตภัณฑ์ที่เข้ากันได้. iButton® ผลิตภัณฑ์ที่ใช้กันอย่างแพร่หลายเป็นอุปกรณ์ 1 สายแบบเสียบปลั๊กร้อนได้; การเสียบปลั๊กเป็นโหมดการทำงานปกติ. อุปกรณ์เหล่านี้ได้รับการพิสูจน์แล้วว่ามีประสิทธิภาพสูงในการใช้งาน เช่น หมายเลขประจำตัวทั่วโลก, circuit board/component identification and certification, temperature sensing, and actuation devices. Another successful application of 1-Wire technology includes secure storage and challenge-response mechanisms for achieving low-cost authentication and software code protection.

ก่อนหน้า:

ต่อไป:

ทิ้งคำตอบไว้

หนึ่งความคิดเห็น

  1. Backlinks For Seo Optimization

    Terrific work! This is the type of info that should be shared around the web. Shame on Google for not positioning this post higher! Come on over and visit my website . Thanks =)

ฝากข้อความ