资源简介
整个系统通过单片机MSP430G2553控制DS18B20读取温度,采用LCD1602显示,温度传感器DS18B20与单片机之间通过串口进行数据传输.MSP430系列单片机具有超低功耗,且外围的整合性高,DS18B20只需一个端口即可实现数信,连接方便。(包含程序,文档,原理图)
代码片段和文件信息
#include “msp430g2553.h“
#define CPU_F ((double)1000000)
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0)) //微秒延时程序
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0)) //毫秒延时程序
#define uchar unsigned char
#define uint unsigned int
//1602控制引脚定义
#define EN P2OUT //设置P2.0--EN
#define RW P2OUT //设置P2.1--rw
#define RS P2OUT //设置P2.2--RS
#define data_port P1OUT //设置P1.0-P1.7为数据指令传输端口
#define com_port P1OUT
//DS18B20控制引脚定义
#define DQ_OUT P2DIR|=BIT3
#define DQ_IN P2DIR&=~BIT3
#define DQ_H P2OUT|=BIT3
#define DQ_L P2OUT&=~BIT3
#define DQ_DATE (P2IN&BIT3)
//DS18B20 ROM命令宏定义
#define ReadRom 0x33
#define MatchRom 0x55
#define SearchRom 0xf0
#define AlertSearch 0xec
#define CopyScratchpad 0x48
#define SkipRom 0xcc
#define ReadPower 0xb4
//DS18B20功能命令宏定义
#define ConvertTemperature 0x44
#define ReadScratchpad 0xbe
#define WriteScratchpad 0x4e
#define RecallE 0xb8
unsigned long int Temperature;
float Temper;
int t;
unsigned char digit[10] = {‘0‘‘1‘‘2‘‘3‘‘4‘‘5‘‘6‘‘7‘ ‘8‘‘9‘};
unsigned char temp_display [9] = {‘+‘‘0‘‘0‘‘0‘‘.‘‘0‘‘0‘‘0‘‘\0‘};
unsigned char LCDBuf3[]={“High Temperature“}; //第二行要显示的内容
unsigned char LCDBuf1[]={“Temperature“}; //第一行要显示的内容
/*写地址*/
void write_com (uchar com)
{
RS &=~ BIT0; //RS 为0
delay_ms(5); //延时5ms
EN &=~ BIT2; //拉低EN
P1OUT &= 0X00; //P1 所有引脚清零
P1OUT |= com; //写数据
EN |= BIT2; //拉高EN
delay_ms(5); //延时5ms
EN &=~ BIT2; //拉低EN
}
void write_data(uchar data)
{
RS|=BIT0; //RS 为0
delay_ms(5); //延时5ms
EN&=~BIT2; //拉低EN
P1OUT&=0X00; //P1 所有引脚清零
P1OUT|=data; //写数据
EN|=BIT2; //拉高EN
delay_ms(5); //延时5ms
EN&=~BIT2; //拉低EN
}
/*1602初始化*/
void init()
{
RW&=~BIT1;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
}
void display_xy(unsigned char xunsigned char y)
{
if(y==0x01)
{
x = x + 0x40 + 0x80; }
else
{
x = x+0x80; //数据指针设置 80H+地址码 (0-27H,40H-67H)
}
write_com(x);
}
void Disp1Char(uchar xuchar yuchar data)
{
display_xy(xy);
write_data(data); ////输出数据
}
/***********************************************
函数名称:DispStr
功 能:让液晶从某个位置起连续显示一个字符串
参 数:x--位置的列坐标
y--位置的行坐标
ptr--指向字符串存放位置的指针
返回值 :无
***********************************************/
void DispStr(uchar xuchar yuchar *ptr)
{
uchar *temp;
uchar in = 0;
temp = ptr;
while(*ptr++ != ‘\0‘) n++; //计算字符串有效字符的个数
for (i=0;i {
Disp1Char(x++ytemp[i]);
}
}
/****************************************************************************
* 名 称:unsigned char DS18B20_Init(void)
* 功 能:对DS18B20进行初始化
* 入口参数:
*
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 162 2016-11-18 17:46 基于单片机的温度控制系统设计与实现\文档\~$单片机的温度控制系统设计与实现.docx
文件 1495312 2019-01-30 18:57 基于单片机的温度控制系统设计与实现\文档\基于单片机的温度控制系统设计与实现.docx
文件 457733 2016-09-25 13:56 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\PCB1.~(1).PcbDoc.Zip
文件 457757 2016-12-02 20:21 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\PCB1.~(3).PcbDoc.Zip
文件 461071 2016-12-07 22:01 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\PCB1.~(4).PcbDoc.Zip
文件 458143 2016-12-08 17:34 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\PCB1.~(5).PcbDoc.Zip
文件 4433 2016-12-02 20:21 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\PCB_Project_1.~(1).PrjPcb.Zip
文件 11008 2016-09-25 13:55 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\Sheet1.~(1).SchDoc.Zip
文件 11025 2016-12-02 20:21 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\History\Sheet1.~(3).SchDoc.Zip
文件 1204 2016-12-02 19:58 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PCB1 PCB ECO 2016-12-2 19-58-05.LOG
文件 535040 2016-12-08 17:34 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PCB1.PcbDoc
文件 10971 2016-12-02 19:49 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PCB1.PcbDoc.htm
文件 3188 2016-12-20 15:02 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PCB1.pcbdoc_viewstate
文件 112640 2016-09-20 16:51 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PcbLib1.PcbLib
文件 29560 2016-12-02 20:21 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PCB_Project_1.PrjPcb
文件 48 2016-12-02 19:57 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\PCB_Project_1.PrjPcbStructure
文件 109 2016-09-25 13:55 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\Project Logs for PCB_Project_1\PCB1 PCB ECO 2016-9-25 13-55-09.LOG
文件 7680 2016-09-20 16:37 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\Schlib1.SchLib
文件 334 2016-12-02 19:57 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\Sheet1 SCH ECO 2016-12-2 19-57-25.LOG
文件 75776 2016-12-02 20:21 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\Sheet1.SchDoc
文件 27017 2016-09-25 13:56 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\__Previews\PCB1.PcbDocPreview
文件 33700 2016-09-25 13:55 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件\温度检测 硬件\__Previews\Sheet1.SchDocPreview
文件 1003886 2016-10-19 01:35 基于单片机的温度控制系统设计与实现\硬件原理图\温度检测 硬件.zip
文件 529 2016-10-19 01:35 基于单片机的温度控制系统设计与实现\程序\wd\.ccsproject
文件 21765 2016-11-08 22:01 基于单片机的温度控制系统设计与实现\程序\wd\.cproject
文件 4053 2016-11-17 15:56 基于单片机的温度控制系统设计与实现\程序\wd\.launches\wd.launch
文件 2567 2016-10-19 01:35 基于单片机的温度控制系统设计与实现\程序\wd\.project
文件 62 2016-10-19 01:35 基于单片机的温度控制系统设计与实现\程序\wd\.settings\org.eclipse.cdt.codan.core.prefs
文件 123 2016-10-19 01:35 基于单片机的温度控制系统设计与实现\程序\wd\.settings\org.eclipse.cdt.debug.core.prefs
文件 231 2016-10-19 01:35 基于单片机的温度控制系统设计与实现\程序\wd\.settings\org.eclipse.core.resources.prefs
............此处省略31个文件信息
- 上一篇:软件学院密码学实验要求
- 下一篇:计算机结构与逻辑设计 PDF
相关资源
- 测量液体的液位(内含原理图、源代
- 基于单片机的交通信号灯的控制系统
- esp8266代码
- 33个毕业设计—单片机类
- 《手把手教你学51单片机》教材pdf
- LCD1602硬件结构及程序设计
- MSP430F5438最小系统开发板原理图和PC
- 单片机实验代码8次.zip
- 硕飞ME830/ME850 单片机开发实验仪最新
- MSP430汇编语言
- 经典51单片机开发板Protel99se文件含原
- 基于单片机的数字时钟
- WiFi-STC-DOWNLOADER.zip
- STC-ISP 6.85
- STC8A加强版开发板配套程序
- 基于单片机的超声波流量计.pdf
- 基于单片机的智能LED台灯设计-附电路
- Silicon 单片机程序烧写软件
- TI无线模块 cc113l及cc115l测试代码及官
- 基于AT89C51单片机的水塔智能水位控制
- stm32矩阵按键程序.rar
- 基于51单片机的全自动洗衣机控制器的
- IAR for MSP430 v7.10.1 免费破解版(附注册
- 温湿度传感器DHT11资料+程序
- \\51单片机35个
- pic16f684单片机中文数据手册
- iar for msp430 v5.40注册机
- 单片机音乐彩灯
- AVR单片机与CPLD_FPGA综合应用入门
- TOSHIBA单片机调试工具及编译软件
评论
共有 条评论