• slider image 442
  • slider image 492
  • slider image 493
  • slider image 494
  • slider image 495
  • slider image 496
  • slider image 488
  • slider image 491
:::

論壇索引


Board index » All Posts (before0915)




Re: PIC18F4550 I2C 的address 問題___part 2
#21
初級會員
初級會員


這是slaver 的設定程式
LATBbits.LATB0 = 0; // initial Latch of PORTB
LATBbits.LATB1 = 0; // initial Latch of PORTB
TRISBbits.TRISB0 = 1; // set RB0/SDA as input pin.
TRISBbits.TRISB1 = 1; // set RB1/SCL as input pin.
SSPCON1=0b00100110; //
SSPADD=0x02; // Address = 0x02
SSPCON2bits.GCEN=1;

RCONbits.IPEN=1; INTCONbits.GIEH=1; //enable ALL high priority interrupts
INTCONbits.GIEL=1; INTCON2bits.TMR0IP=1; //TMR0 is high priority
PIE1bits.SSPIE=1; //enable the MSSP interrupt
IPR1bits.SSPIP=0; //MSSP interrupt low priority

T0CON=0b00000000; //bit7:enable
TMR0H=0b11101000;
TMR0L=0b10001111;
INTCONbits.TMR0IE=1;

這是slaver的中斷副程式

void I2C_interrupt ()
{

unsigned char temp;
int i;

if(PIR1bits.SSPIF==1) //如果I2C中斷發生
{
PIR1bits.SSPIF=0;
temp=SSPBUF;

if(temp == 0x02)
{
TRISDbits.TRISD1=0;
PORTDbits.RD1=1;
}
}
}

這是 master 的設定程式

LATBbits.LATB0 = 1; // initial Latch of PORTB
LATBbits.LATB1 = 1; // initial Latch of PORTB
TRISBbits.TRISB0 = 1; // set RB0/SDA as input pin.
TRISBbits.TRISB1 = 1; // set RB1/SCL as input pin.

SSPADD=0xe; //clock = 400kHZ
SSPCON1=0b00111000;
SSPCON2bits.GCEN=1;
SSPSTAT=0b00000000;

這是master send I2C 給slave(0x02)的程式 , 只是slaver沒ack, 也就是沒回應 , 沒產生中斷 , 不過送0x00就會中斷
I2C_START();
if (I2C_Send_Address(0x02))
{ I2C_STOP();
}
else{
I2C_Send_Data(0x66);
I2C_STOP();
}



發表於: 2007/11/27 23:17
頂部


PIC18F4550 I2C 的address 問題___part 2
#22
初級會員
初級會員


Dear 大大
雖然我的slaver PIC的SSPADD設0x02 , SSPCON2的GCEN設1,
但我的master PIC的I2C 第一個byte(address) 從1送到255 ,
slaver PIC也不會有中斷發生 , 只有address送0x00 , slaver PIC才發生中斷 . . . . . . 這是PIC的問題嗎??????

發表於: 2007/11/19 22:42
頂部


PIC18F4550 I2C 的address 問題
#23
初級會員
初級會員


請問我拿兩顆PIC18F4550 一顆當master , 一顆當slaver
當master用I2C傳Address(ex. 0x02) 給slaver 時(SSPADD設0x01), slaver並沒有發生中斷 ???
但master用General call (0x00) 時 , slaver就會產生中斷 , 這是什麼問題呢??? 我的SSPADD有設對阿 , 還是還要設定其它的東西?

發表於: 2007/11/19 0:08
頂部


如何再PIC18F4550 的Timer0中斷函式中 , 再觸發I2C的中斷
#24
初級會員
初級會員


我使用了 Time0 high priority
I2C low priority
但是好像不會動ㄝ
可以在中斷函式中再觸發另一個中斷函式嗎????????

發表於: 2007/11/18 14:05
頂部


Build All時 出現錯誤訊息
#25
初級會員
初級會員


MPLINK 4.11, Linker
Copyright (c) 2007 Microchip Technology Inc.
Error - section 'HUGEOBJ' can not fit the section. Section 'HUGEOBJ' length=0x00000200
Errors : 1

如果出現上面的錯誤訊息是什麼問題呢?
因為同個程式在別台電腦Run沒有問題?

發表於: 2007/5/15 18:04
頂部



« 1 2 (3)



:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------