主页 > 程序语言 > ds18b20如何修改精度,求修改精度的程序

ds18b20如何修改精度,求修改精度的程序

2022-12-05 06:21来源:m.sf1369.com作者:宇宇

一、ds18b20如何修改精度,求修改精度的程序

精确到+000.00

显示五位

void LcdDisplay(int temp) //lcd显示

{

unsigned char datas[] = {0, 0, 0, 0, 0}; //定义数组

float tp;

if(temp< 0) //当温度值为负数

{

LcdWriteCom(0x80); //写地址 80表示初始地址

LcdWriteData('-'); //显示负

//因为读取的温度是实际温度的补码,所以减1,再取反求出原码

temp=temp-1;

temp=~temp;

tp=temp;

temp=tp*0.0625*100+0.5;

//留两个小数点就*100,+0.5是四舍五入,因为C语言浮点数转换为整型的时候把小数点

//后面的数自动去掉,不管是否大于0.5,而+0.5之后大于0.5的就是进1了,小于0.5的就

//算由?.5,还是在小数点后面。

}

else

{

LcdWriteCom(0x80); //写地址 80表示初始地址

LcdWriteData('+'); //显示正

tp=temp;//因为数据处理有小数点所以将温度赋给一个浮点型变量

//如果温度是正的那么,那么正数的原码就是补码它本身

temp=tp*0.0625*100+0.5;

//留两个小数点就*100,+0.5是四舍五入,因为C语言浮点数转换为整型的时候把小数点

//后面的数自动去掉,不管是否大于0.5,而+0.5之后大于0.5的就是进1了,小于0.5的就

//算加上0.5,还是在小数点后面。

}

datas[0] = temp / 10000;

datas[1] = temp % 10000 / 1000;

datas[2] = temp % 1000 / 100;

datas[3] = temp % 100 / 10;

//datas[4] = temp % 10;

LcdWriteCom(0x82); //写地址 80表示初始地址

LcdWriteData('0'+datas[0]); //百位

LcdWriteCom(0x83); //写地址 80表示初始地址

LcdWriteData('0'+datas[1]); //十位

LcdWriteCom(0x84); //写地址 80表示初始地址

LcdWriteData('0'+datas[2]); //个位

LcdWriteCom(0x85); //写地址 80表示初始地址

LcdWriteData('.'); //显示 ‘.’

LcdWriteCom(0x86); //写地址 80表示初始地址

LcdWriteData('0'+datas[3]); //显示小数点

//LcdWriteCom(0x87); //写地址 80表示初始地址

// LcdWriteData('0'+datas[4]); //显示小数点

}

二、thinkPHP里面有分割字符串的函数吗

thinkphp没有分割字符串,有截取字符串.

php自带函数可以分割字符串如下:

explode(separator,string,limit)

    separator 必需。规定在哪里分割字符串。

   string   必需。要分割的字符串。    

    limit    可选。规定所返回的数组元素的最大数目。    

$text=1,2,3;

$lines = explode(,, $text);//这里使用逗号分隔

$string = Hello world. Beautiful day today.;

$str= explode( , $string );//使用空格分隔strtok(string,split)

string   必需。规定要分割的字符串.

split 必需。规定一个或多个分割字符。   

$string = Hello world. Beautiful day today.;

$token = strtok($string,  );//用空格分隔str_split(string,length)

string   必需。规定要分割的字符串。 

length  可选。规定每个数组元素的长度。默认是 1。

print_r(str_split(Hello));

thinkphp自带截取字符串如下:

对于英文字符可使用如下形式:

{$vo.title|substr=0,5}如果是中文字符thinkphp提供了msubstr,用法如下:

function msubstr($str, $start=0, $length, $charset=”utf-8″, $suffix=true)//使用如下

{$vo.title|msubstr=5,5,'utf-8′,true}msubstr函数说明如下:

msubstr($str, $start=0, $length, $charset=”utf-8″, $suffix=true)

$str:要截取的字符串

$start=0:开始位置,默认从0开始

$length:截取长度

$charset=”utf-8″:字符编码,默认UTF-8

$suffix=true:是否在截取后的字符后面显示省略号,默认true显示,false为不显示

三、C语言 逆波兰表达式 算法

1. #include <stdio.h>

2. #include<math.h>

3. double exp(){

4. char a[10];

5. scanf(%s, a);

6. switch(a[0]){

7. case'+': return exp( ) + ex

8. case'-': return exp( ) - exp

9. case'*': return exp( ) * ex

10. case'/': return exp( ) / exp(

11. default: return atof(a);

12. }

13. }

14. void main()

15. {

16. double ans;

17. ans = exp();

18. printf(%f, ans);

19. }

相关推荐

哪些编程语言是函数式的

程序语言 2024-01-14

VB编程的函数详解

程序语言 2024-01-02

c语言扑克牌问题

程序语言 2023-12-28

iphone语言与地区有什么用?

程序语言 2023-12-19

C语言程序,怎么使用,

程序语言 2023-12-17

把word嵌入到C#程序中

程序语言 2023-11-26

HTML是不是编程语言?

程序语言 2023-11-17