没有合适的资源?快使用搜索试试~ 我知道了~
基于PIC的Ds18b20温度采集程序
3星 · 超过75%的资源 需积分: 20 11 下载量 59 浏览量
2013-03-07
22:06:15
上传
评论
收藏 27KB DOC 举报
温馨提示
试读
5页
基于PIC的Ds18b20温度采集程序 基于PIC的Ds18b20温度采集程序基于PIC的Ds18b20温度采集程序
资源推荐
资源详情
资源评论
//六位数码管显示温度结果,其中整数部分 2 位,小数部分 4 位
//每次按下 RB0 键后进行一次温度转换。
//硬件要求:把 DS18B20 插在 18B20 插座上
// 拨码开关 S10 第 1 位置 ON,其他位置 OFF
// 拨码开关 S5、S6 全部置 ON,其他拨码开关全部置 OFF
#include<pic.h>
__CONFIG(0x1832);
//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M 晶体 HS 振
荡
#define uch unsigned char //给 unsigned char 起别名 uch
# define DQ RB7 //定义 18B20 数据端口
# define DQ_DIR TRISB7 //定义 18B20D 口方向寄存器
# define DQ_HIGH() DQ_DIR =1 //设置数据口为输入
# define DQ_LOW() DQ = 0; DQ_DIR = 0 //设置数据口为输出
unsigned char TLV=0 ; //采集到的温度高 8 位
unsigned char THV=0; //采集到的温度低 8 位
unsigned char TZ=0; //转换后的温度值整数部分
unsigned char TX=0; //转换后的温度值小数部分
unsigned int wd; //转换后的温度值 BCD 码形式
unsigned char shi; //整数十位
unsigned char ge; //整数个位
unsigned char shifen; //十分位
unsigned char baifen; //百分位
unsigned char qianfen; //千分位
unsigned char wanfen; //万分位
const unsigned char table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f};
//0-9 的显示代码
//------------------------------------------------
//延时函数
void delay(char x,char y)
{
char z;
do{
z=y;
do{;}while(--z);
}while(--x);
}
//其指令时间为:7+(3*(Y-1)+7)*(X-1)如果再加上函数调用的 call 指令、页面设定、
传递参数花掉的 7 个指令。
资源评论
- 「已注销」2014-03-14DS18B20的数据手册最好多看几遍
loque
- 粉丝: 0
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功