打印
[数据转换器-信号链]

DAC8760 一直没有数据输出 还望各路神仙指教

[复制链接]
1793|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
YAOZHIQ|  楼主 | 2017-12-5 15:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是我的程序,调了很久了  硬件的软件的都试过了 都没输出,各位大哥帮我看看哪里出问题了

void DAC_Write(uint8_t add,uint16_t dat)
{
  uint8_t i,h_dat,l_dat;
        h_dat=(dat>>8)&0x00ff;//数据高八位
        l_dat=dat&0x00ff;//数据低八位
  ATLCH_0;//片选拉低
        for(i=8;i>0;i--)//写寄存器地址
        {
                SCLK_0;
                if(add&0x80)
                {
                DIN_1;
                }
        else{
                DIN_0;
        }       
                SCLK_1;
   add<<=1;
        }
  
        for(i=8;i>0;i--)//写高八位数据
        {
        SCLK_0;
                if(h_dat&0x80)
                {
                        DIN_1;
                }
        else {
        DIN_0;
        }
         
        SCLK_1;
        h_dat<<=1;
        }
        for(i=8;i>0;i--) //写低八位数据
{
   SCLK_0;
        if(l_dat&0x80)
        {
           DIN_1;
        }
        else{
        DIN_0;
        }       
        SCLK_1;
        l_dat<<=1;
}       
ATLCH_1;
DIN_1;       
}
void DAC_Init(void)//初始化
{
DAC_Write(0x56,0x0001);//¸复位
DAC_Write(0X55,(1<<12)|0X0000);//使能输出 ,范围0-5v
DAC_Write(0x57,(1<<8) |(2<<9) );//双输出使能,范围0-20,ma
DAC_Write(0x01,0);//输出0
}
void out_put(uint16_t dat)
{
DAC_Write(0x01,dat);

}

下面是在mian函数里面的 调用方式,
void main()
{
DAC_Init();
out_put(0xffff);按理说应该输出最大 可是不管电压电流都没输出
}


相关帖子

沙发
uytyu| | 2017-12-5 22:51 | 只看该作者
写入数据的速度是多大?

使用特权

评论回复
板凳
iyoum| | 2017-12-5 22:51 | 只看该作者
使用的什么控制器?

使用特权

评论回复
地板
wwppd| | 2017-12-5 22:52 | 只看该作者
测量IO的电平了吗

使用特权

评论回复
5
uytyu| | 2017-12-5 22:53 | 只看该作者
内部的DAC可能频率太高。

使用特权

评论回复
6
iyoum| | 2017-12-5 22:53 | 只看该作者
可能驱动能力不足。

使用特权

评论回复
7
wwppd| | 2017-12-5 22:53 | 只看该作者
使用示波器看看信号是否正确?

使用特权

评论回复
8
YAOZHIQ|  楼主 | 2017-12-6 11:27 | 只看该作者
uytyu 发表于 2017-12-5 22:51
写入数据的速度是多大?

这DAC最高能支持30MHZ 速度应该没问题吧

使用特权

评论回复
9
YAOZHIQ|  楼主 | 2017-12-6 11:28 | 只看该作者
iyoum 发表于 2017-12-5 22:51
使用的什么控制器?

STM32F103

使用特权

评论回复
10
YAOZHIQ|  楼主 | 2017-12-6 11:29 | 只看该作者
wwppd 发表于 2017-12-5 22:52
测量IO的电平了吗

仿真的是后 引脚输出电平没问题的

使用特权

评论回复
11
YAOZHIQ|  楼主 | 2017-12-6 11:30 | 只看该作者
wwppd 发表于 2017-12-5 22:53
使用示波器看看信号是否正确?

条件不允许啊

使用特权

评论回复
12
YAOZHIQ|  楼主 | 2017-12-6 11:31 | 只看该作者
iyoum 发表于 2017-12-5 22:53
可能驱动能力不足。

???驱动能力不足?电流小了?供电我用的是开关电源

使用特权

评论回复
13
YAOZHIQ|  楼主 | 2017-12-6 11:33 | 只看该作者
uytyu 发表于 2017-12-5 22:53
内部的DAC可能频率太高。

您的意思是说 DAC8760的频率太高? 它介绍的是支持30mzh

使用特权

评论回复
14
YAOZHIQ|  楼主 | 2017-12-6 11:35 | 只看该作者
uytyu 发表于 2017-12-5 22:51
写入数据的速度是多大?

可能是我IO口速度太高 我去降低试试,我直接用的IO口直接发过去了 好像是50

使用特权

评论回复
15
gujiamao12345| | 2017-12-8 09:15 | 只看该作者
侧波形了没??

使用特权

评论回复
16
smilingangel| | 2017-12-13 22:14 | 只看该作者
这个根据IO口的电平状态设计的很不错的

使用特权

评论回复
17
junpeng324| | 2017-12-14 10:27 | 只看该作者
是代码程序的问题还是硬件的问题,仔细检查下。

使用特权

评论回复
18
airwill| | 2017-12-16 07:28 | 只看该作者
没有输出, 最好先检查一下硬件, 包括供电, 复位, 连接和原理图, 还有焊接等问题

使用特权

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

本版积分规则

1

主题

10

帖子

0

粉丝