linux adc读取应用
1原理图
2设备节点
3控制代码
#include <stdio.h>
//文件操作函数头文件
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
int main(int argv,char *argc[])
{
char *adc_path="/dev/adc";
int fd,len;
char read_buf[512];
int r;
memset(read_buf,0,sizeof(read_buf));
if((fd = open(adc_path,O_RDWR|O_NOCTTY|O_NDELAY))<0)
{
printf("open adc err \n");
exit(1);
}
if((len=read(fd,read_buf,sizeof(read_buf)))<=0)
{
printf("adc read err \n");
exit(1);
}else
{
r= atoi(read_buf);
r= r*10000/4095;
printf("adc value is :%d \n",r);
}
}