久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7507|回復: 11
打印 上一主題 下一主題
收起左側(cè)

基于stm32+DS18B20+lcd12864的溫度檢測設計源碼

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:254420 發(fā)表于 2018-6-9 22:17 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

主程序:
  1. #include "stm32f10x.h"
  2. #include "delay.h"
  3. #include <stdio.h>
  4. #include "lcd12864.h"
  5. #include "ds18b20.h"  
  6. char bbb[32],ddd[32];  
  7. short aaa,ccc;         //0x20000014
  8. double c,d;
  9. #ifdef __GNUC__
  10. #define PUTCHAR_PROTOTYPE int__io_putchar(int ch)
  11. #else
  12. #define PUTCHAR_PROTOTYPE int fputc(intch, FILE *f)
  13. #endif
  14. int main(void)
  15. {
  16. SystemCoreClockUpdate ();
  17. delay_init(72);
  18. LCD_GPIOInit();
  19. LCD_Init();
  20.        while(DS18B20_Init())/
  21.        {
  22.               delay_ms(500);           
  23.        }     
  24. while (1)
  25. {  
  26.      LCD_Clear();
  27.               aaa=DS18B20_Get_Temp();
  28.    sprintf(bbb,"%d",aaa);
  29.               bbb[3]=bbb[2];
  30.               bbb[2]='.';
  31.               LCD_ShowString(1,1,"Temperature:");
  32.    LCD_ShowString(4, 2,(&(bbb[0])));
  33.               LCD_ShowString(6,2,"℃");
  34.    delay_us(1000000);  
  35. }  
  36. }
  37. 3.系統(tǒng)初始化:
  38. 3.1時鐘的初始程序
  39. SystemCoreClockUpdate ();
  40. 3.2.I/O初始化程序
  41. GPIO_InitTypeDef GPIO_InitStructure;    //GPIO
  42. RCC_APB2PeriphClockCmd(       RCC_APB2Periph_GPIOA, ENABLE );    /GPIO_InitStructure.GPIO_Pin =GPIO_Pin_0;  
  43. GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP;  
  44. GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz;
  45. GPIO_Init(GPIOA,&GPIO_InitStructure);
  46. 3.3.18b20初始化程序
  47. 初始化要用到的幾個 GPIO 引腳;初始化 ds18b20芯片;
  48. 程序為:
  49. u8 DS18B20_Init(void)
  50. {
  51.        GPIO_InitTypeDefGPIO_InitStructure;    //GPIO
  52.        RCC_APB2PeriphClockCmd(       RCC_APB2Periph_GPIOA, ENABLE ); //使能PORTA口時鐘  
  53.        GPIO_InitStructure.GPIO_Pin= GPIO_Pin_0;  
  54.        GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;  //復用推挽輸出
  55.        GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
  56.        GPIO_Init(GPIOA,&GPIO_InitStructure);
  57.        GPIO_SetBits(GPIOA,GPIO_Pin_0);
  58.        DS18B20_Rst();
  59.        returnDS18B20_Check();
  60. }
  61. 3.4.ds18b20中讀入溫度程序
  62. //從ds18b20得到溫度值
  63. //精度:0.1C
  64. //返回值:溫度值 (-550~1250)
  65. short DS18B20_Get_Temp(void)
  66. {                                                            
  67.    u8 temp;
  68.    u8 TL,TH;
  69.        shorttem;
  70.    DS18B20_Start ();                  
  71.    DS18B20_Rst();
  72.    DS18B20_Check();   
  73.    DS18B20_Write_Byte(0xcc);
  74.    DS18B20_Write_Byte(0xbe);  
  75.    TL=DS18B20_Read_Byte();   
  76.    TH=DS18B20_Read_Byte();
  77.                   
  78.     if(TH>7)
  79.    {
  80.        TH=~TH;
  81.        TL=~TL;
  82.        temp=0;//溫度為負  
  83.    }else temp=1;//溫度為正        
  84.    tem=TH; //獲得高八位
  85.    tem<<=8;   
  86.    tem+=TL;//獲得底八位
  87.    tem=(float)tem*0.625;//轉(zhuǎn)換   
  88.        if(temp)returntem; //返回溫度值
  89.        elsereturn -tem;   
  90. }
  91. 3.5.LCD顯示程序
  92. //LCD端口初始化
  93. void LCD_GPIOInit (void)
  94. {
  95.   GPIO_InitTypeDefGPIO_InitStructure; //定義GPIO結(jié)構(gòu)變量
  96. RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); //使能AFIO時鐘(下一操作所必需)
  97. GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE); //啟用SW-DP(關(guān)閉其他以開放IO口)
  98. RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); //關(guān)閉AFIO時鐘
  99. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //使能數(shù)據(jù)端口時鐘
  100. //以上是對單個I/O的初始化例子,本工程可以一次完成
  101. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); //使能聯(lián)絡端口時鐘
  102.   GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP; //推挽輸出
  103.   GPIO_InitStructure.GPIO_Pin= LCD_RS_PIN | LCD_EN_PIN | LCD_RW_PIN;
  104. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  105.   GPIO_Init(LCD_EN_PORT,&GPIO_InitStructure);
  106. GPIO_Write(GPIOC,GPIO_ReadOutputData(GPIOC) | 0x000e); //輸出高電平
  107. }
  108. //LCD初始化
  109. void LCD_Init (void)
  110. {
  111.   LCD_Wcmd(0x34);      //擴充指令操作
  112.   delay_us(100000);
  113.   LCD_Wcmd(0x30);      //基本指令操作
  114.   delay_us(100);
  115.   LCD_Wcmd(0x0C);      //顯示開,關(guān)光標
  116.   delay_us(100);
  117.   LCD_Wcmd(0x01);      //清除LCD的顯示內(nèi)容
  118.   delay_us(5000);
  119. }
  120. //設定顯示位置
  121. void LCD_SetCursor (u8 x, u8 y)
  122. {                          
  123.   if (y == 0)
  124.     {y = 0x80;}
  125.   else if (y == 1)
  126.     {y = 0x90;}
  127.   else if (y == 2)
  128.     {y = 0x88;}
  129.   else if (y == 3)
  130.     {y = 0x98;}
  131.   LCD_Wcmd(x + y);     //顯示地址
  132. }
  133. //從(x,y)處開始顯示一個字符串,*p:待顯示字符串
  134. void LCD_ShowString (u8 x,u8 y, char *p)
  135. {
  136.          u8 i=0;
  137.   LCD_SetCursor(x, y);
  138.   while(*p != '\0')
  139.   {      
  140.     LCD_Wdata(*p++);
  141.   }  
  142. }
