|
最近开发产品中用到24C256,现将其读/写程序贴在下面,以供大家参考.
注意:只有单字节的读写;页操作和连续读写也都差不多.请大家指教.
'//////////////////////////////////////////////////////// **********************
'/ BASCOM Basic Compiler for AVR / *镕丝设定: *
'/ This program using M8 / * *
'/ 作者: 周金生 / * *
'/ 日期: 2005-12-25 / * *
'/ 内容: 24C256读/写程序 / * *
'//////////////////////////////////////////////////////// **********************
'********************初始化/编译器指示********************
'$sim
$regfile = "m32def.dat"
$crystal = 1000000
Dim B_1 As Byte
'-----------
Config Sda = Portc.1 '定义硬件连接
Config Scl = Portc.0
'Config I2cdelay = 10 ' 100KHz
I2cinit '初始化
'----------<指定地址写/读>--------
'指定地址写(单字节)
I2cstart '起始信号
I2cwbyte &HA0 '器件寻址(写操作)
I2cwbyte &H01 '指定写地址(高7位)
I2cwbyte &H00 '指定写地址(低8位)
I2cwbyte &H01 '将"H0F"写入"00H"单元
I2cstop '写操作结束
Waitms 20
'--------
'指定地址读(单字节)
I2cstart '起始信号
I2cwbyte &HA0 '器件寻址(写操作)
I2cwbyte &H01 '指定写地址(高7位)
I2cwbyte &H00 '指定写地址(低8位)
I2cstart '再次启动
I2cwbyte &HA1 '器件寻址(读操作)
I2crbyte B_1 , Ack '读操作/回应
I2cstop '操作结束
End |
|