主机控制DS2450完成A/D转换一般必须经过以下几个步骤:初始化使DS2450准备好、发ROM功能命令和相应的64位光刻ROM数据选中特定芯片、写入工作方式控制字和高/低限值、发转换控制命令、读取转换值及状态。

例如,将D通道设定为5.1V输入范围、转换精度为12位、高报警门限为3.0V(96H)、低报警门限为2.0V(64H)、通道A和B作为报警输出、转换结果放在如下30H和31H的子程序CTLAD中。

;--------------------------

CTLAD:LCALLINIT;发复位脉冲并接收存在脉冲

MOVA,#0CCH

LCALLWRITE;发“跳过ROM”命令

;设置4个通道工作方式控制字,写入存储器地址从0008H开始

FSKZ:MOVA,#55H

LCALLWRITE;发“写存储器”命令

MOVA,#08H

LCALLWRITE;发低8位地址

MOVA,#00H

LCALLWRITE;发高8位地址

MOVA,#0C0H

;A通道漏极开路数字输出方式

LCALLWRITE;发A通道工作方式低字节

MOVA,#00H

;与报警、输入范围等设置无关

LCALLWRITE;发A通道工作方式高字节

MOVA,#0C0H

;B通道漏极开路数字输出方式

LCALLWRITE;发B通道工作方式低字节

MOVA,#00H

;与报警、输入范围等设置无关

LCALLWRITE;发B通道工作方式高字节

MOVA,#01H

;C通道不用,可随意设置

LCALLWRITE;发C通道工作方式低字节

MOVA,#00H

;C通道不用,可随意设置

LCALLWRITE;发C通道工作方式高字节

MOVA,#0CH

;D通道12位A/D转换方式

LCALLWRITE;发D通道工作方式低字节

MOVA,#0DH

;5.1V输入范围,允许高低限报警

LCALLWRITE;发D通道工作方式高字节

;设置D通道高/低限值报警值,写入存储器地址从0016H开始

BJSZ:LCALLINIT;发复位脉冲并接收存在脉冲

MOVA,#0CCH

LCALLWRITE;发“跳过ROM”命令

MOVA,#55H

LCALLWRITE;发“写存储器”命令

MOVA,#16H

LCALLWRITE;发低8位地址

MOVA,#00H

LCALLWRITE;发高8位地址

MOVA,#64H

;低门限报警值2.0V(64H)

LCALLWRITE;送D通道低门限存储器

MOVA,#96H

;高门限报警值3.0V(96H)

LCALLWRITE

;送转换控制字,启动A/D转换。

QDZH:LCALLINIT;发复位脉冲并接收存在脉冲

MOVA,#0CCH

LCALLWRITE;发“跳过ROM”命令

MOVA,#3CH

LCALLWRITE;发“转换控制”命令字

MOVA,#08H

;仅D通道参与转换

LCALLWRITE;发通道选择控制字

MOVA,#40H

;D通道转换前预置为全0

LCALLWRITE;发预置数据控制字

;读取D通道转换结果,放在31H、30H

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查