找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1117|回复: 0
打印 上一主题 下一主题
收起左侧

6410ADC无驱动直接操作程序

[复制链接]
跳转到指定楼层
楼主
ID:294488 发表于 2018-3-20 14:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#defineGLOBAL_CLK 1
#include<stdlib.h>
#include<string.h>
#include"def.h"
#include"option.h"
#include"2440addr.h"
#include"2440lib.h"
#include"2440slib.h"
#include"mmu.h"
#include"profile.h"
#include"memtest.h"
int Readadc(intch)
{
rADCCON= (1<<14)| (49<<6) | ((ch)<<3);//adc使能,设置频率为1MHZ
rADCTSC=~(0x1<<2);//adc设置为普通转换模式
rADCCON|=0x1;//启动ad
while(rADCCON0x1);//等待ad转换开始
while(!(rADCCON(0x1<<15)));//等待ad转换结束
return(rADCDAT0 0x3ff); //读取A/D转换的数据
}
void Main()
{float v0,v1;
int t0,t1;
Uart_Printf("请调整滑动电阻并输入1选择显示电压值!\r");
while(Uart_GetIntNum()==1)
{v0=((float)Readadc(0)*3.3)/1024.0;//计算电压值
v1=((float)Readadc(1)*3.3)/1024.0;//计算电压值
t0=(v0-(int)v0)*1000;//计算小数部分,Uart_Printf函数无法打印浮点数
t1=(v1-(int)v1)*1000;//计算小数部分,Uart_Printf函数无法打印浮点数
Uart_Printf("电压值为AIN0:%d.%-3dVAIN1:%d.%-3dV\r",(int)v0,t0,(int)v1,t1);
Uart_Printf("\n");}}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表