主题 : mini2440如何使用AD 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 65878
精华: 0
发帖: 6
金钱: 35 两
威望: 7 点
综合积分: 12 分
注册时间: 2012-03-23
最后登录: 2012-07-11
楼主  发表于: 2012-06-28 14:50

 mini2440如何使用AD

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/ioctl.h>
#include <fcntl.h>
#include <linux/fs.h>
#include <errno.h>
#include <string.h>

int main(void)
{
    fprintf(stderr, "press Ctrl-C to stop\n");
    int fd = open("/dev/adc", 0);//把0改成1不能用
    if (fd < 0) {
        perror("open ADC device:");
        return 1;
    }
    for(;;) {
        char buffer[30];
        int len = read(fd, buffer, sizeof buffer -1);
        if (len > 0) {
            buffer[len] = '\0';
            int value = -1;
            sscanf(buffer, "%d", &value);
            printf("ADC Value: %d\n", value);
        } else {
            perror("read ADC device:");
            return 1;
        }
        usleep(500* 1000);
    }
    
    close(fd);
}
按照友善的光盘,我改成通道1,然后接AIN1,但是不能用。
我是想用AD测我传感器的值,但是目前只会用例程里测电位器的AD,求指教下
级别: 新手上路
UID: 65878
精华: 0
发帖: 6
金钱: 35 两
威望: 7 点
综合积分: 12 分
注册时间: 2012-03-23
最后登录: 2012-07-11
1楼  发表于: 2012-06-28 14:51
是因为自带的驱动没有通道1的么,我用的是买来就烧在里面的内核和根文件
级别: 侠客
UID: 4912
精华: 0
发帖: 62
金钱: 315 两
威望: 63 点
综合积分: 124 分
注册时间: 2009-04-03
最后登录: 2018-06-26
2楼  发表于: 2012-06-29 09:47
我也想知道