ການເລືອກລະຫວ່າງ I2C ແລະ SPI, ສອງທາງເລືອກການສື່ສານແບບ serial ຕົ້ນຕໍ, ສາມາດເປັນສິ່ງທ້າທາຍແລະມີຜົນກະທົບທີ່ສໍາຄັນຕໍ່ການອອກແບບໂຄງການ, ໂດຍສະເພາະຖ້າການນໍາໃຊ້ການໂຕ້ຕອບການສື່ສານຜິດພາດຖືກນໍາໃຊ້. ທັງ SPI ແລະ I2C ນໍາເອົາຂໍ້ໄດ້ປຽບແລະຂໍ້ຈໍາກັດຂອງຕົນເອງເປັນໂປຼແກຼມການສື່ສານທີ່ເຮັດໃຫ້ພວກເຂົາເຫມາະສົມກັບຄໍາຮ້ອງສະຫມັກຕ່າງໆ.
SPI
SPI, ຫຼື Serial ກັບ Peripheral Interface, ແມ່ນພະລັງງານທີ່ຕ່ໍາຫລາຍ, ສີ່ສາຍເຊື່ອມຕໍ່ການສື່ສານແບບ serial ທີ່ອອກແບບສໍາລັບການ ຄວບຄຸມ IC ແລະອຸປະກອນຕໍ່ພ່ວງໃນການສື່ສານກັບກັນແລະກັນ. ລົດເມ SPI ແມ່ນລົດເມເຕັມແບບ duplex ເຊິ່ງສາມາດເຊື່ອມຕໍ່ກັບອຸປະກອນຕົ້ນແບບພ້ອມກັນໄດ້ໃນອັດຕາສູງເຖິງ 10Mbps. ການດໍາເນີນງານຄວາມໄວສູງຂອງ SPI ໂດຍປົກກະຕິຈໍາກັດວ່າມັນຖືກນໍາໃຊ້ເພື່ອຕິດຕໍ່ສື່ສານລະຫວ່າງອົງປະກອບຕ່າງໆໃນ PCBs ແຍກຕ່າງຫາກເນື່ອງຈາກການເພີ່ມຂະຫນາດ capacitance ທີ່ການສື່ສານໄລຍະໄກເພີ່ມເຕີມຕໍ່ສາຍສັນຍານ. PCB capacitance ຍັງສາມາດຈໍາກັດຄວາມຍາວຂອງສາຍການສື່ສານ SPI.
ໃນຂະນະທີ່ SPI ເປັນໂປຣແກຼມທີ່ຖືກສ້າງຂຶ້ນ, ມັນບໍ່ແມ່ນມາດຕະຖານທີ່ນໍາໄປສູ່ການປ່ຽນແປງຕ່າງໆແລະການປັບແຕ່ງ SPI ເຊິ່ງສາມາດນໍາໄປສູ່ບັນຫາຄວາມເຂົ້າກັນໄດ້. ການປະຕິບັດ SPI ຄວນຈະຖືກກວດສອບລະຫວ່າງຜູ້ຄວບຄຸມຕົ້ນສະບັບແລະລະບົບປະຕິບັດການຄອມພິວເຕີເພື່ອຮັບປະກັນວ່າການປະສົມປະສານຈະບໍ່ມີບັນຫາການສື່ສານທີ່ບໍ່ຄາດຄິດທີ່ຈະສົ່ງຜົນກະທົບຕໍ່ການພັດທະນາຜະລິດຕະພັນ.
I2C
I2C ເປັນໂປແກຼມການສື່ສານທີ່ມີມາດຕະຖານແບບມາດຕະຖານທີ່ຕ້ອງການພຽງສອງສາຍສັນຍານທີ່ຖືກອອກແບບມາສໍາລັບການສື່ສານລະຫວ່າງ chip ກັບ PCB. I2C ໄດ້ຖືກອອກແບບມາສໍາລັບການສື່ສານ 100kbps ແຕ່ວ່າຮູບແບບການສົ່ງຜ່ານຂໍ້ມູນທີ່ໄວກວ່າໄດ້ຮັບການພັດທະນາຫຼາຍປີເພື່ອບັນລຸຄວາມໄວເຖິງ 34Mbps. ໂປຣແກຣມ I2C ໄດ້ຖືກສ້າງຕັ້ງຂຶ້ນເປັນມາດຕະຖານຢ່າງເປັນທາງການເຊິ່ງໃຫ້ຄວາມເຂົ້າກັນໄດ້ດີລະຫວ່າງການປະຕິບັດ I2C ແລະຄວາມເຂົ້າກັນໄດ້ດີ.
ການເລືອກລະຫວ່າງ I2C ແລະ SPI
ການເລືອກລະຫວ່າງ I2C ແລະ SPI, ສອງໂປແກຼມການສື່ສານແບບອະນຸກົມຕົ້ນຕໍ, ຮຽກຮ້ອງໃຫ້ມີຄວາມເຂົ້າໃຈດີກ່ຽວກັບຂໍ້ໄດ້ປຽບແລະຂໍ້ຈໍາກັດຂອງ I2C, SPI ແລະຄໍາຮ້ອງສະຫມັກຂອງທ່ານ. ແຕ່ລະໂປຣແກຣມການສື່ສານຈະມີຂໍ້ດີທີ່ແຕກຕ່າງກັນເຊິ່ງມັກຈະແຍກຕົວເອງຍ້ອນວ່າມັນນໍາໃຊ້ກັບຄໍາຮ້ອງສະຫມັກຂອງທ່ານ. ຄວາມແຕກຕ່າງທີ່ສໍາຄັນລະຫວ່າງ I2C ແລະ SPI ແມ່ນ:
- I2C ຮຽກຮ້ອງພຽງແຕ່ສອງສາຍ, ໃນຂະນະທີ່ SPI ຮຽກຮ້ອງໃຫ້ສາມຫາສີ່
- SPI ສະຫນັບສະຫນູນ ການສື່ສານຢ່າງເຕັມທີ່ duplex ຄວາມໄວສູງໃນຂະນະທີ່ I2C ແມ່ນຊ້າ
- I2C draws more power than SPI
- I2C ສະຫນັບສະຫນູນອຸປະກອນຕ່າງໆໃນລົດເມດຽວກັນໂດຍບໍ່ມີສາຍສັນຍານທີ່ເລືອກຕື່ມໂດຍຜ່ານການຕິດຕໍ່ອຸປະກອນໃນການສື່ສານໃນຂະນະທີ່ SPI ຮຽກຮ້ອງສາຍສັນຍານເພີ່ມເຕີມເພື່ອຈັດການອຸປະກອນຕ່າງໆໃນລົດດຽວກັນ
- I2C ຮັບປະກັນວ່າຂໍ້ມູນທີ່ຖືກສົ່ງມາໄດ້ຖືກຮັບໂດຍອຸປະກອນສໍາລອງແຕ່ SPI ບໍ່ໄດ້ຢືນຢັນວ່າຂໍ້ມູນທີ່ຖືກສົ່ງຖືກຕ້ອງ
- I2C ສາມາດຖືກລັອກໄວ້ໂດຍອຸປະກອນທີ່ບໍ່ສາມາດປ່ອຍລົດບັດການສື່ສານໄດ້
- SPI ບໍ່ສາມາດສົ່ງ PCB ອອກໄປໃນຂະນະທີ່ I2C ສາມາດເຮັດໄດ້, ເຖິງວ່າຈະມີຄວາມໄວໃນການສົ່ງຂໍ້ມູນຕ່ໍາ
- I2C ແມ່ນ ລາຄາຖືກກວ່າທີ່ຈະປະຕິບັດ ກວ່າໂປຼແກຼມການສື່ສານ SPI
- SPI ພຽງແຕ່ສະຫນັບສະຫນູນອຸປະກອນຕົ້ນຕໍໃນລົດເມໃນຂະນະທີ່ I2C ສະຫນັບສະຫນູນອຸປະກອນຕົ້ນສະບັບຫຼາຍ
- I2C ມີຄວາມສ່ຽງຫນ້ອຍກວ່າ SPI
- SPI ພຽງແຕ່ສາມາດເດີນທາງໄລຍະສັ້ນແລະຫນ້ອຍລົງຈາກ PCB ໃນຂະນະທີ່ I2C ສາມາດສົ່ງຂໍ້ມູນຜ່ານໄລຍະຫ່າງຫຼາຍກວ່າ, ເຖິງແມ່ນວ່າຢູ່ໃນອັດຕາຂໍ້ມູນຕ່ໍາ
- ການຂາດມາດຕະຖານຢ່າງເປັນທາງການໄດ້ເຮັດໃຫ້ມີການປ່ຽນແປງຫຼາຍຢ່າງຂອງສັນຍາລັກ SPI, ການປ່ຽນແປງທີ່ໄດ້ຮັບການຫຼີກລ້ຽງຢ່າງຫຼວງຫຼາຍກັບໂປຣແກຣມ I2C
ຄວາມແຕກຕ່າງເຫຼົ່ານີ້ລະຫວ່າງ SPI ແລະ I2C ຄວນເຮັດໃຫ້ເລືອກເອົາທາງເລືອກການສື່ສານທີ່ດີທີ່ສຸດສໍາລັບຄໍາຮ້ອງສະຫມັກຂອງທ່ານງ່າຍຂຶ້ນ. ທັງ SPI ແລະ I2C ແມ່ນທາງເລືອກການສື່ສານທີ່ດີ, ແຕ່ແຕ່ລະຄົນມີປະໂຫຍດທີ່ແຕກຕ່າງກັນແລະການນໍາໃຊ້ທີ່ເຫມາະສົມ. ໂດຍທົ່ວໄປ, SPI ແມ່ນດີກວ່າສໍາລັບການໃຊ້ງານສູງແລະໃຊ້ພະລັງງານຕ່ໍາໃນຂະນະທີ່ I2C ດີກວ່າເຫມາະສໍາລັບການສື່ສານກັບອຸປະກອນພາຍນອກຈໍານວນຫລວງຫລາຍແລະການປ່ຽນແປງແບບເຄື່ອນໄຫວຂອງອຸປະກອນຕົ້ນແບບລະຫວ່າງອຸປະກອນພາຍໃນລົດບັດ I2C. ທັງ SPI ແລະ I2C ແມ່ນໂປໂຕຄອນການສື່ສານທີ່ຫມັ້ນຄົງແລະມີຄວາມຫມັ້ນຄົງສໍາລັບການນໍາໃຊ້ທີ່ຖືກຕ້ອງທີ່ເຫມາະສົມສໍາລັບໂລກທີ່ຖືກຝັງໄວ້.