View Single Post
Old 18-07-2011, 11:40 PM   #6
mr.ngoc
Nhập môn đệ tử
 
Tham gia ngày: Aug 2009
Bài gửi: 4
:
anh Bình cho em hỏi muốn 1 master điều khiển 2 Slave vậy trong code con Master cần xử lý thế nào hả anh!
#include <16F877A.H>
#include <DEF_877A.H>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use Delay(Clock=4000000)
#use i2c(master, sda=PIN_C4, scl=PIN_C3)

#define SLAVE_1 0x10
#define SLAVE_2 0x20

int8 value1,value2,i;
//nst unsigned char dig[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X9 0};

//ham ghi data xuong slave1
void wr_slave1(int8 a)
{
i2c_start();
i2c_write(SLAVE_1);
i2c_write(a);
i2c_stop();
}

//ham ghi data xuong slave2
void wr_slave2(int8 b)
{
i2c_start();
i2c_write(SLAVE_2);
i2c_write(b);
i2c_stop();
}

void main()
{
value1 = 1;
value2 = 255;
while(true)
{
i=10;
while(i--){
wr_slave1(value1);
value1=value1<<1;
delay_ms(300);
}
i=8;
while(i--){
wr_slave2(value2);
value2--;
delay_ms(300);
}
}
}

code này cho master em dùng nếu chỉ đk 1 trong 2 slave thì đc nhưng có đk 2 con thì chịu ko chạy luôn!
cảm ơn anh!
mail của em: ngocdt.utehy@gmail.com
mr.ngoc vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn