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

正文內(nèi)容

基于stc89c52單片機(jī)無刷直流電動機(jī)智能控制器系統(tǒng)硬件電路控制軟件的設(shè)計(編輯修改稿)

2025-07-24 18:52 本頁面
 

【文章內(nèi)容簡介】 SFET開關(guān)管VVV5恢復(fù)正常的通斷順序。如此下去,電流被限制在U0/R15上下,達(dá)到限流的目的。圖415 過流保護(hù)電路系統(tǒng)主要應(yīng)用軟件簡介Keil C 單片機(jī)開發(fā)軟件簡介Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。 STCISP 是由智峰工作室提供的公共免費下載工具,是針對STC系列單片機(jī)而設(shè)計的,可下載STC89系列、12C2052系列和12C5410等系列的STC單片機(jī),使用簡便,下載程序只需一根串口線即可,現(xiàn)已被廣泛使用。protelDXP 繪制電路板軟件簡介protel設(shè)計系統(tǒng)是世界上第一套將EDA設(shè)計環(huán)境引入PC機(jī)Windows環(huán)境的EDA開發(fā)工具,該軟件功能強(qiáng)大,人機(jī)界面友好,易學(xué)易用,實用該軟件設(shè)計者可以容易地設(shè)計電路原理圖、畫元件圖、設(shè)計電路板圖、畫元件封裝圖和電路仿真。protelDXP是繼protel99SE之后的以新版本,其功能更加強(qiáng)大,使用戶操作更為方便。5 系統(tǒng)軟件設(shè)計 軟件系統(tǒng)概述單片機(jī)測控系統(tǒng)的軟件設(shè)計和一般在現(xiàn)成系統(tǒng)機(jī)上設(shè)計一個應(yīng)用軟件有所不同,后者是在系統(tǒng)機(jī)器操作系統(tǒng)等支持下的純軟件設(shè)計,而單片機(jī)的軟件設(shè)計是在裸機(jī)條件下開始的,而且隨系統(tǒng)的不同而不同。對于單片機(jī)軟件系統(tǒng)的設(shè)計,不論程序的大小,在軟件設(shè)計過程中采用的都是模塊化思想。此系統(tǒng)軟件設(shè)計要求中,要實現(xiàn)的功能有正轉(zhuǎn),反轉(zhuǎn),速度顯示,工作指示,停止(包括急停)等方面。有了基本模塊思路后,針對各部分進(jìn)行分割,細(xì)分成各子程序合成,最后進(jìn)行整合,形成一個完整的軟件控制系統(tǒng)。 系統(tǒng)程序總體設(shè)計考慮此控制程序不是很復(fù)雜,為了不影響程序執(zhí)行速度,程序全部采用匯編語言編寫。單片機(jī)控制應(yīng)用系統(tǒng)的硬件確定后,接下來就要進(jìn)行軟件的設(shè)計,設(shè)計的主要內(nèi)容是應(yīng)用系統(tǒng)的主程序和各應(yīng)用模塊程序。整個系統(tǒng)是在應(yīng)用程序的控制下進(jìn)行的,應(yīng)用程序由主程序和各個子程序構(gòu)成。 此系統(tǒng)采用結(jié)構(gòu)化程序設(shè)計方法(對于較大的系統(tǒng),更應(yīng)如此)。這是一種自上而下的編程方法,即把總的控制過程逐步細(xì)分,分化成一個個的子過程。一直分化到所導(dǎo)出的子過程能直接用編程語言來實現(xiàn)時為止。這種設(shè)計思路把注意力集中到編程中最容易出錯的一點,即程序的邏輯結(jié)構(gòu),只要總體邏輯結(jié)構(gòu)是正確的,再復(fù)雜的程序也可以按劃分出來的邏輯功能模塊逐個設(shè)計出來。有了這一設(shè)計思想,下來的工作就是編寫各模塊子代碼,最后再整合。 軟件流程圖與部分代碼 主程序設(shè)計主程序流程圖如下圖51所示:圖51 主程序流程圖 模塊子程序設(shè)計1)中斷子程序中斷入口重新裝入定時器初值(30H)+1送30H30H送寄存器A清零30H,調(diào)用Z_HUAN子程序,清零速度寄存器(SP_L,SP_H)開中斷A=14H ?中斷返回NY圖 52 中斷子程序流程圖2)正、反轉(zhuǎn)控制模塊子程序正/反轉(zhuǎn)程序入口滅告警指示燈,置正反轉(zhuǎn)標(biāo)志延時10MS按鍵按下?設(shè)定正轉(zhuǎn)/反轉(zhuǎn)啟動速度SD速度寄存器加1控制字送P1口,根據(jù)位置信息送相應(yīng)的控制字表號根據(jù)相對應(yīng)的表地址,查正轉(zhuǎn)/反轉(zhuǎn)表表號值送A調(diào)用檢測電機(jī)當(dāng)前位置子程序SD值送(31H)A=05H ?調(diào)用10MS延時程序查詢有無加速、急停、停止命令31H減1值送31H31H=0 ?返回NYNYY圖53 正反轉(zhuǎn)子程序流程圖3) 速度顯示模塊子程序開始速度寄存器值倍乘30調(diào)數(shù)值轉(zhuǎn)換程序十六進(jìn)制轉(zhuǎn)換為十進(jìn)制分別將轉(zhuǎn)換后的BCD碼,個位(40H),十位(41H),百位(42H),千位(43H)分離調(diào)動態(tài)顯示程序返回圖54 速度顯示子程序流程圖4)停止子程序流程圖開始延時10MS,判斷停止按鍵是否的確按下=1 ?Z_B=1 ?F_B=1 ?Z_TAB值送DPTR直接停止F_TAB值送DPTR正轉(zhuǎn)緩慢減速停止返回反轉(zhuǎn)緩慢減速停止退出NYYNYN圖55 停止子程序流程圖5)加減速功能代碼J_SU:JNB ,EXIT1 。判斷加速按鍵是否按下ACALL DELAY 。延時10MS,判斷按鍵是否的確按下JNB ,EXIT1 。按鍵未按下,返回原工作程序DEC SDDEC SD 。設(shè)定加速度系數(shù)。INC SD 。INC SD 。設(shè)定減速度系數(shù)EXIT1:RET6)急停功能代碼J_TING:ACALL DISPLAY 。延時10MS,判斷按鍵是否的確按下JNB ,G_K0 。停止按鍵未按下,返回原工作程序CLR 。亮告警指示燈CLR 。AH管截止CLR 。BH管截止CLR 。CH管截止SETB 。AL管截止SETB 。BL管截止SETB 。CL管截止JMP GONGZUO 。返回工作查詢G_K0:LJMP G_KONGRET7)測速子代碼C_SU: 。電機(jī)轉(zhuǎn)速測量程序,最高顯示值9999R/MINC SP_LMOV A,SP_LCJNE A,64H,C_0MOV SP_L,0INC SP_HMOV A,SP_HCJNE A,64H,C_0MOV SP_H,00HC_0:RET8) 霍爾信號查詢子程序 CHA_H_R:MOV A,P3 。,H1,H2SWAP A 。高四位與低四位互換ANL A,00000111B 。讀取霍爾信號MOV H_R,A 。霍爾信號送霍爾值存儲器RET9)數(shù)值轉(zhuǎn)換子程序(十六進(jìn)制轉(zhuǎn)換為十進(jìn)制BCD碼)Z_HUAN: 。十六進(jìn)制數(shù)轉(zhuǎn)換未BCD碼,送動態(tài)顯示寄存器40H43HCALL MULD 。調(diào)用乘法程序MOV B,0AHMOV A,SP_L 。十六進(jìn)制轉(zhuǎn)換為十進(jìn)制(十位,個位)DIV ABMOV 40H,BMOV B,0AHDIV ABMOV 41H,BADD A,SP_H 。十六進(jìn)制轉(zhuǎn)換為十進(jìn)制(千位,百位)MOV B,0AHDIV ABMOV 42H,BMOV 43H,ARET10)十六位二進(jìn)制數(shù)乘法子程序MULD: 。速度處理程序(倍乘30),將速度轉(zhuǎn)換到R/MMOV A,SP_LMOV B,30MUL ABMOV R4,BMOV SP_L,AMOV A,SP_HMOV B,30MUL ABADD A,R4MOV SP_H,ARET6系統(tǒng)調(diào)試 硬件調(diào)試 首先在焊接前檢查元件是否有壞的(很容易檢查的),確認(rèn)無誤后開始安裝元件,焊接時一定要做到細(xì)心認(rèn)真,必須避免假焊,以上兩步完成后,才開始進(jìn)入硬件調(diào)試。1)硬件靜態(tài)的調(diào)試 (1)排除邏輯故障   這類故障往往由于設(shè)計和加工制板過程中工藝性錯誤所造成的。主要包括錯線、開路、短路。排除的方法是首先將加工的印制板認(rèn)真對照原理圖,看兩者是否一致。應(yīng)特別注意電源系統(tǒng)檢查,以防止電源短路和極性錯誤,并重點檢查系統(tǒng)總線(地址總線、數(shù)據(jù)總線和控制總線)是否存在相互之間短路或與其它信號線路短路。必要時利用數(shù)字萬用表的短路測試功能,可以縮短排錯時間。 (2)排除元器件失效   造成這類錯誤的原因有兩個:一個是元器件買來時就已壞了;另一個是由于安裝錯誤,造成器件燒壞??梢圆扇z查元器件與設(shè)計要求的型號、規(guī)格和安裝是否一致。在保證安裝無誤后,用替換方法排除錯誤。 (3)排除電源故障 在通電前,一定要檢查電源電壓的幅值和極性,否則很容易造成集成塊損壞。加電后檢查各插件上引腳的電位,一般先檢查VCC與GND之間電位,若在5V~4.8V之間屬正常。若有高壓,聯(lián)機(jī)仿真器調(diào)試時,將會損壞仿真器等,有時會使應(yīng)用系統(tǒng)中的集成塊發(fā)熱損壞。2)單片機(jī)測試(1)測試單片機(jī)I/O口執(zhí)行一條簡單指令,外接是8個發(fā)光二極管,通過二極管的發(fā)光觀察I/O口是否完好。MOV P1/P2,55H;MOV P1/P2,0AAH;(2)測試單片機(jī)中斷系統(tǒng) 。ORG 0000HLJMP MAIN 。轉(zhuǎn)到主程序ORG 001BHlJMP INT_T1 。轉(zhuǎn)到中斷程序ORG 0030HMOV TMOD,10H 。定時器工作方式1(十六位計數(shù)器)MOV TH1,3CH 。定時100MS(晶振6MHZ)MOV TL1,0B0HMOV IE,88H 。允許T1中斷MOV 30H,00H 。清零時間計數(shù)器SETB TR1 。開中斷SETB LJMP $ 。轉(zhuǎn)到工作命令查詢INT_T1:MOV TH1,3CH 。重新裝載定時器值,定時100MSMOV TL1,0B0HINC 30H 。中斷計數(shù)器MOV A,30HCJNE A,0AH,L1 。2S定時CLR MOV 30H,00HL1:SETB TR1 。重新開中斷RETI 。中斷返回 軟件調(diào)試軟件主要使用的Keil C編譯軟件,下面就將調(diào)試過程中遇到的問題和調(diào)試經(jīng)驗做一簡要說明:1)、由于Keil C對中文支持不太好,因而會出現(xiàn)顯示的光標(biāo)與光標(biāo)實際所在不一致的現(xiàn)象,這會對修改中文注釋造成影響。在Windows2000下面,我們可以把字體設(shè)置為Courier,這樣就可以顯示正常。WindowsXP系統(tǒng)基本不會出現(xiàn)此問題。2)、當(dāng)使用有片外內(nèi)存的MCU的時候,肯定要設(shè)置標(biāo)志位,并且編譯方式要選擇大模式,否則會出錯。3)、當(dāng)使用Keil C跟蹤程序運行狀態(tài)的時候,要把引起Warning的語句屏蔽,否則有可能跟蹤語句的時候會出錯。4)、當(dāng)編程涉及到有關(guān)通信,時序是很重要的。拉高管腳的執(zhí)行速度遠(yuǎn)遠(yuǎn)比檢查管腳電平的要快。5)、在等待管腳電平變化的時候,我們需要設(shè)置好超時處理,否則程序就會因為一個沒有預(yù)計的錯誤而死鎖。6)、能用C語言實現(xiàn)的地方,盡量不要用匯編,尤其在算法的實現(xiàn),用匯編是晦澀難懂。7)、所有函數(shù)之間的相關(guān)性越低越有利于以后功能的擴(kuò)展。8)、調(diào)試程序時,首先要確保每個子程序編程正確,然后再進(jìn)行整體組合調(diào)試。編程時每個子程序應(yīng)盡量注明呼入呼出系數(shù)(特別時用匯編編程),否則單個子程序運行正確,整合后結(jié)果運行就會出錯,如果不注明呼入呼出系數(shù),查錯時很困難的。 軟硬聯(lián)調(diào)硬件和軟件單獨調(diào)試成功后,就要開始軟硬聯(lián)調(diào),這是最關(guān)鍵的部分,不過開始單獨調(diào)試時一些基本的故障已經(jīng)排除,所以軟硬聯(lián)調(diào)起來也沒遇到太大的問題。由于在硬件設(shè)計的時候,電路板各個模塊之間是斷開的,組合時用跳子進(jìn)行連接,這就給調(diào)試提供了方便。調(diào)試時采取的是先單獨模塊進(jìn)行調(diào)試,最后整體調(diào)試。各模塊的程序代碼,對應(yīng)相應(yīng)的硬件模塊進(jìn)行測試,各個模塊測試成功后,將整個系統(tǒng)聯(lián)合起來進(jìn)行系統(tǒng)整體調(diào)試,由于各個模塊電路調(diào)試已經(jīng)完全成功,所以整個系統(tǒng)調(diào)試也就很方便,只是要注意各個模塊之間的干擾。系統(tǒng)要
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1