·设为首页
·联系站长
·加入收藏
 位置: 51单片机学习网 >> 学习园地 >> 编程实例 >> 正文 新年新气象, 庆祝asp版本调试成功  [2006-12-04 15:19:54]      跟我来作ep51编程器( 套件供应) 大量到货, 恢复供应...  [2006-12-04 15:18:38]      庆祝深圳市学林电子有限公司XL1000产品获得批量订单  [2006-12-04 15:16:00]
  实验19 24C02储存开机次数实验   3星级
实验19 24C02储存开机次数实验
[ 作者:Admin     来源:51单片机学习网     点击数:     更新时间:2006-12-4     文章录入:Admin
【字体: 字体颜色
*实验19   24C02储存开机次数实验
 24C02是2K字节的串行EEPROM, 内部含有256个8位字节,该器件通过总线操作,并有专门的写保护功能。
下面给出的是24C02的电路原理图和器件管脚描述。
串行EEPROM简称I2C总线式串行器件。串行器件不仅占用很少的资源和I/O线,而且体积大大缩小,同时具有工作电源宽、抗干扰能力强、功耗低、数据不易丢失和支持在线编程等特点。
     I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。
我们通过一个试验来了解24C02的读写操作过程:
该试验功能是单片机复位一次, 自动从24C02中读取数据, 然后加1,最终数码管中的数据就是开机的次数,具有一定的实用意义。
接线方法:
1 接8位数码管的数据线。将数码管部份的数据口 JP5接到CPU部份的P0口JP51.
2 接8位数码管的显示位线。将数码管部份的显示位口 JP8接到CPU部份的P2口JP52.
3用一根2PIN数据线一端插入CPU部分JP53(P3口)的P3.6,P3.7另外一端插入24C02部分的控制端JP38。
烧写后用手按复位键可以看到数码管每按一下加一。
  SDA24  EQU  P3.7
SCLK24   EQU  P3.6
     ORG  0000H
     AJMP MAIN
     ORG  0030H
MAIN:CLR P3.7     ;打开写保护
     MOV  DPTR,#TAB
     MOV  A,#00H        ;读地址
     LCALL    RD24
     CJNE A,#10,TT
TT:  JNC  TT1
     AJMP TT2
TT1: MOV  A,#00
TT2: MOV  30H,A
     MOVC A,@A+DPTR
     CLR  P2.6     ;开数码管
     MOV  P0,A     ;送显示
     MOV  A,30H
     INC  A
     MOV  B,A
     MOV  A,#00H
     LCALL    WT24
     AJMP $
TAB: DB     28H,7EH,0A2H,62H,74H,61H,21H,7AH,20H,60H
RD24:  PUSH ACC        ;读24C02子程序。
        SETB SDA24
        CLR SCLK24
        CALL START24   ;启动
        MOV A,#0A0H
        CALL SHIFT8    ;移位
        CALL ACK   ;响应
        POP ACC
        CALL SHIFT8
        CALL ACK
        CALL START24
        MOV A,#0A1H
        CALL SHIFT8
        CALL ACK
SETB SDA24
        MOV R7,#8
        CLR A
        SETB SDA24
  RD000:  RL A         ;8个位
       SETB SCLK24
        MOV C,SDA24
        MOV ACC.0,C
        CLR SCLK24
        DJNZ R7,RD000
        RET
WT24:   PUSH ACC;写入24C02程序:
        SETB SDA24
        CLR SCLK24
        CALL START24
        MOV A,#0A0H
        CALL SHIFT8
        CALL ACK
        POP ACC
        CALL SHIFT8
        CALL ACK
        MOV A,B
        CALL SHIFT8
        CALL ACK
        CALL STOP
        CALL DELAY2
        RET
START24:CLR SDA24;开始条件
        SETB SDA24
        SETB SCLK24
        CLR SDA24
        CLR SCLK24
        RET
STOP:   CLR SDA24;停止条件
        SETB SCLK24
        SETB SDA24
        RET
ACK:    SETB SCLK24;应答信号
        CLR SCLK24
        RET
SHIFT8: MOV R7,#8;读、写数据
SH01:   RLC A
        MOV SDA24,C
        SETB SCLK24
        CLR SCLK24
        DJNZ R7,SH01
        RET
DELAY2:  NOP
END
  • 上一篇文章: 实验18 8155试验

  • 下一篇文章: 实验20 步进电机实验
  • 发表评论   告诉好友   打印此文  收藏此页  关闭窗口  返回顶部
     最新5篇热点文章
     实验20 步进电机实验
     实验17 1602液晶显示屏显...
     实验14 小喇叭警报器试验...
     XL1000单片机综合仿真试验...
     大电流电缆线品质的检定 ...
     
     最新5篇推荐文章
     12864 液晶应用说明+源程序...
     实验20 步进电机实验
     实验17 1602液晶显示屏显...
     实验14 小喇叭警报器试验...
     XL1000单片机综合仿真试验...
     
     相 关 文 章

      网友评论:(只显示最新5条。评论内容只代表网友观点,与本站立场无关!)