• 大小: 32KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-09
  • 语言: 其他
  • 标签: AD7705  

资源简介

双通道AD7705读取桥式电路信号,通过STC单片机处理后发到MODBUS485RTU接口备读取。 但是AD7705切换速度较慢。且市场上假货太多。

资源截图

代码片段和文件信息

/*------------------------------------------------------------------*/
/* --- STC MCU International Limited -------------------------------*/
/* --- STC 1T Series MCU SPI Demo(Each other as the master-slave) --*/
/* --- Mobile: (86)13922805190 -------------------------------------*/
/* --- Fax: 86-755-82944243 ----------------------------------------*/
/* --- Tel: 86-755-82948412 ----------------------------------------*/
/* --- Web: www.STCMCU.com -----------------------------------------*/
/* If you want to use the program or the program referenced in the  */
/* article please specify in which data and procedures from STC    */
/*------------------------------------------------------------------*/

//#include “reg51.h“
#include 
#include 
#include 

//---------------------------------------------------
//全局变量
extern BYTE SPI_DT;//保存收到的数据
extern BYTE SPI_RD;//设置SPI端口收到数据标志 
extern BYTE AD7705nRDYhgh8low8;
extern BYTE i8DTOK;

extern WORD i16S1OVERRdOverTime;
extern WORD isoidxisomax;
extern BYTE ComBusytketks;

extern union AD7705_DATA_FOR_UP_SEND_TO_OPS xdata ud;

sbit INF_LED  = P1^0;//LED 闪烁
sbit ERR_LED  = P1^1;//LED 闪烁
sbit ADDRDY   = P2^0;//DRDY
sbit SPIDI    = P1^6;//DI
sbit SPIDO    = P1^5;//DO
sbit SPICLK   = P1^7;//CLK

void LedFlash();

void SPI_Wd_Init();
//void SPI_Rd_Init();
//void SPI_Close();
BYTE SPI_Read();
void SPI_Write(BYTE dat);
void AD7705_Work_init();
void AD7705_SPI_Read();
//void WD_SPI_Byte(BYTE dat);
//WORD RD_SPI_Word();
//BYTE RD_SPI_Byte();
BYTE rearrange(unsigned char dat);



///////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////
void SPI_Wd_Init()
{
EA     = 0;
SPDAT  = 0;                  //初始化SPI数据
SPSTAT = 0;                 //清除SPI状态
SPCTL  = SPEN | SSIG | MSTR; //从模式 | 主模式 SSIG| SPD016
IE2 = IE2ESPI;        //开中断
EA =1;
}

void SPI_Rd_Init()
{
SPDAT  = 0;           //初始化SPI数据
SPSTAT = 0;           //清除SPI状态
// SPCTL = SPEN | SSIG;  //从模式 | 主模式 SSIG
}


BYTE SPI_Read()
{
// SPDAT  = 0;           //初始化SPI数据
// SPSTAT = 0;           //清除SPI状态
i16 = 0;
    while(1){
i16 ++;
if(!SPI_RD){
if (i16 > 200){
return(0);
}
continue;
}
else if(SPI_DT & DRDY){
return(1);
}
}
}
/*
void SPI_Close()
{
SPDAT  = 0; //初始化SPI数据
SPSTAT = 0; //清除SPI状态
SPCTL  = 0; //从模式 | 主模式 SSIG
}
*/
void Spi_DIn() interrupt 9 using 3
{
SPSTAT = SPIF | WCOL;     //清除SPI状态
SPI_DT=SPDAT;             //保存收到的数据
SPI_RD=1;                 //设置SPI端口收到数据标志 
SPDAT  = 0;           //初始化SPI数据
}

//------------------------------------------------------------------------------------------
//函数:write_AD7705_dword
//功能:往AD7705写24位数据因为AD7705是24位的器件
//参数:IN - int32_t   data要写入AD7705的数据
//返回:无
//变量:无
//备注:无
//------------------------------------------------------------------------------------------

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      24097  2013-09-01 20:50  复件 AD7705READ-DP20130829\AD7705READ.C

     文件       5773  2012-02-26 00:09  复件 AD7705READ-DP20130829\AD7705SPIIO.c

     文件       4299  2013-09-01 18:26  复件 AD7705READ-DP20130829\DATA.H

     文件        857  2002-10-11 14:53  复件 AD7705READ-DP20130829\INTRINS.H

     文件          0  2013-08-29 11:06  复件 AD7705READ-DP20130829\KeyInputSubr.c

     文件       8282  2012-04-24 22:54  复件 AD7705READ-DP20130829\Modbus485.c

     文件          0  2012-04-22 16:36  复件 AD7705READ-DP20130829\SEG_C.c

     文件          2  2012-04-22 18:46  复件 AD7705READ-DP20130829\SEG_C.H

     文件       9987  2013-08-25 15:00  复件 AD7705READ-DP20130829\Spi2Uart.c

    .......     13434  2013-09-11 07:38  复件 AD7705READ-DP20130829\SPI2UART.uvproj

     文件       5057  2012-02-25 23:07  复件 AD7705READ-DP20130829\Spi2Uart2.c

     文件       5105  2012-05-18 10:06  复件 AD7705READ-DP20130829\STC_EEROMRW.c

     文件      17733  2013-09-01 09:30  复件 AD7705READ-DP20130829\STC_NEW_8051.H

     文件       9607  2013-08-14 13:03  复件 AD7705READ-DP20130829\UartModbus.c

     目录          0  2013-09-11 07:38  复件 AD7705READ-DP20130829

----------- ---------  ---------- -----  ----

               104233                    15


评论

共有 条评论