久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
stm32 ds18b20數字溫度傳感器代碼
[打印本頁]
作者:
1339493121
時間:
2019-2-18 16:10
標題:
stm32 ds18b20數字溫度傳感器代碼
基于stm32mini開發板 12864教學工程 親測有效
圖形液晶顯示
HJ12864M-1
基于st7290
顯示一個中文菜單,通過菜單控制D2,D4,D8的顯示
單片機源程序如下:
/*************************************************
函數名:main.c
功 能 :12864液晶模塊演示范例——基于查詢忙狀態實現
時 間 :2016/03/08
作 者 :沈紅衛,紹興文理學院 機械與電氣工程學院
*************************************************/
#include <stm32f10x.h>
#include "delay.h" //延時函數的頭文件
#include "st12864.h" //液晶模塊接口函數的頭文件
/*-----------------待顯示的字符串------------------------*/
//由于KEIL對中文支持的BUG,導致擴展ASCII碼不能正確被識別,所以直接使用內碼
//使用內碼查詢軟件可以查詢每個漢字的內碼
//例如:你好的內碼為0xC4,0xE3,0xBA,0xC3
//以下為“你好串口實”的內碼
u8 Table0[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
//u8 Table0[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5};
u8 Table1[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x11,0x20,0x20,0x20,0x20,0x20};
u8 Table2[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
u8 Table3[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
u8 Table4[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
u8 Table5[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
u8 Table6[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
u8 Table7[]={0xC4,0xE3,0xBA,0xC3,0xB4,0xAE,0xBF,0xDA,0xCA,0xB5,0x20,0x20,0x20,0x20,0x20,0x20};
u8 value []={0,1,2,3,4,5,6,8,9};
//范例演示用BMP圖片數據
u8 BMP1[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x18,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x78,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF3,0xF8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xC0,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x18,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0x78,
0x00,0x00,0x00,0x0F,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x18,
0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x00,0x00,0xCF,0x98,
0x00,0x00,0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0xC6,0x18,
0x00,0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0x01,0xFF,0xF0,0x00,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x1F,0xFE,0x00,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x07,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x03,0xFF,0xC0,0x00,0x00,0x00,0x80,0x08,
0x00,0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0xFF,0xF8,0x00,0x00,0x00,0x78,0x00,
0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0x00,0x3F,0xFF,0x00,0x00,0x00,0xE0,0x00,
0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x00,0x0F,0xFF,0xC0,0x00,0x00,0xC0,0x18,
0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x00,0x07,0xFF,0xF8,0x00,0x00,0xFF,0xF8,
0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x01,0xFF,0xFE,0x00,0x00,0xFF,0xF8,
0x0F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x00,0xFF,0xFF,0x80,0x00,0xC0,0x18,
0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x00,0x7F,0xFF,0xE0,0x00,0xF8,0x00,
0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x00,0x3F,0xFF,0xF8,0x00,0x00,0x00,
0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x1F,0xFF,0xFC,0x00,0xFF,0xF8,
0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x1F,0xFF,0xFF,0x00,0xFF,0xF8,
0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0x87,0xE0,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x7E,0x00,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0xF8,0x18,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0xFF,0xF8,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x80,0x08,
0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0x10,0xE0,
0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x1F,0xFF,0xFF,0x00,0xF0,0x38,
0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x1F,0xFF,0xFE,0x00,0xCF,0x98,
0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x00,0x3F,0xFF,0xF8,0x00,0xC6,0x18,
0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x00,0x7F,0xFF,0xE0,0x00,0xC6,0x18,
0x0F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x00,0x7F,0xFF,0x80,0x00,0xFF,0xF8,
0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF8,0x00,0x01,0xFF,0xFE,0x00,0x00,0xC0,0x18,
0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x00,0x03,0xFF,0xF0,0x00,0x00,0x00,0x00,
0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x00,0x0F,0xFF,0xC0,0x00,0x00,0xC0,0x18,
0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0x00,0x3F,0xFE,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0xFF,0xF0,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x07,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x03,0xFF,0xC0,0x00,0x00,0x00,0xC0,0x18,
0x00,0x03,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0xF0,
0x00,0x00,0x7F,0xFF,0xFF,0xFF,0xFF,0x03,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x38,
0x00,0x00,0x1F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x18,
0x00,0x00,0x01,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0xC0,0x18,
0x00,0x00,0x00,0x0F,0xFF,0xFF,0xFF,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xF8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x18,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xF8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xD8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF1,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x88,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xF8,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
//系統時鐘初始化函數
//采用固件庫函數方式編程
//pll:選擇的倍頻數,從2開始,最大值為16(這里最大為9)
/*******************************************************************************
* Function Name : Rcc_Init
* Description : RCC配置(使用外部8MHz晶振)
* Input : uint32_t,PLL的倍頻系數,例如9就是9*8=72M
* Output : 無
* Return : 無
*******************************************************************************/
void Stm32_Clock_Init(u8 pll)
{
ErrorStatus HSEStartUpStatus;
/*將外設RCC寄存器重設為缺省值*/
RCC_DeInit();
/*設置外部高速晶振(HSE)*/
RCC_HSEConfig(RCC_HSE_ON); //RCC_HSE_ON——HSE晶振打開(ON)
/*等待HSE起振*/
HSEStartUpStatus = RCC_WaitForHSEStartUp();
if(HSEStartUpStatus == SUCCESS) //SUCCESS:HSE晶振穩定且就緒
{
/*設置AHB時鐘(HCLK)*/
RCC_HCLKConfig(RCC_SYSCLK_Div1); //RCC_SYSCLK_Div1——AHB時鐘= 系統時鐘
/* 設置高速AHB時鐘(PCLK2)*/
RCC_PCLK2Config(RCC_HCLK_Div1); //RCC_HCLK_Div1——APB2時鐘= HCLK
/*設置低速AHB時鐘(PCLK1)*/
RCC_PCLK1Config(RCC_HCLK_Div2); //RCC_HCLK_Div2——APB1時鐘= HCLK / 2
/*設置FLASH存儲器延時時鐘周期數*/
FLASH_SetLatency(FLASH_ACR_LATENCY_2);//FLASH_Latency_2 2延時周期
/*選擇FLASH預取指緩存的模式*/
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);// 預取指緩存使能
/*設置PLL時鐘源及倍頻系數*/
//RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
// PLL的輸入時鐘= HSE時鐘頻率;RCC_PLLMul_9——PLL輸入時鐘x 9
switch(pll)
{
case 2: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_2);
break;
case 3: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_3);
break;
case 4: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_4);
break;
case 5: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_5);
break;
case 6: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_6);
break;
case 7: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_7);
break;
case 8: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_8);
break;
case 9: RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
break;
default:
RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_2);
break;
}
/*使能PLL */
RCC_PLLCmd(ENABLE);
/*檢查指定的RCC標志位(PLL準備好標志)設置與否*/
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
{
}
/*設置系統時鐘(SYSCLK)*/
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
//RCC_SYSCLKSource_PLLCLK——選擇PLL作為系統時鐘
/* PLL返回用作系統時鐘的時鐘源*/
while(RCC_GetSYSCLKSource() != 0x08) //0x08:PLL作為系統時鐘
{
}
}
/*使能或者失能APB2外設時鐘*/
/*
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |
RCC_APB2Periph_GPIOC , ENABLE);
*/
//RCC_APB2Periph_GPIOA GPIOA時鐘
//RCC_APB2Periph_GPIOB GPIOB時鐘
//RCC_APB2Periph_GPIOC GPIOC時鐘
//RCC_APB2Periph_GPIOD GPIOD時鐘
}
u8 MenuItem_0[]={" Select: "};
u8 MenuItem_1[]={" light led1 "};
u8 MenuItem_2[]={" light led2 "};
u8 MenuItem_3[]={" light two led "};
void DisplayMenu(u8 cur)
{
Display_LCD_String(0,MenuItem_0,1);
switch(cur)
{
case 1:
MenuItem_1[1]=26; //字符->的ASCII碼
MenuItem_2[1]=0x20; //空格
MenuItem_3[1]=0x20;
Display_LCD_String(1,MenuItem_1,1);
Display_LCD_String(2,MenuItem_2,1);
Display_LCD_String(3,MenuItem_3,1);
break;
case 2:
MenuItem_1[1]=0x20; //字符->的ASCII碼
MenuItem_2[1]=26; //空格
MenuItem_3[1]=0x20;
Display_LCD_String(1,MenuItem_1,1);
Display_LCD_String(2,MenuItem_2,1);
Display_LCD_String(3,MenuItem_3,1);
break;
case 3:
MenuItem_1[1]=0x20; //字符->的ASCII碼
MenuItem_2[1]=0x20; //空格
MenuItem_3[1]=26;
Display_LCD_String(1,MenuItem_1,1);
Display_LCD_String(2,MenuItem_2,1);
Display_LCD_String(3,MenuItem_3,1);
break;
}
}
int main(void)
{
u8 time=50;
Stm32_Clock_Init(9); //系統時鐘設置
delay_init(72); //延時初始化
// uart_init(72,9600); //串口初始化
delay_ms(1000);
LCD12864_Init(); //12864初始化
/*---------------------顯示字符串-------------------*/
// Display_LCD_String(0 , Table0,time);
Disp_HZ(0,Table0,5); //指定個數漢字顯示
delay_ms(100);
// Display_LCD_String(1 , Table1,time);
Disp_HZ(1,Table1,5);
delay_ms(100);
// Display_LCD_String(2 , Table2,time);
Disp_HZ(2,Table2,5);
delay_ms(100);
Display_LCD_String(3 , Table3,time); //8個漢字或16字節字符顯示
delay_ms(1500);
Write_LCD_Command(0x01); //清屏
LCD_Clear_TXT();
delay_ms(50);
/*
PutBMP(BMP1); //外星人
delay_ms(1500);
LCD_Clear_BMP(); //清除圖片
PutBMP(BMP1); //NBA標志
delay_ms(1500);
LCD_Clear_BMP(); //清除圖片
PutBMP(BMP1); //暴漫男主
delay_ms(1500);
LCD_Clear_BMP(); //清除圖片
Write_LCD_Command(0x30); //必須再次打開基本指令,因為繪圖開了擴充指令
Display_LCD_String(1 , Table4,time);
delay_ms(100);
Display_LCD_String(2 , Table5,time);
delay_ms(100);
Display_LCD_String(3, Table6,time);
delay_ms(100);
//---------------------顯示自定義字符------------------
Write_LCD_Command(0x34); //要用到畫圖功能,必須打開擴充指令
Write_LCD_Command(0x36);
Draw_Char4x5Line(30,5,value,10) ; //顯示自定義字符0~9
Draw_Update(); //更新顯示
Write_LCD_Command(0x30); //再次打開基本指令,后面用到
delay_ms(1500);
LCD_Clear_TXT();
delay_ms(50);
Display_LCD_String(3, Table7,time);
// LCD_Clear_BMP();
Draw_Clear();
*/
DisplayMenu(1);
delay_ms(2000);
DisplayMenu(2);
while(1);
}
復制代碼
所有資料51hei提供下載:
12864顯示工程.7z
(207.99 KB, 下載次數: 9)
2019-2-19 03:47 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
admin
時間:
2019-2-19 03:48
本帖需要重新編輯補全電路原理圖,源碼,詳細說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
最新黄色毛片
|
精品亚洲第一
|
欧美日韩在线视频一区
|
国产精品国产精品国产专区不卡
|
国产精品美女久久久免费
|
一区二区三区网站
|
亚洲欧美一区二区三区视频
|
欧美日韩精品免费观看
|
国产精品毛片一区二区三区
|
成人一区二区三区
|
国产精品久久久亚洲
|
国产一区二区三区在线
|
91精品久久久久久久久久入口
|
超碰在线免费公开
|
色久电影
|
国产欧美日韩综合精品一区二区
|
日韩欧美视频网站
|
自拍亚洲
|
亚洲成人一区二区
|
亚洲一区中文字幕
|
成人福利在线观看
|
91精品国产乱码久久久久久
|
午夜电影福利
|
午夜视频在线免费观看
|
日日日干干干
|
一区二区三区欧美
|
亚洲精品久久久久中文字幕欢迎你
|
18成人在线观看
|
二区高清
|
日韩精品一区二区三区视频播放
|
在线播放中文字幕
|
国产美女精品
|
欧美一级电影免费
|
国产色婷婷精品综合在线手机播放
|
91精品国产综合久久久久久漫画
|
亚州午夜精品
|
日本福利视频
|
91精品国产美女在线观看
|
欧美日韩精品一区二区三区四区
|
www.黄色网
|
国产欧美一区二区三区在线播放
|