单片机应用系统
[09-12 16:40:43] 来源:http://www.88dzw.com 单片机学习 阅读:8619次
文章摘要:单片机应用系统经常希望有功能全、价格低廉、体积小、及使用方便的接口电路与之配套使用,北京三誉有限公司代理的美国SUMMIT公司的S42WD42就是一款性价比很高的接口电路,它包含有四大功能:上电复位,看门狗,512字节EEPROM,第二电源电压监测。 S42WD42功能简介 上电复位:S42WD42可以提供130~270ms的上电复位脉冲,同时提供高电平复位和低电平复位引脚。复位电压转折点有三种供选择:2.55V、4.25V、4.5V。 看门狗定时时间长度为1.6s(标称值)。 EEPROM为512字节×8bit,一次可以写一个字节,也可写一页(16字节/页)。每个单元可反复写入1百万次
单片机应用系统,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com单片机应用系统经常希望有功能全、价格低廉、体积小、及使用方便的接口电路与之配套使用,北京三誉有限公司代理的美国SUMMIT公司的S42WD42就是一款性价比很高的接口电路,它包含有四大功能:上电复位,看门狗,512字节EEPROM,第二电源电压监测。
S42WD42功能简介
---- 上电复位:S42WD42可以提供130~270ms的上电复位脉冲,同时提供高电平复位和低电平复位引脚。复位电压转折点有三种供选择:2.55V、4.25V、4.5V。
---- 看门狗定时时间长度为1.6s(标称值)。
---- EEPROM为512字节×8bit,一次可以写一个字节,也可写一页(16字节/页)。每个单元可反复写入1百万次。无论写入字节或页,写入时间都是最大不超过10ms。
---- 第二电源电压监测:S42WD42除了主电源电压之外,还提供一个单独的引脚监测其电压,并输出状态。
![]() S42WD42引脚排列(如图1所示) |
---- /Vlow:当Vsense < 1.24V时,/Vlow输出低电平。注意此脚是漏极开路输出,需外加上拉电阻。
---- Vsense:第二监测电压输入。
---- SDA:I2C总线数据输入/输出。
---- SCK:I2C总线时钟输入。
---- /RESET:低电平复位输入/漏极开路输出。该脚可手动复位输入一个低电平,对应第7脚RESET输出高电平复位信号。
---- RESET:高电平复位输入/漏极开路输出。该脚可手动复位输入一个高电平,对应第2脚/RESET输出低电平复位信号。
---- Vcc:有两个版本芯片,工作电压2.7~5.5V
--------- 或4.5V~5.5V。
软件命令
---- S42WD42支持五种软件命令:写入一个字节;写入一页(16个字节);从当前地址读一个字节;从任意地址随机读一个字节;顺序读若干字节。
---- 命令编码为:1010xxA8R/W A7A6A5A4A3A2A1A0。第一个字节最低位R/W为1,就是READ;R/W为0,就是WRITE。
---- 如果软件在1.6s以内没有对S42WD42进行任何读写操作,看门狗就会复位芯片,输出复位脉冲。
![]() S42WD42与8031接口电路如图2所示。 |
软件源代码:
; 8031 external crystal is 11.0592 MHz SCK BIT P1.0 SDA BIT P1.1READ: LCALL START MOV A,DP ; DPTR包含读单元地址(9位) ANL A,#1 RL A ORL A,#10100000B ; R/W=0 LCALL SHIFTOUT LCALL POLLACK MOV A,DPL LCALL SHIFTOUT LCALL POLLACK LCALL START ; START again MOV A,#10100001B ; R/W=1 LCALL SHIFTOUT LCALL POLLACK MOV A,@R0 DEC A MOV R7,A ; read up to 256 bytes sequentially INC R0 ; input bufferRDNXT: LCALL SHIFTIN LCALL ACK ; CPU send out ACK to S42WD42 MOV @R0,A INC R0 DJNZ R7,RDNXT LCALL SHIFTIN LCALL UNACK MOV @R0,A LCALL STOP CLR C RETWRITE: LCALL START MOV A,DPH ; DPTR包含写入单元地址(9位) ANL A,#1 RL A ORL A,#10100000B ; R/W=0 LCALL SHIFTOUT LCALL POLLACK MOV A,DPL LCALL SHIFTOUT LCALL POLLACK MOV A,@R0 DEC A ANL A,#0FH ; write data length varies from 1 to 16 INC A MOV R7,A INC R0 ; point to beginning of output bufferWRNXT: MOV A,@R0 LCALL SHIFTOUT LCALL POLLACK INC R0 DJNZ R7,WRNXT LCALL STOP CLR C RETSTART: SETB C SETB SCL JNB SCL,BUSY SETB SDA JNB SDA,BUSY CLR SDA CLR SCL CLR CBUSY: RET ; C=1 if I2C BUS is busy STOP: CLR SCL NOP CLR SDA SETB SCL SETB SDA RETSHIFTOUT:MOV B,#8OUTNXT: CLR SCL RLC A MOV SDA,C SETB SCL DJNZ B,OUTNXT CLR SCL RETSHIFTIN: MOV B,#8 CLR SCL SETB SDA ; SDA pin as inputINNXT CLR SCL NOP NOP SETB SCL MOV C,SDA RLC A DJNZ B,INNXT CLR SCL RETACK: CLR SCL NOP CLR SDA ; ACK=0 SETB SCL CLR SCL RETUNACK: CLR SCL NOP SETB SDA ; ACK=1 SETB SCL CLR SCL RETPOLLACK: CLR SCL NOP SETB SDA ; ready to input SETB SCL MOV C,SDA ; slave respond with ACK if C=0 CLR SCL JNC ACKED LCALL STOP ; C=1 if no ACK from S42WD42ACKED: RET END
- 上一篇:单片机智能开发 平台解决方案
《单片机应用系统》相关文章
- › 在8051单片机应用系统中使用DiskOnChip
- › 单片机应用编程技巧
- › 非接触式给液的单片机应用设计
- › 单片机应用系统的抗干扰技术
- › 高性价比的单片机应用系统结构设计
- › 单片机应用系统
- 在百度中搜索相关文章:单片机应用系统
- 在谷歌中搜索相关文章:单片机应用系统
- 在soso中搜索相关文章:单片机应用系统
- 在搜狗中搜索相关文章:单片机应用系统