📄 tlc0832.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 + -