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的 ...
随机推荐
- root用户Linux 环境变量的配置解决(-bash: jps: command not found)有关问题
可以写成:$JAVA_HOME/bin 3. source /root/.bash_profile 发现 jps 等命令运行正常了
- SharePoint 中时间轴 Timeline的实现
客户需要在OA中实现每日动态功能,能够记录每一位员工的每天的工作动态,我很快想到了时间轴,因为时间轴能很直观的现实员工每一刻的动态.就像Facebook的Timeline效果(点击查看). 尝试着搜索 ...
- python字符串格式化之学习笔记
在python中格式化输出字符串使用的是%运算符,通用的形式为 •格式标记字符串 % 要输出的值组其中,左边部分的”格式标记字符串“可以完全和c中的一致.右边的'值组'如果有两个及以上的值则需要用小括 ...
- 如何在ppt或word中添加高亮代码?
如何在ppt或word中添加高亮代码? 问题: 如何ppt中添加带有语法高亮的程序代码,就如同下面的形式(在ppt嵌入高亮代码,且可以编辑,带有行号) 详细的要求如下: 1.代码带有语法高亮. 2.结 ...
- java-Spring 管理bean例子
Spring 通过2种方式管理bean 首先要导入Spring的包,(Spring.jar和commonslogging.jar) 或加载分开的... 在src目录下建立applicationCont ...
- go 从入门到精通(二)基本数据类型和操作符
一.文件名&关键字&标识符 所有go源码都是以.go结尾 标识符以字母或下划线开头,大小写敏感 下划线_是特殊标识符,用户忽略结果 保留关键字 导入包时可以设置别名 下面是保留关键字: ...
- pyenv管理多python版本
手动安装 cd ~ git clone git://github.com/yyuu/pyenv.git .pyenv echo 'export PYENV_ROOT="$HOME/.pyen ...
- HTML5新特性之文件和二进制数据的操作
历史上,JavaScript无法处理二进制数据.如果一定要处理的话,只能使用charCodeAt()方法,一个个字节地从文字编码转成二进制数据,还有一种办法是将二进制数据转成Base64编码,再进行处 ...
- 菜鸟学Java(十八)——异常
每个学编程的人在编程的过程中都会遇到各种异常.那么当我们遇到异常的时候该怎么处理呢?针对不同的异常我们又该采取什么具体的处理方式呢?这些问题在我开始学编程的很长一段时间里我都不太清楚,还好随着不断的学 ...
- 技术范儿的 Keep 发力AI赛道,为什么“虚拟教练”会更懂你?
http://www.tmtpost.com/3363367.html 摘要: 虚拟教练技术会整合到一些业务场景和硬件产品中收费,但是收费的具体情况彭跃辉还暂未透露. 图片来源于Unsplash 自去 ...