找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 4205|回復: 1
收起左側(cè)

msp430+DS18B20測試程序,顯示溫度到1602液晶上的源代碼

[復制鏈接]
ID:376620 發(fā)表于 2018-7-21 14:45 | 顯示全部樓層 |閱讀模式
一些常用的代碼


單片機源程序如下:
  1. /********************************************************************
  2. //DM430-L溫度傳感器DS18B20測試程序,顯示溫度到1602液晶上
  3. //DS18b20的C語言驅(qū)動程序,讀取當前環(huán)境溫度,顯示精度達0.1度,溫度范圍0-99度
  4. //DS18B20 詳細引腳功能描述1、GND 地信號;2、DQ數(shù)據(jù)輸入出引腳。開漏單總線接口引腳。當被用在寄生電源下
  5. //也可以向器件提供電源;3、VDD可選擇的VDD 引腳。當工作于寄生電源時,此引腳必須接地。
  6. //DS18B20 的使用方法。DS18B20 采用的是1-Wire 總線協(xié)議方式
  7. //即在一根數(shù)據(jù)線實現(xiàn)數(shù)據(jù)的雙向傳輸,數(shù)據(jù)腳接在P17上
  8. //調(diào)試環(huán)境:EW430 V5.301
  9. ********************************************************************/

  10. #include <msp430x14x.h>
  11. #include "Config.h"
  12. #include "1602.c"
  13. #include "DS18B20.c"

  14. //***********************************************************************
  15. //      液晶顯示溫度值,xx.xC格式
  16. //***********************************************************************
  17. void LCD_DisplayTemp(uchar temp1,uchar temp2,uchar temp3)
  18. {   
  19.   LCD_write_char(0x0b,1,0x30+A1);
  20.   LCD_write_char(0x0c,1,0x30+A2);
  21.   LCD_write_char(0x0d,1,'.');
  22.   LCD_write_char(0x0e,1,0X30+A3);
  23.   LCD_write_char(0x0f,1,'C');
  24. }

  25. //***********************************************************************
  26. //      主程序
  27. //***********************************************************************
  28. void main(void)
  29. {
  30.     uchar j;
  31.   
  32.     WDT_Init();                         //看門狗設置
  33.     Clock_Init();                       //系統(tǒng)時鐘設置
  34.     Port_init();                        //系統(tǒng)初始化,設置IO口屬性
  35.     delay_ms(100);                      //延時100ms
  36.     LCD_init();                         //液晶參數(shù)初始化設置
  37.     LCD_clear();                        //清屏
  38.     LCD_Desk();
  39.      
  40.     DS18B20_Reset();                          //復位D18B20
  41.     while(1)
  42.     {
  43.     ds1820_start();                          //啟動一次轉(zhuǎn)換
  44.     ds1820_read_temp();                          //讀取溫度數(shù)值
  45.     data_do(temp_value);                  //處理數(shù)據(jù),得到要顯示的值
  46.     for(j=0;j<30;j++)
  47.     {            
  48.      LCD_DisplayTemp(A1,A2,A3);        
  49.     }
  50.    }
  51.    
  52. }

復制代碼

所有資料51hei提供下載:
DS18B20_1602.rar (41.06 KB, 下載次數(shù): 76)


回復

使用道具 舉報

ID:433160 發(fā)表于 2018-11-29 14:44 | 顯示全部樓層
很不錯
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表