[Giúp] giao tiếp SPI giửa 2 Pic 16f877A
chào các bạn, các anh chị, các bậc tiền bối đi trước, E hôm này có vấn đề này muồn hỏi các bác.
Hiện em em đang làm bài tập về giao tiếp SPI, mọi người nói là nó rất dể, nhưng sao khi em biết xong chương trình và đưa nó vào thì nó ko chạy, mong các quy lão tiên sinh xem giúp em. và sữa sai giúp. Thân.
code:
//---------------------------------- Strar --------------------------//
int8 data=0;
Void Main()
{
Setup_spi(spi_master|spi_l_to_h|spi_clk_div_16);
while(true)
{
spi_write(data);
data++;
delay_ms(1000);
if(data>9) data=0;
}
}
//----------------------- END ----------------------//
Slave:
//-------------------------------- Star ---------------------------//
int8 data_in;
#int_ssp
void SPI()
{
data _in=spi_read();
delay_us(100);
}
void main()
{
setup_spi(spi_slave|spi_l_to_h|spi_clk_div_16);
enable_interrupts(int_ssp);
enable_interrupts(global);
lcd_init();
while(true)
{
lcd_putcmd(0x80);
printf(lcd_putchar," Value: %U",data_in);
delay_us(500);
}
}
//----------------------- END ------------------//
kết nối chân giửa 2 PIC
RC3 SLK
RC4 SDI
RC5 SDO
Master-------------------Slave
RC3----------------------RC3
RC4----------------------RC5
RC5----------------------RC4
em làm như vậy ko biết có sai chổ nào ko mong các anh Giúp em. Thân.
thay đổi nội dung bởi: lambaotrung, 25-04-2012 lúc 11:48 PM.
|