![]() |
I2C Slave Library?
Một số PIC hỗ trợ cả 2 chuẩn I2C và SPI nhưng chỉ dùng được 1 trong 2. Vậy nếu giả sử tôi cần ghép nối serial bus (ví dụ I2C) giữa 2 PIC trong khi mỗi PIC cũng có giao tiếp với các ngoại vi khác (RTC, DAC,...)thì phải làm thế nào? Xin các cao thủ giúp đỡ.
Cám ơn. |
Trích:
I2C, SPI co the mac noi tiep duoc nhieu VDK, hay cac thiet bi ngoai vi tren mot duong truyen ma ?????????? Con neu bac dung SPI cho mot thiet bi ngoai vi, va muon dung I2C cho viec ket noi voi VDK khac ( o che do Master ) ban co the dung phan mem. Trong muc nay toi co bai viet dung phan mem cho I2C roi day |
Re:
Ý tôi là thế này: Tôi có 1 PIC kết nối I2C với DAC và 1 PIC khác nối I2C với EEPROM, RTC. Bây giờ nối 2 PIC với nhau như thế nào?
|
Trích:
|
Việc giao tiếp giữa các VDK với nhau thông qua I2C hay bất kỳ giao tiếp nào là vấn đề hay. Về I2C tôi đã làm xong rồi, lấy đơn giản giưa 2 con PIC 88 và 877, 877 là master. Tôi cho truyền một chuỗi ký tự sang 88, 88 nhận được và phản hồi lại. 877 sẽ hiển thị trên LCD. Quan trọng nhất tron giao tiếp này là việc xử lý dữ liệu ở con Slave. Khi nó nhận được yêu cầu đọc từ master thì cần truyền byte ra. Khi dùng CCS ta sử dụng ngắt #INT_SSP
Nguyên văn bởi tuanva: Ý tôi là thế này: Tôi có 1 PIC kết nối I2C với DAC và 1 PIC khác nối I2C với EEPROM, RTC. Bây giờ nối 2 PIC với nhau như thế nào? Đơn giản là bạn nối chúng với đường I2C, gán cho một địa chỉ. Như vậy cả hai đều dùng được tại nguyên của nhau. Ngắt SSP #INT_SSP I2C_ISR { byte data_in if (i2c_state_isr < 0x80) i2c_write(data_to_send_to_master) else data_in = i2c_read() } // Đây chỉ là ví dụ đơn giản cho Slave. |
bác nào có tài liệu về I2C thì cho tui với.tui cũng không hiểu về nó lắm.Giả sử tôi muốn gắn 1 cái webcam với 1 VDK thì làm thế nào để 2 con đó giao tiếp với nhau.mong các bác chỉ giúp
|
bạn hãy đọc mục này nhé
http://www.picvietnam.com/forum/showthread.php?t=611 |
Múi giờ GMT. Hiện tại là 05:28 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam