SPI thì có tốc độ cao hơn I2C > UART
đường truyền của CAN thì xa khoảng vài trăm mét, còn UART khoảng 12 mét theo lý thuyết
còn SPI hay I2C thì chỉ truyền trong mạch thôi chứ không truyền xa.
nếu muốn truyền xa thì dùng CAN (chỉ với 2 dây)
nếu muốn giao tiếp với các vi điều khiển với nhau thì chỉ còn xét khaỏng cách thôi:
+ có người dùng CAN (mạng trong nhà thông minh dựa trên nền tảng của nó, công nghiệp thì dùng 485 (UART)) đó là khaỏng cách xa
+ còn có thể dung I2C hoặc SPI đều được, cái nào dễ thì xài, nếu chưa yêu cầu tốc độ vì SPI có tốc độ cao hơn I2C nếu bạn truyền trong mạch
ít lỗi phát sinh hả, cái này còn tùy lập trình chứ sao biết được, nếu truyền xa mà dùng uart thì có khả năng xung đột địa chỉ (485), nên dùng can thì hay hơn.
Còn trong mạch hả có thể dùng I2C hay SPI tùy, còn riêng mình thì trong mạch mình dùng I2C vì dễ làm hơn, mình dùng nhiều thiết bị nối chung vô một mạng I2C mà.
chỉ biết tới đó thôi, có gì thì trao đổi thêm.
|