資源簡介
整個系統(tǒng)通過單片機(jī)MSP430G2553控制DS18B20讀取溫度,采用LCD1602顯示,溫度傳感器DS18B20與單片機(jī)之間通過串口進(jìn)行數(shù)據(jù)傳輸.MSP430系列單片機(jī)具有超低功耗,且外圍的整合性高,DS18B20只需一個端口即可實現(xiàn)數(shù)信,連接方便。(包含程序,文檔,原理圖)

代碼片段和文件信息
#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????????????????//設(shè)置P2.0--EN
#define?RW?P2OUT????????????????//設(shè)置P2.1--rw
#define?RS?P2OUT????????????????//設(shè)置P2.2--RS
#define?data_port?P1OUT?????????//設(shè)置P1.0-P1.7為數(shù)據(jù)指令傳輸端口
#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“};?????//第二行要顯示的內(nèi)容
unsigned?char?LCDBuf1[]={“Temperature“};???//第一行要顯示的內(nèi)容
/*寫地址*/
void?write_com?(uchar?com)
{
??RS?&=~?BIT0;?????//RS?為0
??delay_ms(5);?????//延時5ms
??EN?&=~?BIT2;?????//拉低EN
??P1OUT?&=?0X00;???//P1?所有引腳清零
??P1OUT?|=?com;????//寫數(shù)據(jù)
??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;?????//寫數(shù)據(jù)
??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;?//數(shù)據(jù)指針設(shè)置?80H+地址碼?(0-27H,40H-67H)
}
write_com(x);
}
void?Disp1Char(uchar?xuchar?yuchar?data)
{
display_xy(xy);
write_data(data);?////輸出數(shù)據(jù)
}
/***********************************************
函數(shù)名稱:DispStr
功????能:讓液晶從某個位置起連續(xù)顯示一個字符串
參????數(shù):x--位置的列坐標(biāo)
??????????y--位置的行坐標(biāo)
??????????ptr--指向字符串存放位置的指針
返回值??:無
***********************************************/
void?DispStr(uchar?xuchar?yuchar?*ptr)
{
????uchar?*temp;
????uchar?in?=?0;
????temp?=?ptr;
????while(*ptr++?!=?‘\0‘)???n++;????//計算字符串有效字符的個數(shù)
????for?(i=0;i ????{
????????Disp1Char(x++ytemp[i]);
????}
}
/****************************************************************************
*?名????稱:unsigned?char?DS18B20_Init(void)
*?功????能:對DS18B20進(jìn)行初始化
*?入口參數(shù):
*
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????162??2016-11-18?17:46??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\文檔\~$單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn).docx
?????文件????1495312??2019-01-30?18:57??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\文檔\基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn).docx
?????文件?????457733??2016-09-25?13:56??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\PCB1.~(1).PcbDoc.Zip
?????文件?????457757??2016-12-02?20:21??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\PCB1.~(3).PcbDoc.Zip
?????文件?????461071??2016-12-07?22:01??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\PCB1.~(4).PcbDoc.Zip
?????文件?????458143??2016-12-08?17:34??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\PCB1.~(5).PcbDoc.Zip
?????文件???????4433??2016-12-02?20:21??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\PCB_Project_1.~(1).PrjPcb.Zip
?????文件??????11008??2016-09-25?13:55??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\Sheet1.~(1).SchDoc.Zip
?????文件??????11025??2016-12-02?20:21??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\History\Sheet1.~(3).SchDoc.Zip
?????文件???????1204??2016-12-02?19:58??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PCB1?PCB?ECO?2016-12-2?19-58-05.LOG
?????文件?????535040??2016-12-08?17:34??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PCB1.PcbDoc
?????文件??????10971??2016-12-02?19:49??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PCB1.PcbDoc.htm
?????文件???????3188??2016-12-20?15:02??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PCB1.pcbdoc_viewstate
?????文件?????112640??2016-09-20?16:51??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PcbLib1.PcbLib
?????文件??????29560??2016-12-02?20:21??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PCB_Project_1.PrjPcb
?????文件?????????48??2016-12-02?19:57??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\PCB_Project_1.PrjPcbStructure
?????文件????????109??2016-09-25?13:55??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\Project?Logs?for?PCB_Project_1\PCB1?PCB?ECO?2016-9-25?13-55-09.LOG
?????文件???????7680??2016-09-20?16:37??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\Schlib1.SchLib
?????文件????????334??2016-12-02?19:57??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\Sheet1?SCH?ECO?2016-12-2?19-57-25.LOG
?????文件??????75776??2016-12-02?20:21??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\Sheet1.SchDoc
?????文件??????27017??2016-09-25?13:56??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\__Previews\PCB1.PcbDocPreview
?????文件??????33700??2016-09-25?13:55??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件\溫度檢測???硬件\__Previews\Sheet1.SchDocPreview
?????文件????1003886??2016-10-19?01:35??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\硬件原理圖\溫度檢測???硬件.zip
?????文件????????529??2016-10-19?01:35??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.ccsproject
?????文件??????21765??2016-11-08?22:01??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.cproject
?????文件???????4053??2016-11-17?15:56??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.launches\wd.launch
?????文件???????2567??2016-10-19?01:35??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.project
?????文件?????????62??2016-10-19?01:35??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.settings\org.eclipse.cdt.codan.core.prefs
?????文件????????123??2016-10-19?01:35??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.settings\org.eclipse.cdt.debug.core.prefs
?????文件????????231??2016-10-19?01:35??基于單片機(jī)的溫度控制系統(tǒng)設(shè)計與實現(xiàn)\程序\wd\.settings\org.eclipse.core.resources.prefs
............此處省略31個文件信息
評論
共有 條評論