📄 7_4.c
字号:
//TLC0831 8位A/D转换器的C语言驱动程序例:
#include "reg51.h"
#include "intrins.h"
sbit T0831_CLK=P1^0; //时钟I/O端口
sbit T0831_CS=P2^0; //片选I/O端口
sbit T0831_DO=P3^6; //数据I/O端口
unsigned char getdata (void); //T0831A/D转换函数
void delay (unsigned char x); //延时函数
unsigned char getdata (void) //T0831A/D转换函数
{
unsigned char i,s; //s存放转换结果
T0831_CS=1;
delay(10);
T0831_CLK=1;
T0831_CS=0; //使?C?S为低时开始启动TLC0831进行A/D转换
T0831_CLK=0;
_nop_();
for (i=0;i<8;i++)
{
T0831_CLK=1; //发时钟脉冲
T0831_CLK=0;
If (T0831_DO) s++; //将DO端输出加入s中
s<<=1; //左移,为了加入下一位数
}
T0831_CS=1; //结束转换
T0831_CLK=1;
delay (20); //延时
return (s); //转换出的数据返回主程序
}
void delay (unsigned char x) //延时函数
{
unsigned char i;
for (i=0;i<=x;i++)
;
}
main()
{
unsigned char data;
data=getdata();
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -