การสื่อสารอนุกรม
การสื่อสารอนุกรมแบบซิงโครนัสเป็นการสื่อสารแบบซิงโครนัสที่มีความเร็วสูง มีคุณสมบัติดังนี้ 1. เป็นการสื่อสารแบบ FULL DUPLEX ที่ใช้สายสัญญาณ 3 เส้น ในการส่งถ่ายข้อมูล 2. สามารถทำงานเป็นได้ทั้งตัวส่งข้อมูลและตัวรับข้อมูล 3. สามารถเลือกส่งแบบบิท MSB หรือ LSB 4. มี FLAG แสดงสถานะการส่งข้อมูลสิ้นสุดรูปแสดงโครงสร้างของ SPI
การสื่อสารข้อมูลระหว่าง MCU ที่เป็น MASTER กับ MCU ที่เป็น SLAVE ด้วยการสื่อสารแบบ SPI โดยที่ขา PB(SCK) ซึ่งเป็นขา CLOCK จะถูกใช้งานเป็นขา Output เมื่อ MCU เป็น MASTER และถูกใช้งานเป็นขา Input เมื่อ MUC เป็น SLAVE โดยทุกครั้งที่เขียนข้อมูลลงใน SPI Data Register ของ MCU ที่เป็น MASTER และกำเนิด CLOCK ที่ขา SCK และข้อมูลจะถูก เลื่อนออกจากขา MOSI ของตัว MCU ที่เป็น MASTER เข้าไปที่ขา MOSI ของตัสที่เป็น SLAVE และเมื่อมีการส่งข้อมูลครบ 1 BYTE สัญญาณ CLOCK จะหยุดและทำให้บิท SPIF จะถูกเซ็ต ซึ่งถ้าบิท SPIE ในรีจีสเตอร์ SPCR ถูกเซ็ตเป็น 1 จะทำให้เกิดการ อินเตอร์รัพท์รูปแสดง SPI MASTER - SLAVE Interconnection
ในด้านการส่งข้อมูลจะมี BUFFER เพียงชุดเดียวแต่ในส่วนด้านรับจะมี BUFFER 2 ชุด เพราะฉะนั้นการส่งข้อมูลใน BUFFER ถูกส่งออกไปยังด้านรับเรียบร้อยแล้วจึงจะสามารถเขียนข้อมูลใหม่ลงใน BUFFER ได้ ส่วนในการรับข้อมูลออกจาก SPI Data Register ก่อนที่ข้อมูลชุดใหม่ จะถูกส่งเข้ามาเพื่อไม่ให้ข้อมูลสูญหาย
สามารถกำหนดทิศทางของ MOSI,MISO,SCK และ SS จะถูกกำหนดตามตารางตาราง SPI Pin Overrides
PIN | Direction,Master SPI | Direction,Slave SPI |
---|---|---|
MOSI | User Defined | Input |
MISO | Input | User Defined |
SCK | User Defined | input |
ss | User Defined | Input |
การกำหนดลักษณะขาสัญญาณที่ SCK เพื่อใช้ในการสื่อสารข้อมูลแบบ SPI โดยสามารถกำหนดได้จากบิท CPHA และบิท CPOLรูปแสดง SPI Tranfer Format With CPHA = 0
ไมโครคอนโทรลเลอร์ AT90S4434/8535 ให้มีฟังก์ชั้น โดยมีคุณสมบัติดังนี้ 1.สามารถเปลี่ยนแปลง BAUD RATE ของการสื่อสารได้หลาย BAUD RATE 2.สามารถสื่อสารได้ในอัตรา BAUD RATE ที่สูงในขณะที่ความถี่ XTAL ต่ำ 3.สื่อสารข้อมูลได้ทั้ง 8 บิท และ 9 บิท 4.มีส่วนของการกำจัดสัญญาณรบกวน 5.ตรวจสอบการผิดพลาดของการสื่อสารข้อมูล 6.ตรวจจับความผิดพลาดของบิทเริ่มต้น 7.จัดให้มีการแยกอินเตอร์รัพท์ของการสื่อสาร 8.มีบัพเฟอร์ในการเก็บข้อมูล