⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tlc0832.c

📁 通过adc0809采集电压
💻 C
字号:
#include <reg52.H>
#include "Typedef.H"
#include "UserDef.H"
#include "TLC0832.H"

/*  端口定义 */
sbit adccs = P3^6 ;
sbit adcclk = P1^5 ;
sbit adcdi = P1^6 ;
sbit adcdo = P1^7 ;

/***************************************
		 延时函数
****************************************/
static void delay1(INT8U x)   
 	{   
    INT8U i; 
    for(i=0;i<x;i++); 
 	}

/***************************************
	 时钟信号函数
****************************************/
static void adcck(void)	
 	{ 
    adcclk=1; delay1(2); 
    adcclk=0; delay1(2); 
 	}

/***************************************
	AD转换函数
****************************************/
INT8U TLC0832(void)
	{
	INT8U i;
    INT8U ch = 0;

	adccs=0;           /* 片选信号为0                       */
	adcck(); adcdi=1;  /* 启动A/D信号                       */
	adcck(); adcdi=1;  /* SGL=1                             */
	adcck(); adcdi=0;  /* ODD=0,单极性,选中通道0           */
	adcck();           /* 延时一个时钟期,产生一个时钟信号  */
	for (;adcdo==1;) adcck();
	for (i=0; i<8; i++) 
		{
		adcck();  /*产生时钟信号*/
        ch=(ch<<1)|adcdo;  /*接收TLC0832输出的转换结果*/
        }
	adccs=1;           /*片选信号置1*/
	return(ch);
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -