找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1274|回复: 1
打印 上一主题 下一主题
收起左侧

有大神能帮忙改一下这个ad转换程序么。汇编改c语言

[复制链接]
跳转到指定楼层
楼主
MAX1132 CS与单片机 P1. 0 脚相连,MAX1132 的片选端由单片机经 P1. 0 脚发出信号选通; 控制字节由单片机 P1. 1 脚输出到ADC DIN ;转换结果则由 P1. 2 脚从ADC DOUT端读入单片机, 读取转换数据的时钟 SCL K可由 P1. 4 脚依次发出高低电平来构成; P1. 3 脚接至表示 MAX1132 工作状态的串行选通输出 SSTRB , 单片机则通过 P1. 3 脚查询ADC 的工作状态; P0P1P2 三个输出连接到多路转换开关以控制转换通道的切换 , 而进行逐次逼近转换的时钟则由 MAX1132 内部时钟发生器产生。


汇编程序:ORG 0000H
LJMP START
ORG 0030H
START:MOV R4,#0FEH                ;设定位选初值
MOV R5,#00H
MOV R6,#6                         ;设定总显示次数
MOV DPTR, #TAB                  ;数据指针指向表首地址
SS: MOV P2,R4                     ;位选码送p2
MOV A,R5                           ;查段码,送P0显示
MOVC A,@A+DPTR
MOV P0,A
ACALL DELAY                    ;调用延时
MOV  A,R4                           ;位选移位
RL   A
MOV  R4,A
INC  R5
DJNZ R6,SS
AJMP START                     ;返回继续显示
DELAY:   MOV R1,#200               
L1:      MOV R2,#200
L2:      DJNZ R2,L2
         DJNZ R1,L1
RET
TAB:     DB 06FH,66H,06H,03FH,06H,05BH
         END


图片1.png (38.68 KB, 下载次数: 34)

图片1.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:348699 发表于 2018-6-10 13:49 | 只看该作者
START:CLR  P1.0                           ;片选有效
      MOV A,#0A0H                         ;控制字节
      MOV R2,#08
DIN:  CLR  P1.4
      RLC A
      MOV P1.1,C                           ;送控制字                          
      SETB  P1.4
      DINZ,R2,DIN
      CLE P1.4
      SETB P1.0
WAIT:JNB P1.3,WAIT
STORB:MOV R7,#16
CLR  P1.0
LOOP : MOV C,P1.2                           ;读结果               
MOV A, 31H
RLC A
MOV 31H ,A                            ;存高8位
MOV A,30H
RLC A
MOV 30H A                             ;存低8位
SETB P1.4
CLR P1.4
DJNZ R7, LOOP
SETB P1.0
SLMP SA
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表