微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > 硬件电路设计讨论 > 菜鸟求教一个adc0809问题

菜鸟求教一个adc0809问题

时间:12-12 整理:3721RD 点击:
这个程序在proteus中模拟没有问题,但是在电路中就不能用。串口部分没有问题,因为直接给一个数,电脑都能接收到。但是模拟转换好像根本就不起作用,不知何故。输出一直是FF,从来不变。
时序问题研究了几天了,实在不知道是什么原因了。clock用的是单片机四分频。请各位给看看,哪里出了问题。
附后是程序,先谢了。
    EOC EQU P0.6
    START EQU P0.7
    OE EQU P0.5
    ORG 0000H
    LJMP MAIN
    ORG 030H
MAIN:    MOV R2, #07H
MAIN1:    MOV P2, R2
    CLR START
    CLR OE
    SETB EOC
    ACALL DELAY
    SETB START
    ACALL DELAY
    CLR START
    ACALL DELAY
    JNB EOC, $
    SETB OE
    ACALL DELAY
    MOV R4, P1
    CLR OE
    ACALL DELAY
    ACALL SEND
    ACALL DELAY
    DJNZ R2,MAIN1
    AJMP MAIN
    
SEND:    MOV TMOD, #00100000B;计数器工作方式2,8位自动加载计数
    MOV TH1, #0FDH ;设置波特率为19200
    MOV TL1, #0FDH
    MOV PCON, #10000000B;设置smod为1
    SETB TR1
    MOV SCON, #01000000B
    MOV A, R4
     MOV SBUF, A
    JNB TI, $
    CLR TI
    ACALL DELAY    
    RET
DELAY:  MOV R6,#0D0H      ;10MS延时子程序
DL1:    MOV R7,#19H
DL2:    DJNZ R7,DL2
        DJNZ R6,DL1
        RET
    END

按你这么说,理论上是可行咯。那么估计不是软件问题,应该是电路问题。可以用示波器选择测量P1口的波形,看是否总线能够读写,再测量穿口感是否正常通信了。总之就是在这个链路上的节点都测一下,肯定能发现问题所在

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top