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的更多相关文章
随机推荐
- linux svn yum 安装、开机自启动
1.查询是否安装 rpm -qa subversion
- dmidecode 命令
dmidecode # 查看全面硬件信息dmidecode | grep "Product ...
- P1955 [NOI2015]程序自动分析[离散化+并查集]
大水题一道,不明白为什么你谷评了个蓝.一看就是离散化,先去满足相等的条件,相等即为两点联通,或者说在同一个集合内.再看不相等,只有两元素在同一集合才不满足.裸的disjoint-set直接上,常数巨大 ...
- 《c# 实现p2p文件分享与传输系统》 二、 设计 - 续(NAT穿透)
c#实现P2P文件分享与传输系统 二.设计 - 续(NAT穿透) 首先要抱歉,因为这些日子较忙,没有写文章,这个系列拖了很久,现在开始继续. 上一篇文章介绍了p2p系统Tracker Server和 ...
- 物化视图基础概念、mview跨库迁移表
概念:物化视图是一种特殊的物理表,“物化”(Materialized)视图是相对普通视图而言的.普通视图是虚拟表,应用的局限性大,任何对视图的查询,Oracle都实际上转换为视图SQL语句的查询.这样 ...
- BZOJ3524:[POI2014]Couriers
浅谈主席树:https://www.cnblogs.com/AKMer/p/9956734.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem.p ...
- POJ2186(有向图缩点)
Popular Cows Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 28379 Accepted: 11488 De ...
- mysql的itcast笔记
1 课程回顾 自定义标签&编码实战 1)自定义标签步骤: 1.1 编写标签处理器类,继承SimpleTagSupport类,覆盖doTag方法 1.2 在WEB-INF目录下建立tld文件,在 ...
- java.lang.NoClassDefFoundError: org/springframework/dao/support/DaoSupport
转自:https://blog.csdn.net/lzx159951/article/details/79753493 1. 缺少:org.springframework.transaction-3. ...
- Linux命令总结_文件的输入与 输出
1.echo命令 例子:echo string 解释:echo命令用于显示文本或变量,或者把字符串输入到文件,常用的几个特殊字符有以下几个 \c 不换行 \f 进纸 \t 调格 \n 换行 例子:ec ...