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

正文內(nèi)容

兩相步進(jìn)電機(jī)控制系統(tǒng)畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-06-23 01:37本頁(yè)面
  

【正文】 =0 為止。? 顯示開(kāi)關(guān)(DISPLAY ON/OFF )格式:0 0 1 1 1 1 1 D該指令設(shè)置顯示開(kāi)關(guān)/觸發(fā)器的狀態(tài),由此控制顯示數(shù)據(jù)鎖存器的工作方式,從而控制顯示屏上的顯示狀態(tài)。D 為顯示開(kāi)/關(guān)的控制位。當(dāng) D=1 為顯示設(shè)置,顯示數(shù)據(jù)鎖存器正常工作,顯示屏上呈現(xiàn)所要顯示的效果要求。此時(shí)在狀態(tài)字中 ON/OFF=0。當(dāng)D=0 時(shí),為顯示關(guān)顯示設(shè)置,顯示數(shù)據(jù)鎖存器被置零,顯示屏呈不顯示狀態(tài),但顯示存儲(chǔ)器并沒(méi)有被破壞,在狀態(tài)組中 ON/OFF=1。? 顯示起始行設(shè)置(DISPLAY START LINE)格式:1 1 L5 L4 L3 L2 L1 L0 該指令設(shè)置了顯示起始行寄存器的內(nèi)容。KS0108 有 64 行顯示的管理能力,該指令中 L5~L0 為顯示起始行的地址,取值為 0~3FH(1~64)范圍內(nèi),它規(guī)定了顯示屏上最頂一行所對(duì)應(yīng)的顯示存儲(chǔ)器的行地址。比較特殊的是,最上邊的一行為 00,第二行為 63 從上到下地址是遞減的。在連續(xù)顯示時(shí),行地址指針會(huì)自動(dòng)減 1。通常只在程序開(kāi)始初始化時(shí),指定起始行地址。如果定時(shí)間隔、等間距地修改(如加一或減一)顯示起始行寄存器的內(nèi)容,則顯示屏將呈現(xiàn)顯示內(nèi)容向上或向下平滑滾動(dòng)的顯示效果。? 頁(yè)面地址設(shè)置(SET PAGE(X ADDRESS ) )格式1 0 1 1 1 P2 P1 P0 該指令設(shè)置了頁(yè)面地址 X 地址寄存器的內(nèi)容。 KS0108 將顯示存儲(chǔ)器分成了 8 頁(yè),指令代碼中 P2~P0 就是要確定當(dāng)前所要選擇的頁(yè)面地址,取值范圍為 0~7H,代表第1~8 頁(yè)。該指令規(guī)定了以后讀/寫操作將在哪個(gè)頁(yè)面上進(jìn)行。? 列地址設(shè)置(SET Y ADDRESS)格式0 1 C5 C4 C3 C2 C1 C0 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 27頁(yè)該指令設(shè)置了 Y 地址計(jì)數(shù)器的內(nèi)容,C5~C0=0~3FH(1~64)其代表某一頁(yè)面上的某一單元地址,隨后的一次讀或?qū)憯?shù)據(jù)將在這個(gè)單元上進(jìn)行。Y 地址計(jì)數(shù)器具有自動(dòng)加一功能,在每次讀/寫數(shù)據(jù)后它將自動(dòng)加一,所以在連續(xù)進(jìn)行讀 /寫數(shù)據(jù)時(shí),Y 地址計(jì)數(shù)器不必每次都設(shè)置一次。頁(yè)面地址的設(shè)置和列地址的設(shè)置將顯示存儲(chǔ)器單元唯一地確定下來(lái),為后來(lái)的顯示數(shù)據(jù)的讀/寫作了地址的選通。? 寫顯示數(shù)據(jù)(WRITE DISPLAY DATA)格式:數(shù) 據(jù) 該操作將 8 為數(shù)據(jù)寫入先前已確定的顯示存儲(chǔ)器的單元內(nèi),操作完成后列地址計(jì)數(shù)器會(huì)自動(dòng)加一。? 讀顯示數(shù)據(jù)(READ DISPLAY DATA)格式:數(shù) 據(jù) 該操作將 KS0108 控制器接口部的輸出寄存器內(nèi)容讀出,然后列地址計(jì)數(shù)器自動(dòng)加一。在編程時(shí),要連續(xù)寫兩句讀顯示數(shù)據(jù)指令,才能把一個(gè)字節(jié)的當(dāng)前顯存中的顯示數(shù)據(jù)讀出。第一次把數(shù)據(jù)從數(shù)據(jù)從顯存中讀到輸出鎖存器中,第二次把數(shù)據(jù)從輸出鎖存器通過(guò)總線讀到計(jì)算機(jī)中。而讀狀態(tài)字只需要讀一次即可。 LGM12641BS1R 中 KS0108 控制器的基本編程原理內(nèi)置 KS0108 控制器的 128X64 圖形液晶顯示器是由兩個(gè) KS0108 控制器、液晶顯示屏及電源等構(gòu)成,內(nèi)部結(jié)構(gòu)原理如圖 所示。不難發(fā)現(xiàn),128X64 圖形液晶顯示器有兩個(gè)片選信號(hào),分別為 CS1 和 CS2,在對(duì)顯示屏操作時(shí),一次只能選中一個(gè)顯示屏,即左半屏或右半屏。相當(dāng)于把 128X64 圖形液晶顯示屏從中間一分為二,成為兩個(gè)64X64 顯示屏。選中左半屏?xí)r,CS1 為高電平,CS2 為低電平;選中右半屏?xí)r,CS2為高電平,CS1 為低電平。每半個(gè)顯示屏,對(duì)應(yīng)一個(gè)完整的 KS0108 控制器。KS0108 的顯存與顯示屏的對(duì)應(yīng)關(guān)系既不像 HD4470 那樣一一對(duì)應(yīng)固定不變,也不像 T6963C 那樣靈活和難于掌握。要想在左半屏或右半屏顯示圖形或字符,必須先指定顯示屏的位置。而顯示屏的位置由 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 28頁(yè)KS0108 顯存的三個(gè)參數(shù)決定,即頁(yè)地址、起始行地址和起始列地址。只要指定了這三個(gè)參數(shù),就可以對(duì)該半屏進(jìn)行讀、寫操作。 圖 128X64 點(diǎn)陣液晶模塊原理圖實(shí)際上,KS0108 的顯示存儲(chǔ)器為 512X8(字節(jié)) =4096(位)即 4k 位。這 512 個(gè)存儲(chǔ)空間又劃分為 8 頁(yè),每頁(yè) 64 個(gè)存儲(chǔ)空間,即 64 個(gè)字節(jié)。因?yàn)槊總€(gè)半屏都是64X64 點(diǎn)陣,而 8 個(gè)點(diǎn)陣對(duì)應(yīng)一個(gè)字節(jié),故每個(gè)半屏都對(duì)應(yīng) 8X8 個(gè)字節(jié)。如果顯示8X8 字符,半屏可以顯示 64 個(gè),每行 8 個(gè),共 8 行;如果顯示 16X16 點(diǎn)陣漢字,半屏可以顯示 16 個(gè),每行 4 個(gè),共 4 行。顯存中第 1~8 頁(yè)的數(shù)據(jù)與顯示屏的對(duì)應(yīng)關(guān)系如表 所示。即在顯存中,前 64 個(gè)字節(jié)(512 位)為第一頁(yè),位于半屏的第一字符行(一 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 29頁(yè)個(gè)字符行相當(dāng)于 8 個(gè)點(diǎn)行) ,以此類推。確定了頁(yè)地址,相當(dāng)于確定找到了屏幕上的一個(gè)區(qū)。表 128X64 點(diǎn)陣顯示器位置的劃分 第 7 列 左半屏 右半屏 第 56 列第 1 頁(yè) 第 1 頁(yè)第 2 頁(yè) 第 2 頁(yè)第 3 頁(yè) 第 3 頁(yè)第 4 頁(yè) 第 4 頁(yè)第 5 頁(yè) 第 5 頁(yè)第 6 頁(yè) 第 6 頁(yè)第 7 頁(yè) 第 7 頁(yè)第 8 頁(yè) 第 8 頁(yè)再來(lái)看起始行列地址。為準(zhǔn)確地顯示要顯示的內(nèi)容,還必須指定顯示內(nèi)容在屏幕上的起始列位置,即顯存中該頁(yè) 64 個(gè)字節(jié)存儲(chǔ)位置中的第幾個(gè)位置。這里所說(shuō)的列為點(diǎn)列,對(duì)應(yīng)從半屏的最左邊至最右邊,范圍為 00~3FH.只要把顯示數(shù)據(jù)送入指定的頁(yè)和列,對(duì)應(yīng)屏幕位置上就會(huì)有顯示。如表 34 中,指定左半屏第 1 頁(yè)第 7 列,只要把頁(yè)地址和起始列地址命令寫入,隨后的數(shù)據(jù)就進(jìn)入相應(yīng)的顯存,顯示內(nèi)容就會(huì)從屏幕左上角第 1 頁(yè)內(nèi)第 7 列開(kāi)始顯示。這里要說(shuō)明的是,每頁(yè)共 8 行,究竟要從第幾行開(kāi)始顯示?因此還要指定起始行地址。起始行的真正意義并不是一頁(yè)內(nèi) 8 行中的某一行,它是把整個(gè)屏幕劃分成 64 行,其范圍為 63~00。此外,在 KS0108 控制器顯示時(shí),在屏幕上是按列顯示的。在顯存中連續(xù)讀出的顯示數(shù)據(jù)字節(jié),在顯示屏上從起始列開(kāi)始,自下向上按列顯示。例如圖 所示,要顯示“我”字為 16X16 點(diǎn)陣漢字,在借助取模軟件取模時(shí)必須采用“ 字節(jié)倒序”和“按列取?!狈绞絹?lái)操作。只要指定了顯示所在頁(yè)、起始行和起始列地址,就可以在字模數(shù)據(jù)塊中 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 30頁(yè)連續(xù)取出 16 個(gè)字節(jié)的顯示數(shù)據(jù),顯示結(jié)果為“我”字的上半部分。如果此時(shí)繼續(xù)從數(shù)據(jù)塊中再取出 16 個(gè)字節(jié)而不改變顯示地址的話, “我” 字的下半部分就會(huì)緊接著顯示在上半部分的右側(cè),即列地址是自動(dòng)加 1 的。為了顯示出一個(gè)完整的 16X16 點(diǎn)陣漢字,就必須在顯示完上半部分后,重新指定頁(yè)地址和起始列地址,起始行地址不用指定。從圖中可以看出,16X16 點(diǎn)陣漢字的下部分正好位于另一頁(yè)上,所以在取出顯示數(shù)據(jù)之前,一定要重新設(shè)置頁(yè)地址和起始列地址。只有這樣,一個(gè)完整的“我” 字就會(huì)顯示出來(lái)了。如果是顯示 8X8 點(diǎn)陣字符,因?yàn)椴怀霰卷?yè),所以不用再換頁(yè),連續(xù)取出 8 個(gè)顯示數(shù)據(jù)即可。圖 KS0108 控制器顯示漢字的原理 鍵盤模塊設(shè)計(jì)獨(dú)立按鍵具有編程簡(jiǎn)單但占用 I/O 口資源的特點(diǎn),不適合在按鍵較多的場(chǎng)合應(yīng)用。在實(shí)際應(yīng)用中經(jīng)常要用到輸入數(shù)字、字母等功能,如電子密碼鎖、電話機(jī)鍵盤等一般都至少有 12 到 16 個(gè)按鍵,在這種情況下如果用獨(dú)立按鍵的話顯然太浪費(fèi) I/O 口資源,為此在本設(shè)計(jì)中引入了矩陣鍵盤的應(yīng)用。矩陣鍵盤又稱行列鍵盤,它是用四條 I/O 線作為行線,四條 I/O 線作為列線組成的鍵盤。在行線和列線的每個(gè)交叉點(diǎn)上設(shè)置一個(gè)按鍵。這樣鍵盤上按鍵的個(gè)數(shù)就為 4X4 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 31頁(yè)個(gè)。這種行列式鍵盤結(jié)構(gòu)能有效地提高單片機(jī)系統(tǒng)中 I/O 口的利用率。對(duì)于矩陣鍵盤,一般由 16 個(gè)按鍵組成,在單片機(jī)中正好可以用一個(gè) P 口實(shí)現(xiàn) 16個(gè)按鍵功能,這也是在單片機(jī)系統(tǒng)中最常用的形式,4X4 矩陣鍵盤模塊硬件設(shè)計(jì)電路如圖 所示。圖 矩陣鍵盤模塊硬件設(shè)計(jì)電路圖其工作原理為當(dāng)無(wú)按鍵閉合時(shí),~ 與 ~ 之間開(kāi)路。當(dāng)有鍵閉合時(shí),與閉合鍵相連的兩條 I/O 口線之間短路。判斷有無(wú)按鍵按下的方法是:第一步,置列線 ~ 為輸入狀態(tài),從行線 ~ 輸出低電平,讀入列線數(shù)據(jù),若某一列線為低電平,則該列線上有鍵閉合。第二步,行線輪流輸出低電平,從列線 ~ 讀入數(shù)據(jù),若有某一列為低電平,則對(duì)應(yīng)行線上有鍵按下。綜合一、二兩步的結(jié)果,可確定按鍵編號(hào)。但是鍵閉合一次只能進(jìn)行一次鍵功能操作,因此須等到按鍵釋放后, 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 32頁(yè)再進(jìn)行鍵功能操作,否則按一次鍵,有可能會(huì)連續(xù)多次進(jìn)行同樣的鍵操作。在本設(shè)計(jì)中依據(jù)圖 所示的矩陣鍵盤內(nèi)部電路原理圖,以確定掃描鍵盤的方法是:行線 ~ 為輸出線,列線 ~ 為輸入線。一開(kāi)始單片機(jī)將行線(~)全部輸出低電平,此時(shí)讀入列線數(shù)據(jù),若列線全為高電平則沒(méi)有鍵按下,當(dāng)列線有出現(xiàn)低電平時(shí)調(diào)用延時(shí)程序以此來(lái)去除按鍵抖動(dòng)。延時(shí)完成后再判斷是否有低電平,如果此時(shí)讀入列線數(shù)據(jù)還是有低電平,則說(shuō)明確實(shí)有鍵按下。最后一步確定鍵值?,F(xiàn)在我們以第二行的 5 鍵為例,若按下 5 后我們應(yīng)該怎么得到這個(gè)鍵值呢?當(dāng)判斷確實(shí)有鍵按下之后,行線輪流輸出低電平,根據(jù)讀入列線的數(shù)據(jù)可以確定鍵值。首先,單片機(jī)將 輸出為低電平,其它 ~ 輸出高電平,此時(shí)讀取列線的數(shù)據(jù)全為高電平,說(shuō)明沒(méi)有在第一行有鍵按下;其次,單片機(jī)將 輸出低電平,其它、 仍為高電平,此時(shí)再來(lái)讀取列線數(shù)據(jù),發(fā)現(xiàn)列線讀到的數(shù)據(jù)有低電平,數(shù)值為 1011(0x0B) ,如果我們的鍵盤布局已經(jīng)確定,那么 0x0B 就代表 5 的值了。轉(zhuǎn)到 5 鍵功能處理子程序就可以達(dá)到目的。這樣通過(guò)輸入相應(yīng)鍵值,再轉(zhuǎn)由單片機(jī)處理相應(yīng)的鍵值子程序,以此實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)速度及轉(zhuǎn)向的設(shè)定與控制,讀取相應(yīng)鍵值送給液晶顯示屏由單片機(jī)處理顯示子程序由此實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)工作狀態(tài)的實(shí)時(shí)顯示。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 33頁(yè)4 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)軟件的整體設(shè)計(jì)本系統(tǒng)的軟件設(shè)計(jì)部分采用模塊化的設(shè)計(jì)思想,其主要分為系統(tǒng)初始化模塊、鍵盤輸入與液晶顯示程序模塊、步進(jìn)電機(jī)運(yùn)行控制程序模塊、單片機(jī)與上位機(jī)通信模塊等構(gòu)成。每個(gè)功能模塊對(duì)于整體設(shè)計(jì)都是非常重要、是不可分割的有機(jī)組成部分。程序流程圖的設(shè)計(jì)遵循自頂向下的原則,即從主體逐步細(xì)分到每一個(gè)模塊的流程。在流程圖中把設(shè)計(jì)者的控制過(guò)程梳理清楚。本系統(tǒng)設(shè)計(jì)的主流程圖如圖 所示,系統(tǒng)開(kāi)始執(zhí)行時(shí),先對(duì)各模塊初始化,當(dāng)控制切換鍵按下時(shí),由上位機(jī)輸入電機(jī)控制參數(shù)并控制電機(jī)啟停、液晶屏顯示運(yùn)行狀態(tài),實(shí)現(xiàn)遠(yuǎn)程控制;鍵不按下時(shí),電機(jī)控制參數(shù)由鍵盤按鍵輸入并在液晶屏上顯示,電機(jī)的啟停也由相應(yīng)啟停鍵控制。 圖 系統(tǒng)軟件設(shè)計(jì)的主流程圖 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 34頁(yè) 系統(tǒng)初始化模塊設(shè)計(jì) 對(duì)相應(yīng)的用于計(jì)數(shù)的狀態(tài)變量進(jìn)行初始化賦值,還有對(duì)鍵盤掃描初始化、LCD 液晶顯示的初始化、定時(shí)器的初始化和載入初始值以及包括系統(tǒng)上電時(shí)默認(rèn)在液晶屏上顯示“步進(jìn)電機(jī)控制系統(tǒng)” 、 “正等待參數(shù)的設(shè)定” 。具體流程圖如圖 所示: 圖 初始化流程圖 鍵盤輸入與液晶顯示程序模塊該模塊的液晶顯示程序流程設(shè)計(jì)任務(wù)主要是對(duì) LGM12641BS1R 內(nèi)置的 KS0108 控制器的一些底層的操作與鍵盤輸入的掃描與處理,包括對(duì)液晶顯示屏的初始化即指定頁(yè)地址和指定列地址及寫數(shù)據(jù)/命令等指令設(shè)置、清屏和判忙及讀寫顯示函數(shù)的實(shí)現(xiàn)等。 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文) 第 35頁(yè)而對(duì)于鍵盤輸入則是對(duì)端口初始化并通過(guò)編寫掃描程序得到相應(yīng)按鍵值,然后調(diào)用執(zhí)行響應(yīng)按鍵事先設(shè)置好的子程序。其具體流程圖如圖 所示。 圖 輸入與顯示流程圖 步進(jìn)電機(jī)運(yùn)行控制模塊由于步進(jìn)電機(jī)的運(yùn)行原理是要通過(guò)定時(shí)給定輸入脈沖,電機(jī)驅(qū)動(dòng)芯片接受脈沖之后電機(jī)相應(yīng)線圈通電才開(kāi)始轉(zhuǎn)動(dòng)。而最為重要的是要如何輸出脈沖頻率,可以通過(guò)延時(shí)程序定時(shí)輸出脈沖,但太為占用 CPU 資源,也可以使用定時(shí)器定時(shí)輸出脈沖頻率,占用資源少。因此在此模塊中應(yīng)用定時(shí)器定時(shí)給步進(jìn)電機(jī)輸出一定頻率的脈沖。此外,通過(guò)改變定時(shí)計(jì)數(shù)值就可以方便地改變電機(jī)運(yùn)行速度。其具體流程圖如圖 所示,給定時(shí)器初始化定時(shí) 10ms,定時(shí)時(shí)間到計(jì)數(shù)變量 count 自動(dòng)加一,當(dāng) count 值等于給定值變量 sudu 值(通過(guò)改變 sudu 值來(lái)改變電機(jī)轉(zhuǎn)速,默認(rèn)值為 5 即一檔速,二檔速值為3,三檔速值為 1。 )時(shí),若此時(shí)有啟動(dòng)鍵按下或有上位機(jī)發(fā)來(lái)啟動(dòng)信號(hào),則 X 軸電機(jī)開(kāi)始正轉(zhuǎn)運(yùn)行,即走一步,當(dāng) count 值再次等于 sudu 值時(shí),X 軸電機(jī)又走一步,如此 東北大學(xué)秦皇島分校畢業(yè)設(shè)計(jì)(論文)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1