一個(gè)PIC讀寫(xiě)內(nèi)部EEPROM的程序(c) 作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 加入技術(shù)交流群 掃碼加入和技術(shù)大咖面對(duì)面交流海量資料庫(kù)查詢 收藏 #includeint i,j=1,k=1;void initial(void) //初始化{ TRISB=0x00; //RB為輸出 EEDATA=0x00; //數(shù)據(jù)賦初值 EEADR=0x00; //地址賦初值 }void write_data(void) { for(i==1;i<=0xFF;++i) { PIR2bits.EEIF=0; EECON1bits.EEPGD=0; //設(shè)置訪問(wèn)目標(biāo)為EEPROM EECON1bits.WREN=1; //允許進(jìn)行寫(xiě)操作 INTCONbits.GIE=0; //禁止中斷 EECON2=0x55; EECON2=0xAA; //校驗(yàn) EECON1bits.WR=1; //啟動(dòng)一次寫(xiě)操作 EECON1bits.WREN=0; //關(guān)閉寫(xiě)操作 EEADR=++EEADR; //地址遞增 EEDATA=++EEDATA; //數(shù)據(jù)遞增 } }void read_display(void) { EEDATA=0x00; //數(shù)據(jù)賦初值 EEADR=0x00; //地址賦初值 for (j=1;j<=0xFF;j++) { EECON1bits.EEPGD=0; //設(shè)置訪問(wèn)目標(biāo)為EEPROM EECON1bits.RD=1; //啟動(dòng)一次讀操作 PORTB=EEDATA; //送顯 Delay1KTCYx(252); //延時(shí) EEADR=++EEADR; //地址遞增 EEDATA=++EEDATA; //數(shù)據(jù)遞增 } }void main(void){ initial(); while(1) { write_data(); read_display(); } }
評(píng)論