樓主的主程序:
- //對I2C總線上掛接多個AT24C02的讀寫操作
- #include <reg51.h> // 包含51單片機寄存器定義的頭文件
- #include "AT24C02.h" //包含_nop_()函數定義的頭文件
- /***************************************************
- 函數功能:主函數
- ***************************************************/
- void main(void)
- {
- unsigned char x;
- SDA = 1; // SDA=1,SCL=1,使主從設備處于空閑狀態
- SCL = 1;
- WriteSet1(0x36,0xaa); //將數據"0xaa"寫入第一個AT24C02的指定地址"0x36"
- x=ReadSet1(0x36); //從第一個AT24C02中的指定地址"0x36"讀出數據
- WriteSet2(0x48,x); //將讀出的數據寫入第二個AT24C02的指定地址"0x48"?
- P1=ReadSet2(0x48); //將從第二個AT24C02的指定地址讀出的數據送P1口顯示驗證
- WriteSet3(0x2f,0x75); //將數據"0x75"寫入第三個AT24C02的指定地址"0x2f"
- x=ReadSet3(0x2f); //從第三個AT24C02中的指定地址"0x2f"讀出數據
- WriteSet4(0x5a,x); //將讀出的數據寫入第四個AT24C02的指定地址"0x5a"
- P2=ReadSet4(0x5a); //將從第四個AT24C02的指定地址讀出的數據送P1口顯示驗證
- }
復制代碼 |