sam9260 adc 测试
- /*
- * adc_test.c
- *
- * Copyright (C) 2007 Mengrz
- */
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
- #include <sys/unistd.h>
- #include <sys/stat.h>
- #include <linux/fcntl.h>
- #include <linux/ioctl.h>
- #include "adc.h"
- int main(int argc, char *argv[])
- {
- if (argc < 2) {
- printf("Useage: %s dev\n", argv[0]);
- exit(0);
- }
- struct adc_mode mode = {
- .trigger = ADC_TRIGGER_SOFT,
- .trigger_time = 1000,
- .resolution = 0,
- .sleep_mode = 1,
- .startup_time = 5,
- .sample_time = 8,
- .adc_clock = 8,
- };
- int fd = open(argv[1], O_RDWR);
- if (fd == -1){
- perror("open:");
- exit(-1);
- }
- int data;
- int ret;
- float tdata=0,a=3.3;
- if (ioctl(fd, ADCCTL_SETMODE, &mode))
- perror("ioctl:ADCCTL_SETMODE");
- memset(&mode, 0, sizeof(struct adc_mode));
- ioctl(fd, ADCCTL_GETMODE, &mode);
- printf("adc_mode: f => v\n"
- "trigger => %d\n"
- "trigger_time => %d\n"
- "resolution => %d\n"
- "startup_time => %d\n"
- "sample_time => %d\n"
- "adc_clock => %d\n",
- mode.trigger, mode.trigger_time,
- mode.resolution, mode.startup_time,
- mode.sample_time, mode.adc_clock);
- while(1)
- {
- usleep(3000000);
- ioctl(fd, ADCCTL_START);
- ioctl(fd, ADCCTL_GETSTATUS, &ret);
- printf("status: 0x%08x\n", ret);
- ret = 0;
- //while (1)
- // //ioctl(fd, ADCCTL_GETCNT, &ret);
- //printf("count: %d\n", ret);
- // while (1) {
- ioctl(fd, ADCCTL_GETDATA, &data);
- printf("AD_VAL: %d\n", data);
- tdata=(float)data;
- tdata=tdata/1024*a;
- printf("the voltage is %fV\n",tdata);
- // ret--;
- // usleep(200000);
- // }
- }
- close(fd);
- return 0;
- }
sam9260 adc 测试的更多相关文章
- ADC测试matlab代码
前面有做过ADC性能测试,测试方式是先使用ADC采集一个单频信号,然后利用matlab进行性能分析. 下面把matlab分析的代码记录下来: %The following program code p ...
- sam9260 adc 头文件
/* * driver/char/at91_adc.h * * Copyright (C) 2007 Embedall Technology Co., Ltd. * * Analog-to-digit ...
- sam9260 adc module
/* * driver/char/at91_adc.c * * Copyright (C) 2007 Embedall Technology Co., Ltd. * * Analog-to-digit ...
- sama5d3 环境检测 adc测试
#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h># ...
- 【嵌入式】FS2410非操作系统外围资源测试
在刚接触FS2410时,其实这个测试也没有多大意义,但是对于以后来说,当一个产品做成功时,产品测试还是一个必须经过的一个阶段,所以这个流程还是有必要走一下! 在非操作系统下,主要进行RTC测试,按键测 ...
- STM32F412应用开发笔记之七:片上ADC的应用测试
在我们的应用项目中需要采集一些模拟量,这些量使用MCU自带的ADC就可以满足要求.在NUCLEO-F412ZG实验板上的STM32F412ZG有一个16通道的ADC,我们试验用它采集几个数据. 在NU ...
- STM32CubeMX 多通道 ADC DMA 配置 测试小程序
要点: 1.STM32F103C8T6单片机 2.ADC+DMA 多通道 重点是ADC+DMA配置,ADC+DMA配置如下 其他配置略略略略. 然后各位自行直看.ioc文件,生成代码后在while之前 ...
- 嵌入式Linux驱动学习之路(十九)触摸屏驱动、tslib测试
触摸屏使用流程: 1. 按下产生中断. 2.在中断处理程序中启动AD转换XY坐标. 3.AD转换结束并产生AD中断. 4. 在AD的中断处理函数中上报信息,启动定时器. 5. 定时器时间到后进入中断, ...
- STM32 ADC 测电压
1. STM32F103 ADC 本例使用STM32F103芯片的PA1引脚测试模拟输入的电压值. 查看文档<STM32F103X.pdf>第31页,引脚定义图: 得知PA1使用ADC1的 ...
随机推荐
- process credentials(一)
一.介绍 当linux系统中的一个进程运行起来的时候,总是要访问系统的资源,访问文件或者向其他的进程发送信号.系统是否允许其进行这些操作?系统是根据什么来判断该进程的权限?这些问题是和进程信任状(pr ...
- Bootstrap VS Semantic VS Foundation
相信多数科技公司都没有自己动手设计UI的能力! 看到这个开头,预计非常多程序员非常不服气,我们那个美工可NB了,各种切图,各种特效! 假设你跟我讲这些,就说明你还没有明确UI详细指什么.通常我们所讲的 ...
- C++项目參考解答:求Fibonacci数列
[项目:求Fibonacci数列] Fibonacci数列在计算科学.经济学等领域中广泛使用,其特点是:第一.二个数是1,从第3个数開始,每一个数是其前两个数之和.据此,这个数列为:1 1 2 3 5 ...
- 删除wordpress评论表单中的网址文本框
原始效果如下 想要去掉这个链接表单,一般想到的方法就是找到 comments.php 文件中的对应表单代码删掉.但是现在只需要一段非常简单的代码就可以去除: 代码如下 复制代码 add_filter( ...
- Python 文件 next() 方法
描述 Python 3 中的 文件 对象不支持 next() 方法. Python 3 的内置函数 next() 通过迭代器调用 __next__() 方法返回下一项. 在循环中,next()方法会在 ...
- SQL中特殊符号的使用
1. & 在Oracle中,& 是从需要外部输入输入的变量,PS:MySqL中可以直接用"P&G"这样的字符串,故不存在本文所说的问题 如下SQL语句就不能 ...
- MySQL数据库知识点整理 (持续更新中)
一.修改用户密码 格式(在命令行下输入):mysqladmin -u 用户名 -p旧密码 password 新密码 1. 给root添加密码ab12: mysqladmin -uroot -pass ...
- get the code of function in matlab
>> edit <function>>> edit perform
- Mac 下安装Ruby环境
步骤1 - 安装 RVM RVM 是干什么的这里就不解释了,后面你将会慢慢搞明确. $ curl -L https://get.rvm.io | bash -s stable 期间可能会问你sudo管 ...
- Java常考面试题(二)
序言 昨天刚开始的”每日5题面试“这类文章,感觉还不错,把一些平常看似懂了的东西,弄清楚了.就像什么是虚拟机?这个问题,看起来知道,但是要说出个所以然来,又懵逼了,经常回过头来看看做过的面试题,试着用 ...