freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ds18b20的51單片機lcd1602液晶顯示測溫系統(tǒng)-資料下載頁

2025-10-14 10:35本頁面

【導(dǎo)讀】1 薃螁膆莀葿螀袆膃蒞蝿羈莈螄螈膀膁蝕螇芃蕆薆螆艿蒂螆肅蒅莈螅膇羋蚆襖袆蒃薂袃罿芆蒈袂肁蒁蒄袁芃莄螃袀羃膇蠆袀肅莃薅衿膈膅蒁袈袇莁莇羇羀膄蚆羆肂荿薂羅芄膂薈羄羄蕆蒃羄肆芀螂羃腿蒆蚈芁艿薄羈羀蒄蒀蚈肅芇莆蚇膅蒂蚅蚆裊芅蟻蚅肇薁薇蚄腿莃蒃蚃節(jié)膆螁螞羈莂蚇螞肄膅薃螁膆莀葿螀袆膃蒞蝿羈莈螄螈膀膁蝕螇芃蕆薆螆艿蒂螆肅蒅莈螅膇羋蚆襖袆蒃薂袃罿芆蒈袂肁蒁蒄袁芃莄螃袀羃膇蠆袀肅莃薅衿膈膅蒁袈袇莁莇羇羀膄蚆羆肂荿薂羅芄膂薈羄羄蕆蒃羄肆芀螂羃腿蒆蚈芁艿薄羈羀蒄蒀蚈肅芇莆蚇膅蒂蚅蚆裊芅蟻蚅肇薁薇蚄腿莃蒃蚃節(jié)膆螁螞羈莂蚇螞肄膅薃螁膆莀葿螀袆膃蒞蝿羈莈螄螈膀膁蝕螇芃蕆薆螆艿蒂螆肅蒅莈螅膇羋蚆襖袆蒃薂袃罿芆蒈袂肁蒁蒄袁芃莄螃袀羃膇蠆袀肅莃薅衿膈膅蒁袈袇莁莇羇羀膄蚆羆肂荿薂羅芄膂薈羄羄蕆蒃羄肆芀螂羃腿蒆蚈芁艿薄羈羀蒄蒀蚈肅芇莆蚇膅蒂蚅蚆裊芅蟻蚅肇薁薇蚄腿莃蒃蚃節(jié)膆螁螞羈莂蚇螞肄膅薃螁膆莀葿螀袆膃蒞蝿羈莈螄螈膀膁蝕

  

