打印

求助 8051的一个题目 谢谢

[复制链接]
2898|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liuyang520|  楼主 | 2007-1-20 19:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
小弟在学习8051单片机,这个题目不会做,请求大家给与指点 谢谢啦
在一个晶振为12MHZ的80C51应用系统中,接有一片DAC0832,它的地址为7FFFH,输出电压为0-5V。请画出逻辑框图,编写一个程序,使其运行后,DAC能输出一个矩形波,波形占空比为1:4。高电平时电压为2、5V,低电平时电压为1、25V。

相关帖子

沙发
maychang| | 2007-1-21 01:26 | 只看该作者

这个题目条件有多余

又没有规定矩形波频率,那么单片机晶体频率是多少没有关系。
逻辑框图与绝对地址也没有关系。
0832与单片机如何连接,题目里没有说,那么从哪个口输出什么码,没办法写。

使用特权

评论回复
板凳
tyw| | 2007-1-21 09:19 | 只看该作者

DAC0832,地址为7FFFH限定了P2.7接CS选通端

当P2.7为"0"时选通0832D/A芯片
其余的线与CPU一一对应即可(D0~D7→P0.0~P0.7,WR1→WR)
0832的Vref接5V
当CPU对0832输出在00H~FFH范围时,D/A的电压输出量为0V~5V
矩形波高电平要求2.5V,只要送数7FH
矩形波低电平要求1.25V,只要送数3FH
占空比只要控制高,低电压的持续时间,若有频率要求,则需启用定时中断

使用特权

评论回复
地板
stycx| | 2007-1-21 09:20 | 只看该作者

呵呵 楼主也懒了点吧

摆渡就可以找到很多

若系统中只有一路模拟量输出或几路模拟量不需要同步输出的场合,则采用单缓冲器方式,如图6.29所示:图中ILE接+5V,片选信号/CS和传送信号/XFER都连到地址线A15,输入寄存器和DAC寄存器地址都是7FFFH,写选通输入线/WR1、/WR2都和单片机的/WR连接,单片机对 DAC0832执行一次写操作,则把一个数据直接写入DAC寄存器,0832输出的模拟量随之发生变化。 
    单片机执行下面的程序,将在运放输出端得到一个锯齿波电压
    START : MOV  DPTR, #7FFFH
             MOV  A, #00H
    LOOP :  MOVX @DPTR, A
             INC  AAJMP LOOP 

使用特权

评论回复
5
liuyang520|  楼主 | 2007-1-21 19:26 | 只看该作者

谢谢

非常感谢大家的热心帮助,我是一个刚开始搞硬件的,因为工作需要,必须要拼命的学,现在在看8051,遇到这些问题确实不知道该怎么办?

使用特权

评论回复
6
liuyang520|  楼主 | 2007-1-21 21:05 | 只看该作者

这个程序还是有几点不懂!希望给予指点

刚刚查书找到了一段程序,如下:、
START:MOV   DPTR,#7FFFH ;选中DAC0832
STEP: MOV   A,#dataH    ;置输出矩形波上限
      MOVX  @DPTR,A     ;D/A转换
      ACALL DELH        ;调用输出高电平延时程序
      MOV   A,#dataH    ;置输出矩形波上限
      MOVX  @DPTR,A     ;D/A转换
      ACALL DELL        ;调用输出低电平延时程序
      SJMP  STEP        ;重复执行
有以下几点不明白
1:这里的高低电平延时怎么实现?是通过定时器吗?有哪些方法能实现?
2:延时程序是怎么编的?

使用特权

评论回复
7
清夜笛音| | 2007-1-22 11:14 | 只看该作者

^_^

学习中.....

使用特权

评论回复
8
liuyang520|  楼主 | 2007-1-22 19:12 | 只看该作者

大侠们,谢谢帮助了

谢谢大家

使用特权

评论回复
9
liuyang520|  楼主 | 2007-1-22 21:01 | 只看该作者

大侠们,谢谢帮助了

谢谢大家帮助我解决下这个问题,非常感谢啦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

5

帖子

0

粉丝