新闻中心

EEPW首页>嵌入式系统>设计应用> X25165芯片在8051系统中的应用

X25165芯片在8051系统中的应用

作者: 时间:2012-03-05 来源:网络 收藏

e.读存储单元内容子程序

的串行EEPROM中读指定单元内容,需要先发送READ指令和16位地址,指定地址单元的数据在SCK脉冲的作用下就会从S0引脚依次移出。
WD-RD-DATA:CLR P1.2 ;使SCK为低电平
CLR P1.3 ;选择CS有效
MOC A,#03H ;READ指令送累加器A
LCALL WD-OUTB;输出READ指令
MOV A,DPH;高位地址送累加器A
LCALL WD-OUTB ;输出高位地址
MOV A,DPL ;低位地址送累加器A
LCALL WD-OUTB ;输出低位地址
LCALL WD-INB ;读取(DPTR)单元的数据
MOV R4,A ;数据送R4
LCALL WD-INB ;读取(DPTP+1)单元的数据
MOV R5,A ;数据送R5
CLR P1.2 ;使SCK为低电平
SETB P1.3 ;选择CS无效
RET

f.写存储单元内容子程序

该子程序向内EEPROM的指定起始地址写入数据,与写状态寄存器子程序一样,程序中需要先输出WREN指令设置写使能锁存器。然后,按高位在前的顺序输出存放于DPTR中的16位地址和存放于R5、R4中的16位数据。最后,要循环检测状态寄存器的WIP位,直到芯征内容的写操作完成,以确保数据被安全可靠地写入芯片。
WD-WR-DATA:CLR P1.2 ;使SCK为低电平
CLR P1.3 ;芯片选择CS有效
MOV A,#06H ;WREN指令送累加器A
LCALL WD-LUTB ;输出WREN指令
SETB P1.3 ;使CS为高电平
CLR P1.3 ;芯片选择CS有效
MOV A,#02H ;WRITE指令送累加器A
LCALL WD-OUTB ;输出WRITE指令
MOV A,DPH ;输出高8位地址
LCALL WD-OUTB ;
MOV A,DPL ;输出低8位地址
LCALL WD-OUTB ;
MOV A, R4 ;输出低8位数据
LCALL WD-OUTB ;
MOV A,R5 ;输出高8位数据
LCALL WD-OUTB;
CLR P1.2 ;使SCK为低电平
SETB P1.3 ;使CS为高电平
WD-WIP-POLL:LCALL WD-RD-SR ;读状态寄存器
JB ACC.0, WD-WIP-POLL
;检测WIP位
RET

g.看门狗定时器复位子程序

只要在设定的看门狗定时器超时周期以内执行子程序并向芯片的CS引脚发送一个下降沿,看门狗就不会产生复位输出信号。
WD-EAT:SETB P1.3 ;
CLR P1.3 ;产生CS下降沿脉冲
SETB P1.3 ;
RET

笔者在设计车轮径轴向位移检测仪时使用了芯片,从而简化了结构,降低了成本,提高了的可靠性,使用过程中保存的数据从未发生丢失现象,使用结果令人满意。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