新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 如何通過MAX2990 I2C接口向標準EEPROM (24C04)連接

        如何通過MAX2990 I2C接口向標準EEPROM (24C04)連接

        作者: 時間:2010-10-25 來源:網絡 收藏

        現在,我們可以驗證一下用于讀、寫操作的功能。

        本文引用地址:http://www.104case.com/article/173171.htm
        i2c_init_write(void)i2c_init_read(void)i2c_write(UINT8 data)i2c_read(UINT8 *data)

        void i2c_init_write(void){CN_bit.MODE = 0; //  transmit modeI2CCN_bit.I2CACK = 1; // Creates I2C NACK so that slave can create ACKI2C_START; 		// Generates I2C START conditionwhile( I2CCN_bit.I2CSTART == 1 ); 	// Waits until the START condition// was put to the I2C busI2CST_bit.I2CSRI = 0; 		// Resets the I2C interrupt flag}int i2c_init_read(void){I2CCN_bit.I2CMODE = 1; 	// I2C read-modeI2CCN_bit.I2CACK = 0; 	// Creates I2C ACK after receiveI2C_START; 		// Generates I2C START conditionwhile( I2CCN_bit.I2CSTART == 1 ); 	// Waits until the START conditionI2CST_bit.I2CSRI = 0; 		// Resets the I2C interrupt flag}void i2c_write(UINT8 data){I2CBUF = data; 			// Puts the data on the I2C buswhile( I2CST_bit.I2CTXI == 0 ); 	// Waits for transfer completeI2CST_bit.I2CTXI = 0; 		// Resets the I2C transmit complete// interrupt flag}void i2c_read(UINT8 *data){I2CBUF = 0xff; 	// Puts all ones on the I2C bus so that slave can pull// the bus down to generate zeroswhile( !I2CST_bit.I2CRXI ); 		// Waits for receive completeI2CST_bit.I2CRXI=0; 		// Resets the I2C receive complete// interrupt flag*data = I2CBUF; 			// Writes the data to the pointer}

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 沅陵县| 兰西县| 上林县| 武平县| 彰化县| 横峰县| 慈利县| 县级市| 武夷山市| 宝兴县| 阆中市| 普格县| 东莞市| 团风县| 五河县| 芮城县| 巨鹿县| 黄龙县| 芦山县| 龙游县| 达尔| 邵阳县| 武清区| 普定县| 杨浦区| 县级市| 仙居县| 南溪县| 方山县| 胶南市| 永昌县| 珲春市| 县级市| 柘城县| 普兰县| 格尔木市| 赤峰市| 集安市| 章丘市| 泰州市| 郑州市|