ADC5513
一 C5513
u32 ADC5513_GetValue(void)
{
u32 ADValue,i;
bool data_bit = false;
C5513_SCK=0;
C5513_CS=0;
if(GPIO_BitRead(C5513_SDO)==0u)
{
for (i = 0; i < 24; i++)
{
C5513_SCK = 1;
data_bit = GPIO_BitRead(C5513_SDO);
C5513_SCK=0;
ADValue <<= 1;
if(data_bit > 0)
{
ADValue|=0x00000001;
}
else
{
ADValue&=~0x00000001;
}
}
ADValue &=~(1<<20) ;/*有效位数为19位*/
Vout=ADValue*2.0*10000/2^19 /*有效电压是2.0,不是2.5V因为内部放大了0.8倍*/
return ADValue;
}
else
{
return (0xffffffff);
}
}
- #include <reg52.h>
- #include <intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit ADCS=P2^0;
- sbit ADCLK=P2^1;
- sbit ADDO=P2^2;
- unsigned long int ADConv(void)
- {
- uchar i;
- unsigned long int Result=0;
- ADCLK=0;
- ADCS=0;
- _nop_();
- _nop_();
- _nop_();
- ADCLK=0;
- while(ADDO);
- ADCLK=1;
- _nop_();
- for(i=0;i<3;i++){
- ADCLK=0;
- _nop_();
- ADCLK=1;
- }
- for (i=0;i<20;i++){
- ADCLK=0;
- Result=Result<<1;
- if (ADDO)
- Result=Result+1;
- ADCLK=1;
- }
- ADCS=1;
- Result &=~(1<<20) ;/*有效位数为19位*/
- Vout=Result*2.0*10000/2^19 /*有效电压是2.0,不是2.5V因为内部放大了0.8倍*/
- return Result;
- }
ADC5513的更多相关文章
随机推荐
- L89
His voice was hoarse after several hours' speech.Attributive adjectives precede the noun.I gave the ...
- Xcode 中的main.m
在几乎所有的程序开发中程序一般都是从main函数开始运行的,那么IOS程序也不例外,在上图中我们可以看到Xcode为我们生成了一个main.m文件: // // main.m // iOS // // ...
- CF331B Cats Transport[斜率优化dp+贪心]
luogu翻译 一些山距离起点有距离且不同,m只猫要到不同的山上去玩ti时间,有p个铲屎官人要去把所有猫接走,步行速度为1单位每秒,从1走到N座山不停下,必须在猫玩完后才可以把他带走.可以提前出发.问 ...
- 【Lintcode】120.Word Ladder
题目: Given two words (start and end), and a dictionary, find the length of shortest transformation se ...
- Scala学习——操作符(初)
经常看到却反应不出来的(->) val a = 2 val b = a->4 //表示生成一个tuple println(b._1+" "b._2) //2 4
- Advanced R之词汇表
转载请注明出处:http://www.cnblogs.com/lizichao/p/4800513.html 词汇表 想要玩得转R,重要的一点是有一个好的工作词汇表.以下是我认为的一个好的词汇表.你不 ...
- JS加DOM理解
1. ***变量 2. ***数据类型 一. ***变量:内存中存储*一个*数据的存储空间,再起一个名字 何时使用:程序中反复使用的数据,都要先保存在变量中,再参与运算 如何使用:声明 赋值 ...
- 提取html里面url()导入的图片正则表达式
之前写过一次,后来无意发现还是有问题,比如 <a onclick="openZoosUrl('chatwin','param'); 这个click事件函数里面就有url()部分,造成了 ...
- linux控制USB的绑定/解绑
linux控制USB的绑定/解绑 http://www.jianshu.com/p/57293f9be558 今天工作中遇到一个问题, 要用代码实现USB的enable和disable. 谷歌了一番, ...
- jQuery命名空间和自定义插件的的多种方法
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给jquery添加新的全局函数,相当于给jQuery类本身添加方法.jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级 ...