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

正文內(nèi)容

畢業(yè)論文-智能型充電器的電源和顯示的設(shè)計說明書-資料下載頁

2025-06-06 12:13本頁面
  

【正文】 言就越有優(yōu)勢。 (2) 無需精通單片機(jī)指令集和具體的硬件,也能夠編出符合硬件實際專業(yè)水平的程序。 (3) 可以實現(xiàn)軟件的結(jié)構(gòu)化編程,使得軟件的邏輯結(jié)構(gòu)變得清晰、有條理、便于開發(fā)小組計劃任務(wù)、分工合作。源程序的可讀性和可維護(hù)性都很好。 (4) 省去了人工分配單片機(jī)資源的工作,在匯編語言中要為每一個子程序分配單片機(jī)的資源。在使用 C 語言后,只要在代碼中申明一下變量的類型,編譯器就會自動分配相關(guān)資源,根本不需要人工干預(yù),從而有效地避免了人工分配單片機(jī)資源的差錯。 (5) 匯編語言的可移植性很差,而 C語言只要將一些與硬件相關(guān)的代碼作適當(dāng)?shù)男薷模涂梢苑奖愕匾浦驳狡渌N類的單片機(jī)上。 (6) C 語言提供 auto、 static、 flash 等存儲類型,針對單片機(jī)的程序存儲空間、數(shù)據(jù)存儲空間及 EEPROM 空間自動為變量合理地分配空間,而且 C語言提供復(fù)雜的數(shù)據(jù)類型,極大地增強(qiáng)了 程序處理能力和靈活性。 C編譯器能夠自動實現(xiàn)中斷服務(wù)程序的現(xiàn)場保護(hù)和恢復(fù),并且提供常用的標(biāo)準(zhǔn)函數(shù)庫,供用戶使用。并且 C 編譯器能自動生成一些硬件的初始化代碼。 (7) 對于一些復(fù)雜系統(tǒng)的開發(fā),可以通過移植 (或 C編譯器提供 )的實時操作系統(tǒng)來實現(xiàn)。 正由于 C 語言在系統(tǒng)開發(fā)中的優(yōu)勢,這次設(shè)計的所有程序設(shè)計都將采用 C語言編寫,且通過 ICCAVR 編譯器操作 AVR 的硬件資源。 液晶顯示漢字或字符的原理 LCD 本身不發(fā)光只是調(diào)節(jié)光的亮度,目前市面上的 LCD顯示器都是利用液晶的扭曲一向列效應(yīng)制成,這是一種電場效應(yīng),夾在 兩片導(dǎo)電玻璃電極間的液晶經(jīng)過一定處理,它內(nèi)部的分子呈直角扭曲,當(dāng)線性偏振光透過其偏振面便會旋轉(zhuǎn)一個直角。當(dāng)在玻璃電極上加上電壓后,在電場作用下,液晶的扭曲結(jié)構(gòu)消失,偏振光便可以直接通過。當(dāng)去掉電場后液晶分子又恢復(fù)取扭曲結(jié)構(gòu)。把這樣的液晶南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 29 置于兩個偏振片之間,改變偏振片相對位置就可以得到白底黑子或黑底白字的顯示形式。結(jié)合以上知識具體顯示原理如下: ( 1 ) 線段的顯示 點陣圖形式液晶由 M*N個顯示單元組成,假設(shè) LCD顯示屏有 64行,每行有128列,每 8列對應(yīng) 1字節(jié)的 8位,即每行由 16字節(jié),共 16*8=128個點組成,屏上 64*16個顯示單元與顯示 RAM區(qū) 1024字節(jié)相對應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對應(yīng)。例如屏的第一行的亮暗由 RAM區(qū)的 00H~00FH的 16字節(jié)的內(nèi)容決定,當(dāng) (000)=FFH時,如屏的左上角顯示一條短亮線,長度為 8個點;當(dāng) (3FFH)=FFH時,則顯示屏的右下角顯示一條短亮線;當(dāng) (000H)=FFH, (001H)=00H,(002H)=FFH, (003H)=00H, ? (00EH)=FFH, (00FH)=00H時,則在屏的頂部顯示一條由 8段亮線和 8段暗線組成的虛線。這就是 LCD顯示 的基本原理。 ( 2 ) 字符的顯示 用 LCD顯示一個字符時比較復(fù)雜,因為一個字符由 6*8或 8*8點陣組成,既要找到和顯示屏上某幾個位置對應(yīng)的顯示 RAM區(qū)的 8字節(jié),還要使每字節(jié)的不同的位為“ 1”,其它的為“ 0”,為“ 1”的點亮,為“ 0”的不亮,這樣一來就組成某個字符。但對于內(nèi)帶字符發(fā)生器的控制器 (如 HD61202)來說,顯示字符就比較簡單了,可讓控制器工作在文本方式,根據(jù)在 LCD上開始顯示的行列號及每行的列數(shù)找出顯示 RAM對應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對應(yīng)的代碼即可。 ( 3 ) 漢字的顯示 漢字的 顯示一般采用圖形方式,事先從微機(jī)中提取要顯示的漢字的點陣碼,每個漢字占 32B,分左右兩半部,各占 16B,左邊為 5? 右邊為 6?根據(jù)在 LCD上開始顯示的行列號及每行的列數(shù)可找到顯示 RAM對應(yīng)的地址,設(shè)立光標(biāo),送上要顯示的漢字的一字節(jié),光標(biāo)位置加 1,送第二字節(jié),按行按列對齊,送第三字節(jié)??直到 32B顯示完就可在 LCD上得到一個完整的漢字。 LCD 模塊的指令說明 要完成顯示程序的設(shè)計,必須了解 LCD 液晶模塊的指令系統(tǒng)。這里采用的LCD 是北京精電蓬遠(yuǎn)顯示技術(shù)公司生產(chǎn)的 MGLS 系列圖形液晶顯示模 塊,其內(nèi)藏KS0108B/HD61202 控制器。 KS0108B 及其兼容控制驅(qū)動器 ( HD61202 )的指令系統(tǒng)比較簡單,一共只有 7條指令,從作用上可分為兩類。第一條指令和第二條指令為顯示狀態(tài)設(shè)置類;其余指令為數(shù)據(jù)讀 /寫操作指令。下面是各個指令的功能: 南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 30 1. 讀狀態(tài)指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 0 BUSY 0 ON/OFF REST 0 0 0 0 狀態(tài)字是計算機(jī)了解 HD61202 及其兼容控制 驅(qū)動器當(dāng)前狀態(tài),或是HD61202 及其兼容控制驅(qū)動器向計算機(jī)提供其內(nèi)部狀態(tài)的唯一的信息渠道。狀態(tài)字為一字節(jié),其中僅有 3 位有效位,它們是: BUSY 表示當(dāng)前 HD61202 接口控制電路運(yùn)行狀態(tài)。 BUSY=1 表示 HD61202正在處理計算機(jī)發(fā)來的指令或數(shù)據(jù)。此時接口電路被封鎖,不能 接受除讀狀態(tài) 字以外的任何操作。 BUSY=0 表示 HD61202 接口電路已處于“準(zhǔn)備好”狀態(tài),等待計算機(jī)的訪問。 ON/OFF 表示當(dāng)前的顯示狀態(tài)。 ON/OFF=1 表示關(guān)顯示狀態(tài); ON/OFF=0 表示開顯示狀態(tài)。 RESET 表示當(dāng)前 HD61202 的工作狀態(tài),即反映 RST 端的電平狀態(tài)。當(dāng) RST為低電平狀態(tài)時, HD61202 處于復(fù)位工作狀態(tài), RESET=1;當(dāng) RST 為高電平狀態(tài)時, HD61202 為正常工作狀態(tài), RESET=0。 在指令設(shè)置和數(shù)據(jù)讀寫時要注意狀態(tài)字中的 BUSY 標(biāo)志。只有在 BUSY=0時,計算機(jī)對 HD61202 的操作才能有效,因此計算機(jī)在每次對 HD61202 操作之前,都要讀出狀態(tài)字以判斷 BUSY 是不為“ 0”。若不為“ 0”,則計算機(jī)需要等待,直至 BUSY=0 為止。 2. 顯示開關(guān)指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 1 1 1 1/0 該指令設(shè)置顯示開/關(guān)觸發(fā)器的狀態(tài),由此控制顯示數(shù)據(jù)鎖存器的工作方式,從而控制顯示屏上的顯示狀態(tài)。 D 位為顯示開/關(guān)控制位。當(dāng) D=1 為開顯示設(shè)置,顯示數(shù)據(jù)鎖存器正常工作,顯示屏上呈現(xiàn)所需的顯示效果。此時在狀態(tài)字中 ON/OFF=0;當(dāng) D=0 為關(guān)顯示設(shè)置,顯示數(shù)據(jù)鎖存器被置零,顯示屏呈不顯示狀態(tài),但顯示存儲器并沒有被破壞,在狀態(tài)字中 ON/OFF=1。 3. 顯示起始行設(shè)置指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 1 顯示起始行 ( 063 ) 該指令設(shè)置了顯示起始行寄存器的內(nèi)容。 HD61202 有 64 行顯示的管理能力,南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 31 該指令中 L5~L0 為顯示起始行的地址,取值在 0~3FH( 1~64 行 )范圍內(nèi),它規(guī)定了顯示屏上最頂一行所對應(yīng)的顯示存儲器的行地址。如果定時間隔地,等間距地修改 ( 如加 1 或減 1)顯示起始行寄存器的內(nèi)容,則顯示屏將呈現(xiàn)顯示內(nèi)容向上或向下平滑滾動的顯示效果。 4. 頁面地址 設(shè)置指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 0 1 1 1 頁號 ( 0~7 ) 該指令設(shè)置了頁面地址 —— X 地址寄存器的內(nèi)容。 HD61202 將顯示存儲器分成 8 頁,指令代碼中 P2P0 就是要確定當(dāng)前所要選擇的頁面地址,取值范圍為07H,代表第 18 頁。該指令規(guī)定了以后的讀/寫操作將在哪一個頁面上進(jìn)行。 5. 列地址設(shè)置指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 1 顯示列地址 ( 0~63 ) 該指令設(shè)置了 Y 地址計數(shù)器的內(nèi)容, C5~C0=0~3FH( 1~64 )代表了某一頁面上的某一個單元地址,隨后的一次讀或?qū)憯?shù)據(jù)將在這個單元上進(jìn)行。 Y 地址計數(shù)器具有自動加 1 功能,在每上次讀/寫數(shù)據(jù)后它將自動加 1,所以在連續(xù)進(jìn)行讀/寫數(shù)據(jù)時, Y 地址計數(shù)器不必每次都設(shè)置一次。 頁面地址的設(shè)置和列地址的設(shè)置將顯示存儲器單元唯一的確定下來,為后來的顯示數(shù)據(jù)的讀/寫作了地址的選通。 6. 寫數(shù)據(jù)指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 1 寫 數(shù) 據(jù) 該操作將 8 位數(shù)據(jù)寫入先前已確定的顯示存儲器的單元內(nèi)。操作完成后列地址計數(shù)器自動加 1。 7. 讀數(shù)據(jù)指令 R/W RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 1 讀 顯 示 數(shù) 據(jù) 該操作將 HD61202 接口部的輸出寄存器內(nèi)容讀出,然后列地址計數(shù)器自動加一。必須注意的是,進(jìn)行讀操作之前,必須有一次空讀操作,緊接著再讀才會讀出 所要讀的單元中的數(shù)據(jù)。 南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 32 液晶顯示界面 本著簡單明了的基本思想前面提到,結(jié)合液晶顯示模塊的相關(guān)知識,設(shè)計出如下界面: 圖 31 LCD 界面顯示 這次設(shè)計采用的液晶顯示模塊本是由北京精電公司所造的圖形式的MGLS12864 芯片,其用一片 KS0107B 或兼容驅(qū)動器 ( HD61203 )作為行驅(qū)動器和三片 KS0108B 或兼容驅(qū)動器 (HD61203) 作為列驅(qū)動器組成的。 液晶顯示的第一行為“智能型充電器”,由左起第四列開始顯示,這樣正好左右平均分配。第二行左起頂格顯示“電池”,表示對充電 電池的選擇,可進(jìn)行“鋰電、鎳鎘、鎳氫、鉛酸”四種電池的選取,第三行顯示電池的節(jié)數(shù),第四行顯示狀態(tài),可以在“快充、涓充、充滿、放電”四個選項間進(jìn)行選取,第二行到第四行左起分別顯示電壓、電流和溫度數(shù)值。由此可見,左邊的兩選項在充放電的過程中是不變的,而右邊的三個參數(shù)在充電過程中隨時發(fā)生變化。 系統(tǒng) 程序流程圖 為了方便程序的設(shè)計,使自己在設(shè)計過程中做到思路清晰,設(shè)計起來游刃有余。這里首先畫出了程序流程圖,后面根據(jù)次流程圖具體設(shè)計程序,現(xiàn)具體分析如下: (一 )主程序流程圖 這次設(shè)計課題的主要內(nèi)容是在充電器的 充電過程中,采集參數(shù),進(jìn)行電壓、電流、溫度的實時顯示。其主流程圖設(shè)計如下: 智能型充電器 電池: 電壓: V 節(jié)數(shù); 電流: A 狀態(tài): 溫度: ℃ 初 始 化 采 集 電 池 電 壓 開 始 等 待 南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 33 ( 1) 圖 32 主程序流程圖 (二 )控制程序流程圖 要想在液晶模塊上顯示一個字符或漢字,首先必須得對控制字進(jìn)行寫指令代碼、寫顯示數(shù)據(jù)和讀顯示數(shù)據(jù) 3 項操作。完成這 3項工作都必須保證控制器處于不忙的情況下,這就必須有一個判忙子程序,其流程圖如下: 南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 34 圖 33 判忙程序流程圖 (三 )顯示程序流程圖 根據(jù)上面采用的方法設(shè)置漢字的初始值 (lr、 X、 Y),當(dāng)顯示完第一列的 8 字節(jié)以后,跳到第二列又從上往下顯示。由于一個漢字每一列有 16 字節(jié),則當(dāng)一頁的 16 列顯示完,只相當(dāng)于顯示的漢字的上半部分,則再次跳到下一頁的初始位,進(jìn)行漢字下半部分的顯示,值到 16 列顯示完成,才表示一個漢字全部顯示結(jié)束。 通過上面的介紹,一個漢字的顯示流程圖編寫如下: 開 始 讀左邊控制器的狀態(tài)字 驅(qū)動器忙? 送 狀 態(tài) 字 返 回 Y N 設(shè) lr、 X、 Y 初始值 lr— 選取控制器 X— 頁面值, Y— 列地址值 開 始 顯 示 顯示滿 16 列? 開 始 初 始 化 南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 35 圖 34 漢字顯示流程圖 按上面的流程圖,就可以進(jìn)行顯示程序的設(shè)計了。具體程序詳見附錄的程序清單。 第四章 系統(tǒng)調(diào)試 第一節(jié) 系統(tǒng)調(diào)試軟件介紹 完成對系統(tǒng)的硬、軟件設(shè)計后,就可以對系統(tǒng)進(jìn)行調(diào)試了。本次設(shè)計本人采用了 ICCAVR 編譯器作為系統(tǒng)的開發(fā)工具,進(jìn)行程序的燒錄和仿真。 ICCAVR 編譯器簡介 (一 ) ICC AVR 是 ImageCraft 公司針對 AVR 單片機(jī)而開發(fā)的一個 C 語言編譯 ,南京工程學(xué)院 畢業(yè)設(shè)計說明書 (論文 ) 36 它具有以下幾個特點 : SRAM 的單片機(jī)器件。 程序編譯器。 。 (STK200/300)。 AVR 是一個運(yùn)行于 Windows 9X/NT 的集成開發(fā)環(huán)境 (ODE),它包括單片機(jī)軟件開發(fā)所需要的編輯器、工程管理器和 C編譯器。 AVR 采用了工程的組織形式。程序的所有源文件全部以工程的一個要素保存在工程中,并且程序的編輯和編譯也都在這個環(huán)境中進(jìn)行。工程管理器最后還能生成 HEX 格式的燒錄文件和 COFF 格式的仿真文件。 (二 )ICC AVR 支持的數(shù)據(jù)類型 數(shù)據(jù)類型就是數(shù)據(jù)的不同表示形式,它們按照被描敘數(shù)據(jù)的 性質(zhì)及其所占存儲
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1