编程实战之:NTC采样程序设计
来源:互联网 发布:网络交换器 编辑:程序博客网 时间:2024/05/31 19:18
对于DSP是12位的ADC采样模块,其采样公式为:( ADResult >> 4 )= (VoltInput - ADCLO) / 3.0 * 65520 ; ADResult是结果寄存器中的数字量,VoltInput是模拟电压输入值,ADCLO是ADC转换的参考电平,一般接到地,所以为0值。
根据NTC规格书的NTC热敏电阻R-T表,以及上面的公式。做一个数组,这个数组是从0度到100度时对应的结果寄存器ADResult所采样到的数值,而且是从0度到100度顺序排列的,采样精度为1度。
const int TABLE_TMP[101]={241,251,261,272,284,295,307,320,333,346,360,374,388,403,419,435,451,468,485,503,521,540,560,579,600,621,642,664,686,710,733,757,782,807,833,860,886,914,942,971,1000,1030,1060,1091,1123,1155,1187,1220,1254,1288,1323,1358,1394,1430,1467,1504,1542,1580,1619,1658,1698,1738,1778,1819,1860,1902,1944,1986,2028,2071,2115,2158,2202,2246,2290,2334,2379,2423,2468,2513,2558,2604,2649,2694,2740,2785,2831,2876,2921,2967,3012,3057,3103,3148,3193,3237,3282,3327,3371,3415,3459 };
程序设计如下:
int main(){void TMPSCH() // 温度检测{ int16 TMPCDATA; // 温度数据 int TMPCun=0,TMPCun1,TMPCun2; // 温度计数器 TMPCDATA=Inst_Sample[sm_TEMP]; // 提取采样值到TMPCDATA TMPCun1=0; // 0度 TMPCun2=100; // 100度 if(TMPCDATA<=TABLE_TMP[TMPCun1]) // < 0度 TMPCun=TMPCun1; else if(TMPCDATA>=TABLE_TMP[TMPCun2]) // > 100度 TMPCun=TMPCun2; else // 0度 < x < 100度 { while(TMPCun1<TMPCun2-1) // 对半查找 { TMPCun=(TMPCun1+TMPCun2)/2; if(TMPCDATA<TABLE_TMP[TMPCun]) TMPCun2=TMPCun; else TMPCun1=TMPCun; } } TEMP=TMPCun; // 温度值赋给TEMP} return 0;}
最后说一句,这个程序只能测量到0度到100度的值,如果要测量负温度的话,需要在程序上做些修改。
阅读全文
1 0
- 编程实战之:NTC采样程序设计
- 编程实战之:段码屏的程序设计
- 陶陶书评 之 Scala程序设计:Java虚拟机多核编程实战
- 采样之拒绝采样
- Struts程序设计之HelloWord实战入门篇
- 实战Java高并发程序设计之概念
- 实战Java高并发程序设计之Semaphoer
- 实战Java高并发程序设计之ReadWriteLock
- 实战Java高并发程序设计之CountDownLatch
- 实战Java高并发程序设计之CyclicBarrier
- 实战Java高并发程序设计之LockSupport
- C编程之计算器程序设计
- Scala程序设计:Java虚拟机多核编程实战的评论
- socket编程之实战练习
- MapReduce编程实战之“初识”
- MapReduce编程实战之“初识”
- MapReduce编程实战之“调试”
- 实战编程之货币转换
- JVM 的类初始化机制
- 关于如何写一个数据协议(草稿)
- 排序算法——插入排序
- 【Go】Go语言中反射包的实现原理(The Laws of Reflection)
- python opencv入门 Canny边缘检测(15)
- 编程实战之:NTC采样程序设计
- 根据MAC地址生成软件的序列号
- 帧布局
- 自定义栈和队列
- vue表单验证组件 v-verify-plugin
- 二分图匹配之最佳匹配 km算法详解
- wechat-plus 使用node开发微信公众号
- node 控制 树莓派做的天气闹钟
- JS三元运算符