復制代碼

全部資料51hei下載地址:
羅靖 課設.rar (347.29 KB, 下載次數(shù): 295)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏9 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:477769 發(fā)表于 2019-2-19 11:03 | 只看該作者
不好用啊
回復

使用道具 舉報

板凳
ID:437392 發(fā)表于 2019-2-20 21:58 | 只看該作者
厲害了
回復

使用道具 舉報

地板
ID:407940 發(fā)表于 2019-9-2 10:20 | 只看該作者
是串行還是并行的程序?
回復

使用道具 舉報

5#
ID:779596 發(fā)表于 2020-6-15 22:45 | 只看該作者
你好,請問這個有proteus仿真圖嗎?
回復

使用道具 舉報

6#
ID:307544 發(fā)表于 2020-6-16 10:23 | 只看該作者
可以參考,有點使用價值
回復

使用道具 舉報

7#
ID:891191 發(fā)表于 2021-4-30 15:12 | 只看該作者
LCD怎么接的線啊
回復

使用道具 舉報

8#
ID:818895 發(fā)表于 2021-5-5 12:36 | 只看該作者
在償試中,有得學習了。
回復

使用道具 舉報

9#
ID:915979 發(fā)表于 2021-5-5 18:03 | 只看該作者
那個大哥試了,這個好用嗎
回復

使用道具 舉報

10#
ID:899569 發(fā)表于 2021-5-7 16:44 | 只看該作者
下了之后才發(fā)現(xiàn)這就是正點原子的示例源碼,就改了IO口,里面錯的字都一毛一樣啊。
回復

使用道具 舉報

11#
ID:694006 發(fā)表于 2021-5-8 09:28 | 只看該作者
可以下載使用嗎?
回復

使用道具 舉報

12#
ID:891191 發(fā)表于 2021-5-9 15:32 | 只看該作者
jin111 發(fā)表于 2021-5-7 16:44
下了之后才發(fā)現(xiàn)這就是正點原子的示例源碼,就改了IO口,里面錯的字都一毛一樣啊。

請問這個怎么接的線啊
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99久久精品免费看国产小宝寻花 | 日韩av在线一区 | 日韩在线欧美 | 91精品一区二区 | 国产精品 欧美精品 | 91精品国产色综合久久 | 国产精品一区二区不卡 | 中文字幕日韩一区 | 久久久激情 | 毛片一级电影 | 国产精品欧美精品日韩精品 | 久久国产一区 | 国产在线精品一区 | 国产精品二区三区 | 欧美一级黄色片在线观看 | 国产精品一区二区av | 亚洲97| 中文字幕一区在线观看视频 | 国产精品美女一区二区三区 | 色综合一区二区三区 | 日本理论片好看理论片 | 亚洲综合色视频在线观看 | 国产高清一区二区 | 婷婷毛片 | 中文字幕免费中文 | 日韩欧美在线一区二区 | 国产视频三区 | 热re99久久精品国产99热 | 少妇精品亚洲一区二区成人 | 精品一区av | 99re6热在线精品视频播放 | 久久综合九色综合欧美狠狠 | 国产免费一区二区三区 | 欧美一区二区三区视频 | 精品一区二区三区在线观看国产 | 国产在线资源 | 欧美精品a∨在线观看不卡 国产精品久久国产精品 | 丝袜天堂 | 狠狠亚洲| 56pao在线 | 日韩激情视频一区 |