【正文】 命令。 第 7~ 14 腳 : D0~ D7 為 8 位雙向數(shù)據(jù)線。 第 15 腳:背光源正極。 第 16 腳:背光源負(fù)極 。 1602LCD 的指令說明及時序 1602 液晶模塊內(nèi)部的控制器共有 11 條控制指令,如表所示: 序號 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清顯示 ( 01H) 0 0 0 0 0 0 0 0 0 1 2() 光標(biāo)返回 (02H) 0 0 0 0 0 0 0 0 1 * 3 置輸入模式 (04H07H) 0 0 0 0 0 0 0 1 I/D S 4 顯示開 /關(guān)控制 (08H0FH) 0 0 0 0 0 0 1 D C B 5 光標(biāo)或字符移位(10H1FH) 0 0 0 0 0 1 S/C R/L * * 6 置功能 (20H3FH) 0 0 0 0 1 DL N F * * 7 置字符發(fā)生存貯器地址(40H7FH) 0 0 0 1 字符發(fā)生存貯器地址 8 置數(shù)據(jù)存貯器地址 (80H) 0 0 1 顯示數(shù)據(jù)存貯器地址 9 讀忙標(biāo)志或地址 0 1 BF 計數(shù)器地址 10 寫數(shù)到 CGRAM 或DDRAM) 1 0 要寫的數(shù)據(jù)內(nèi)容 11 從 CGRAM 或 DDRAM 讀數(shù) 1 1 讀出的數(shù)據(jù)內(nèi)容 控制命令表 30 1602 液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明: 1 為高電平、 0 為低電平) 指令 1:清顯示,指令碼 01H,光標(biāo)復(fù)位到地址 00H 位置。 指令 2:光標(biāo)復(fù)位,光標(biāo)返回到地址 00H。 指令 3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。 指令 4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 指令 5:光標(biāo)或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。 指令 6:功能設(shè)置命令 DL:高電平時為 4 位總線,低電平時為 8 位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示 5x7 的點陣字符,高電平時顯示 5x10 的點陣字符。 指令 7:字符發(fā)生器 RAM 地址設(shè)置。 指令 8: DDRAM 地址設(shè)置。 指令 9:讀忙信號和光標(biāo) 地址 BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 指令 10:寫數(shù)據(jù)。 指令 11:讀數(shù)據(jù)。 與 HD44780 相兼容的芯片時序表如下: 讀狀態(tài) 輸入 RS=L, R/W=H, E=H 輸出 D0— D7=狀態(tài)字 寫指令 輸入 RS=L, R/W=L, D0— D7=指令碼, E=高脈沖 輸出 無 讀數(shù)據(jù) 輸入 RS=H, R/W=H, E=H 輸出 D0— D7=數(shù)據(jù) 寫數(shù)據(jù) 輸入 RS=H, R/W=L, D0— D7=數(shù)據(jù), E=高脈沖 輸出 無 基本操作時序表 1602LCD 的 RAM 地址映射及標(biāo)準(zhǔn)字庫表 31 液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符, 下 圖是 1602 的內(nèi)部顯示地址。 1602LCD 內(nèi)部顯示地址 例如第二行第一個字符的地址是 40H,那么是否直接寫入 40H 就可以將光標(biāo)定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位 D7 恒定為高電平 1 所以實際寫入的數(shù)據(jù)應(yīng)該是 01000000B( 40H) +10000000B(80H)=11000000B(C0H)。 在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時光標(biāo)是自動右移的,無需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。 1602 液晶模塊內(nèi)部的字符發(fā)生存儲器( CGROM)已經(jīng)存儲了 160 個不同的點陣字符圖形,如 下 圖所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母 “A”的代碼是 01000001B( 41H),顯示時模塊把地址 41H 中的點陣字符圖形顯示出來,我們就能看到字母 “A” 32 圖 1058 字符代碼與圖形對應(yīng)圖 1602LCD 的一般初始化(復(fù)位)過程 延時 15mS 寫指令 38H(不檢測忙信號) 延時 5mS 寫指令 38H(不檢測忙信號) 延時 5mS 寫指令 38H(不檢測忙信號) 以后每次寫指令、讀 /寫數(shù)據(jù)操作均需要檢測忙信號 序號 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 指令 6:功能設(shè)置命令 DL:高電平時為 4 位總線,低電平時為 8 位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示 5x7 的點陣字符,高電平時顯示 5x10 的點陣字符。 6 置功能 0 0 0 0 1 DL N F * * 33 寫指令 38H:顯示模式設(shè)置 4 顯示開 /關(guān)控制 0 0 0 0 0 0 1 D C B 指令 4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 寫指令 08H:顯示關(guān)閉 寫指令 01H:顯示清屏 寫指令 06H:顯示光標(biāo)移動設(shè)置 寫指令 0CH:顯示開及光標(biāo)設(shè)置 1602LCD 的軟硬件設(shè)計實例 1 硬件原理圖 1602 液晶顯示模塊可以和單片機 AT89C51 直接接口,電路如圖 1060 所示。 硬件原理圖 2 程序流程圖 34 軟件流程圖 3 軟件代碼 include include sbit ds=P3^3。//溫度傳感器信號線 typedef unsigned char BYTE。 typedef bit BOOL。 typedef unsigned int uint。 sbit LCD_RS = P2^0。 sbit LCD_RW = P2^1。 sbit LCD_EP = P2^2。 uint temp。 BYTE code dis1[] = { temperature }。 BYTE data disdata[5]。 delay(int ms) { // 延時子程序 int i。 while(ms) { for(i = 0。 i i++) { 35 _nop_()。 _nop_()。 _nop_()。 _nop_()。 } } } BOOL lcd_bz() { // 測試 LCD 忙碌狀態(tài) BOOL result。 LCD_RS = 0。 LCD_RW = 1。 LCD_EP = 1。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 result = (BOOL)(P0 amp。 0x80)。 LCD_EP = 0。 return result。 } lcd_wcmd(BYTE cmd) { // 寫入指令數(shù)據(jù)到 LCD while(lcd_bz())。 LCD_RS = 0。 LCD_RW = 0。 LCD_EP = 0。 _nop_()。 _nop_()。 P0 = cmd。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 LCD_EP = 1。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 LCD_EP = 0。 } 36 lcd_pos(BYTE pos) { //設(shè)定顯示位置 lcd_wcmd(pos | 0x80)。 } lcd_wdat(BYTE dat) { //寫入字符顯示數(shù)據(jù)到 LCD while(lcd_bz())。 LCD_RS = 1。 LCD_RW = 0。 LCD_EP = 0。 P0 = dat。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 LCD_EP = 1。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 LCD_EP = 0。 } lcd_init() { //LCD 初始化設(shè)定 lcd_wcmd(0x38)。 //16*2 顯示, 5*7 點陣, 8 位數(shù)據(jù) delay(1)。 lcd_wcmd(0x0c)。 //顯示開,關(guān)光標(biāo) delay(1)。 lcd_wcm
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1