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

正文內(nèi)容

基于單片機(jī)的電梯控制系統(tǒng)畢業(yè)設(shè)計(jì)(編輯修改稿)

2024-07-24 19:44 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 4所示: 表4 顯示位與DD RAM 地址的對(duì)應(yīng)關(guān)系 顯示為序號(hào)12345...40DD RAM地址HEX第一行0001020304...27第二行4041424344...674 硬件電路設(shè)計(jì)根據(jù)實(shí)用電梯的設(shè)計(jì)要求,并從各方面論證,將系統(tǒng)電路分為若干個(gè)模塊,分別是:?jiǎn)纹瑱C(jī)小系統(tǒng)電路,矩陣鍵盤電路,聲光提示及報(bào)警電路,定位平層電路,液晶顯示電路,LN298驅(qū)動(dòng)電機(jī)電路以及電源電路。LCD1602液晶顯示 4*4矩陣按鍵 51單片機(jī) LN298驅(qū)動(dòng)電路 聲光提示及報(bào)警 步進(jìn)電機(jī) 定位平層電路 電路整體系統(tǒng)其中聲光提示及報(bào)警電路采用的是二極管與蜂鳴器組成的電路。聲光提示電路,是N個(gè)發(fā)光二極管組成的,用于提示轎廂所在的電路所在方向。定位平層電路是由一個(gè)激光二極管作為光源,4個(gè)光敏電阻檢測(cè)所到樓層的信息。電路的各個(gè)部分,在下面章節(jié)中分別詳細(xì)介紹。 單片機(jī)小系統(tǒng)電路 單片機(jī)小系統(tǒng)電路控制中心采用AT89S51單片機(jī)。其中230腳懸空,不接任何電路。晶振電路、。 晶振、復(fù)位以及下載電路晶振電路由C1與C2和晶振組成,晶振給單片機(jī)提供工作信號(hào)脈沖。晶振的速率決定單片機(jī)的工作速率,C1與C2電容為10pF50pF的瓷片電容,接在晶振的兩引腳處,作用是削減偕波對(duì)電路的穩(wěn)定性的影響。復(fù)位電路采取的方式為手動(dòng)按鍵復(fù)位電路,由電解電容、電阻R1和紐扣按鍵組成。復(fù)位電路的原理是:當(dāng)單片機(jī)的復(fù)位引腳RESET出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果RST持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。每次復(fù)位后,單片機(jī)的程序都會(huì)從第一條開(kāi)始從新執(zhí)行。需要注意的是:復(fù)位電容必須是電解電容,注意不要能接反。下載電路:圖中所顯示的是下載端口的接法,該端口與單片機(jī)是通過(guò)三個(gè)數(shù)據(jù)線通信的,。還有一個(gè)接口是接單片機(jī)的RESET,用于擦寫(xiě)程序。下載器的主控芯片為PDIUSBD12,主控電路為一個(gè)固定模塊,該USB接口適合于高速數(shù)據(jù)采集系統(tǒng)與主機(jī)進(jìn)行數(shù)據(jù)通信,同時(shí),也為便攜式系統(tǒng)提供了方便、快捷和可靠的接口解決方案,由于比較復(fù)雜,所以這里不作詳細(xì)介紹。表5 單片機(jī)小系統(tǒng)電路元器件參數(shù)器件名參數(shù)數(shù)量 電機(jī)驅(qū)動(dòng)電路,驅(qū)動(dòng)芯片為L(zhǎng)N298,驅(qū)動(dòng)芯片的4腳為動(dòng)力電源接+12V電壓,9腳為邏輯電源接+5V電壓,DDDD10二極管起泄流保護(hù)作用,步進(jìn)電機(jī)是線圈式的,在從運(yùn)行狀態(tài)突然轉(zhuǎn)換到停止?fàn)顟B(tài)和從順時(shí)針狀態(tài)突然轉(zhuǎn)換到逆時(shí)針狀態(tài)時(shí)會(huì)形成很大的反向電流,因此需要泄流,反接幾個(gè)二極管即可完成此功能。J4四個(gè)插針是連接到步進(jìn)電機(jī)的輸入電極,控制步進(jìn)電機(jī)的正反轉(zhuǎn)。為了防止步進(jìn)電機(jī)的瞬間電路過(guò)大而燒壞單片機(jī),我使用了四個(gè)光耦來(lái)作隔離。在一般的隔離電源中,光耦隔離反饋是一種簡(jiǎn)單、低成本的方式。光耦接+5V電壓。圖中UUUU4為隔離光耦,UU6為備用光耦。電路還設(shè)置了發(fā)光二極管作為指示光耦的運(yùn)行情況。 電機(jī)驅(qū)動(dòng)電路 液晶顯示電路 液晶顯示電路,電路中顯示采用LCD1602液晶顯示器,數(shù)據(jù)端口DB0~DB7接單片機(jī)P0口,高電平有效。R/為讀寫(xiě)端,高電平時(shí)為讀操作,低電平為寫(xiě)操作。,高電平時(shí)選擇數(shù)據(jù)寄存器,低電平時(shí)選擇指令寄存器。(可調(diào)范圍是:0~50K?)是用于改變VO口的電壓,調(diào)節(jié)液晶顯示的對(duì)比度和亮度。15腳為背光正極,16腳為背光負(fù)極,為了防止出現(xiàn)“鬼影”現(xiàn)象,15腳接正極,16腳接地。 4*4矩陣鍵盤電路。按鍵接單片機(jī)的P1端口,其中行接低四位,列接高四位。按鍵調(diào)用時(shí),先給高四位的電平與0xf0相與,若沒(méi)有有鍵按下就會(huì)返回0xf0值,若有鍵按下就可以得到按鍵響應(yīng)所在的列,若然后逐次對(duì)列進(jìn)行掃描,判斷出所在的列侯就可以判斷出按鍵響應(yīng)值。 4*4矩陣按鍵電路 定位平層電路定位平層電路由激光二極管與冠名電阻組成的檢測(cè)電路,通過(guò)將檢測(cè)來(lái)的信號(hào)傳輸?shù)絃M339比較電路,與參考電壓進(jìn)行比較最后得到了一個(gè)邏輯電平(1或0),再通過(guò)單片機(jī)來(lái)處理,判斷轎廂所在位置,電梯模型中,光敏電阻裝置在豎井上,并對(duì)應(yīng)每個(gè)樓層位置上,激光二極管裝置在轎廂外部邊緣,通過(guò)測(cè)量,使激光二極管與光敏電阻對(duì)位時(shí),剛好到達(dá)一個(gè)樓層。其中+VCC為5V電壓。由于LM339的輸出端相當(dāng)于一只不接集電極電阻的晶體三極管,所以在使用的時(shí)候,輸出端到正電源之間須接一個(gè)電阻(稱為上拉電阻,阻值范圍:3~15K)。當(dāng)輸出晶體三極管截止時(shí),它的集電極電壓基本上取決于上拉電阻與負(fù)載的值,所以選不同阻值的上拉電阻會(huì)影響輸出端高電位的值,圖中其中R2為上拉電阻,根據(jù)實(shí)際情況,R1值為10K。R3為光敏電阻(為了讓光敏電阻不受外部光源的影響,制作時(shí)候,需要加個(gè)黑色的塑膠套)。當(dāng)有光照射的情況下R3=268?,無(wú)光照射的情況下R3=180K?。R2為分壓電阻,阻值為10K。R6為激光二極管,當(dāng)激光二級(jí)管照射到R3的表面時(shí),表明到達(dá)一個(gè)樓層,R3阻值達(dá)到最低為268?,7腳電壓=5*268/10000=(V);當(dāng)激光二級(jí)管沒(méi)有照射到R3的表面時(shí),表明在樓層的其他位置,R3阻值達(dá)到最大為180K?,7腳電壓=5*180000/19000=(V)。參考電壓,所以輸出高電平。6腳為參考電壓值,當(dāng)大于6腳時(shí),比較器輸出高電平,反之輸出低電平。 定位平層電路 樓層提示及聲光報(bào)警電路樓層提示電路非常簡(jiǎn)單,由幾個(gè)發(fā)光二極管組成。其中RRRRR1R1R1R15電阻為限流電阻,它們的阻值均為10K,保護(hù)發(fā)光二極管,防止電流過(guò)大燒壞發(fā)光二極管。每個(gè)樓層均有兩個(gè)發(fā)光二極管。發(fā)光二極管是用于提示樓層所在的方位,~。例如:當(dāng)轎廂在二樓時(shí),三樓的兩個(gè)發(fā)光二極管,其中表示方位為上的二極管滅,表示方位為下的二極管亮。其他樓層原理也相同。聲光報(bào)警電路由一個(gè)蜂鳴器與一個(gè)發(fā)光二極管組成。蜂鳴器俗稱喇叭,是廣泛應(yīng)用于各種電子產(chǎn)品的一種元器件,它用于提示、報(bào)警、音樂(lè)等許多應(yīng)用場(chǎng)合。蜂鳴器與家用電器上面的喇叭在用法上也有相似的地方,通常工作電流比較大,電路上的TTL電平基本上驅(qū)動(dòng)不了蜂鳴器,需要增加一個(gè)電流放大的電路才可以,若直接接單片機(jī)很難驅(qū)動(dòng)蜂鳴器發(fā)出聲音,所以增加了一個(gè)三極管Q1來(lái)增加通過(guò)蜂鳴器的電流。蜂鳴器的正極性的一端聯(lián)接到5V電源上面,另一端聯(lián)接到三極管的集電極,,三極管導(dǎo)通,發(fā)光二極管亮,這樣蜂鳴器的電流形成回路,發(fā)出聲音。,三極管截止,發(fā)光二極管滅,蜂鳴器不發(fā)出聲音。 外部樓層提示電路 聲光報(bào)警電路 電源電路電源是各個(gè)模塊工作的能量,各個(gè)模塊工作電壓不盡相同,而且提供合適的電壓值才能使各個(gè)模塊工作在最穩(wěn)定的狀態(tài)。單片機(jī)、蜂鳴器以及LN298驅(qū)動(dòng)電路需要5V供電,步進(jìn)電機(jī)需要9V和12V供電。因此需要做能提供5V、9V、12V的電源。首先用變壓器將市電降到24V,再引三路分別接到有整流、濾波、穩(wěn)壓的電路中,即可得到直流5V、8V、12V電源。 電源電路5 軟件設(shè)計(jì)本系統(tǒng)是以單片機(jī)的高級(jí)語(yǔ)言C語(yǔ)言來(lái)進(jìn)行軟件設(shè)計(jì),使指令的執(zhí)行速度快,節(jié)省存儲(chǔ)空間。為了便于擴(kuò)展和更改,軟件的設(shè)計(jì)采用模塊化結(jié)構(gòu),使程序設(shè)計(jì)的邏輯關(guān)系更加簡(jiǎn)潔明了。軟件設(shè)計(jì)有兩種方法:一種是自上而下,逐步細(xì)化;一種是自下而上,先設(shè)計(jì)出每一個(gè)具體的模塊(子程序),然后再慢慢擴(kuò)大,最后組成一個(gè)系統(tǒng)。在本設(shè)計(jì)中我用自下而上的設(shè)計(jì)方法。本設(shè)計(jì)的主程序總共調(diào)用了4個(gè)子程序,分別是液晶顯示程序、鍵盤掃描程序、樓層檢測(cè)程序、步進(jìn)電機(jī)方向及速度變換子程序、樓層提示及報(bào)警程序。在實(shí)際應(yīng)用中,若電梯處于閑置狀態(tài)時(shí),也就是說(shuō)只有一人用電梯,電梯僅響應(yīng)一個(gè)呼叫,這個(gè)軟件實(shí)現(xiàn)就比較容易。但是,對(duì)于多層樓層的實(shí)際情況往往比這復(fù)雜的多,要考慮到很多人同時(shí)使用電梯的情況,有可能會(huì)有其他不同樓層的人按下不同的按鍵(上行或者下行)的情況發(fā)生。所以得為電梯設(shè)定好一個(gè)不會(huì)發(fā)生混亂的的優(yōu)先級(jí)規(guī)則,讓系統(tǒng)根據(jù)遵循這一優(yōu)先規(guī)則,這個(gè)規(guī)則也是本設(shè)計(jì)最大的一個(gè)難點(diǎn)。本設(shè)計(jì)中我設(shè)定的規(guī)則是:當(dāng)電梯向上運(yùn)行時(shí),優(yōu)先處理向上的召喚,對(duì)應(yīng)向下運(yùn)行的召喚先用寄存器存儲(chǔ),當(dāng)電梯向上運(yùn)行到達(dá)一個(gè)樓層時(shí),先檢測(cè)寄存器里面的召喚,若沒(méi)有向上的召喚時(shí),則可以運(yùn)行向下的召喚。當(dāng)電梯正在運(yùn)行到某一樓層的過(guò)程中,為了更好的實(shí)現(xiàn)電梯的速度變換,減小電梯制作的成本,若此時(shí)有途中要經(jīng)過(guò)的樓層有召喚時(shí),也要等到完成正在執(zhí)行的響應(yīng)否再執(zhí)行。并且,若在上行過(guò)程中,也有人在某層按的是上行按鍵,但是電梯此時(shí)已經(jīng)走過(guò)了該層,那么電梯也絕對(duì)不會(huì)再選擇先下行接他。向下運(yùn)行時(shí),召喚的優(yōu)先級(jí)與向上的同理,這里不再累贅。由AT89S51單片機(jī)為控制核心,先執(zhí)行液晶顯示的初始化程序,就開(kāi)中斷,每隔10ms掃描一次按鍵及樓層樓層檢測(cè)模塊,看是否有召喚和轎廂所在位置,若有召喚則讀取寄存器寄存的召喚數(shù)據(jù),然后調(diào)用速度變換子程序,當(dāng)檢測(cè)到轎廂狀態(tài)(位置及運(yùn)動(dòng)狀態(tài))有變化時(shí),刷新顯示內(nèi)容。系統(tǒng)的各個(gè)子程序分別在以下章節(jié)作詳細(xì)介紹。 開(kāi)始 初始化 液晶顯示 掃描按鍵 樓層檢測(cè) 速度變換程序 主控流程圖 液晶顯示模塊。 返回程序入口是否判斷是否完成顯示初始化寫(xiě)入顯示設(shè)置命令延時(shí)1ms寫(xiě)入顯示數(shù)據(jù)檢測(cè)忙信號(hào)延時(shí)1ms否是判斷E=1? 獲得顯示地址 顯示流程圖LCD1602在接口方面,有 8 條數(shù)據(jù),三條控線。與微處理器或微控制相連,通過(guò)送入數(shù)據(jù)和指令,使模塊正常工作,其中8調(diào)數(shù)據(jù)線接單片機(jī)的P0端口,讀數(shù)據(jù)。,LCD1602的顯示實(shí)現(xiàn)需要通過(guò)四個(gè)過(guò)程:檢測(cè)忙碌階段,寫(xiě)入指令階段,讀取數(shù)據(jù)階段,寫(xiě)數(shù)據(jù)階段。軟件編程中,關(guān)于這四個(gè)過(guò)程的子程序,我直接調(diào)用過(guò)來(lái)的。顯示前進(jìn)行初始化,即復(fù)位過(guò)程,分為四個(gè)階段:不檢測(cè)忙碌狀態(tài)(指令:0x38);開(kāi)顯示屏(指令:0x0c);光標(biāo)移動(dòng)設(shè)置(指令:0x06)。刷新屏(指令:0x01)。源程序如下:include define uchar unsigned chardefine uint unsigned intsbit rs=P2^7。 //sbit rw=P2^6。 // sbit lcden=P2^5。//uchar code table[]=Direction: $ 。//顯示初始化uchar table1[]=Location: 1 。bit lcd_bz() //測(cè)試LCD忙碌狀態(tài){ bit result。 rs = 0。 rw = 1。 lcden = 1。//忙標(biāo)志和地址計(jì)數(shù)器讀出 DelayMs(5)。 result = (bit)(P0 amp。 0x80)。//將P0數(shù)據(jù)初始化 lcden = 0。 return result。}void write_(uchar ) //寫(xiě)指令{ while(lcd_bz())。//檢測(cè)忙狀態(tài) rs=0。 rw=0。 lcden=0。//指令寄存器寫(xiě)入 P0=。 DelayMs(5)。 lcden=1。 DelayMs(5)。 lcden=0。 }void write_date(uchar date) //寫(xiě)數(shù)據(jù){ while(lcd_bz())。 rs=1。 rw=0。 lcden=0。//數(shù)據(jù)寄存器寫(xiě)入 P0=date。 DelayMs(5)。 lcden=1。 DelayMs(5)。 lcden=0。 }void init() //初始化{ uchar num。 lcden=0。 write_(0x38)。//不檢測(cè)忙信號(hào) write_(0x0c)。//開(kāi)屏 write_(0x06)。//光標(biāo)移動(dòng)設(shè)置 write_(0x01)。//清屏 write_(0x80)。//定位第一行 for(num=0。num15。num++) //第一排顯示日期 { write_date(table[num])。 } write_(0x80+0x40+0)。 //第二排顯示時(shí)鐘 write_date(aa)。 } 矩陣按鍵掃描模塊 子程序入口將P1端口高位置一(列)判斷P1端口高位是否仍為一否是 延時(shí)去抖動(dòng)判斷P1端口高位是否仍為一否是 定位響應(yīng)所在列第一是否仍有鍵按下否第二行是否仍有鍵按下否是第三行是
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1