AD/DA庫

#include <reg52.h>
#include "../iic/iic.h"

unsigned char AD_read()
{
    unsigned char temp;

    iic_start();
	
	iic_send_byte(0x90);
	if(0 == ack)
	{
	    return ERR;
	}
	
	iic_send_byte(0x40);    //設置通道和工作方式
	if(0 == ack)
	{
	    return ERR;
	}
	
	iic_start();
	iic_send_byte(0x90 + 1);
	if(0 == ack)
	{
	    return ERR;
	}
	
	temp = iic_receive_byte();
	iic_noack();
	iic_stop();
	
	return temp;
}

unsigned char DA_write(unsigned char num)
{
    iic_start();
	
	iic_send_byte(0x90);
	if(0 == ack)
	{
	    return ERR;
	}
	
	iic_send_byte(0x40);
	if(0 == ack)
	{
	    return ERR;
	}
	
	iic_send_byte(num);
	if(0 == ack)
	{
	    return ERR;
	}
	
	iic_stop();
	
	return SUCC;
}


#ifndef _ADDA_H_
#define _ADDA_H_

#define ERR 0
#define SUCC 1

extern unsigned char AD_read();
extern unsigned char DA_write(unsigned char num);

#endif

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章