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

正文內(nèi)容

畢業(yè)論文---單片機控制直流電機速度的實時控制設(shè)計-資料下載頁

2025-06-05 08:50本頁面
  

【正文】 , 按 Ctrl+F9, 則立即進行編譯、連接和執(zhí)行 , 這三項工作是連續(xù)完成的。 下面我們試著建立一個 Turbo C名為 的源程序 (因程序很小 , 這就不畫出該程序的輪廓圖了 ): 1. 操作步驟 : (1). 將系統(tǒng)置于 DOS提示符下 : (2). 鍵入命令 : tc 使系統(tǒng)進入 Turbo C 集成開發(fā)環(huán)境 , 并建立 一個名為 的文件。這時 , 系統(tǒng) 進入 Turbo C 編輯環(huán)境。 (3). 通過鍵盤輸入程序 , 例如 : 華北水利水電學院畢業(yè)設(shè)計 第 14 頁 main() { printf(Hello, world\n)。 } 則程序進入計算機存貯器。 2. 程序存盤 為防止意外事故丟失程序 , 最好將輸入的程序存貯到磁盤中。在編輯窗口下可直接按F2 鍵或按 F10 鍵 , 再按 F 鍵進入 File 菜單項 , 再按 S 或 W 鍵將文件存盤。存盤時屏幕最底行會顯示 : saving edit file 3. 編譯一個程序 對源程 序進行編譯有兩種方法 : (1). 直接按 Alt+F9 即可。 (2). 按 F10 鍵返回主菜單 , 選擇 Compile 項 , 屏幕顯示 Compile 下拉菜單 , 從下拉菜單中選擇 Compile to .OBJ 項 , 按回車鍵。進入編譯狀態(tài)后 , 屏幕會出現(xiàn)一個編譯窗口 , 幾秒鐘后 , 屏幕顯示一閃爍信息 : Success: press any key 表示編譯成功。此時可按任意鍵 , 編譯窗口消失 , 光標返回主菜單。如果編譯時產(chǎn)生警告Warning或出錯 Error信息 , 這些具體錯誤信息會顯示在屏幕下部的信息窗中 , 必須糾 正這些錯誤。對源程序進行修改 , 重新進行編譯。 4. 運行程序 源程序經(jīng)編譯無誤后 , 可以投入運行。具體操作如下 : (1) 如果當前還在編輯狀態(tài) , 可按 Alt+R, 再選擇 RUN 項即可。 (2) 按 Ctrl+F9。 程序投入運行時 , 屏幕會出現(xiàn)一個連接窗口 , 顯示 Turbo C 正在連接和程序所需的庫函數(shù)。連接完畢后 , 會出現(xiàn)屏幕突然一閃 , 后又回到 TC 主屏幕 , 發(fā)生了什么 ? 可 按Alt+F5 查 看 , 此時屏幕被清除 , 在頂部顯示 Hello, world字樣。再按任意鍵 , 即可 又回到 TC 主屏幕。 5. 列磁盤文件目錄 現(xiàn)在 可 按 Alt+X 退出 Turbo C, 返回 DOS 提示符 , 鍵入 dir hello.*, 回車 , 則 屏幕顯示 : 華北水利水電學院畢業(yè)設(shè)計 第 15 頁 HELLO C 42 10993 10:18 HELLO OBJ 221 10993 10:22 HELLO EXE 4486 10993 10:25 ... 第一個文件 , 在 DOS提示符下鍵入 TYPE ,可在屏幕上顯示該文件的內(nèi)容。可看到該程序只有 42 個字節(jié)。 第二個 文件 是 Turbo C 編擇程序產(chǎn)生的二進制機器指令 (目標碼 ),如果用DOS 命令 TYPE 顯示該文件 , 屏幕可能會出現(xiàn)混亂的信息。 第三個文件 是 Turbo C 連接程序產(chǎn)生的實際可執(zhí)行文件。在 DOS 提示符下鍵入 HELLO 并按回車 , 屏幕將顯示 Hello, world。 這也就是編程,編輯,編譯和運行的全過程。 華北水利水電學院畢業(yè)設(shè)計 第 16 頁 第 4 章 軟件設(shè)計 本次設(shè)計軟件部分是由主程序模塊,轉(zhuǎn)速 和方向調(diào)節(jié)模塊,按鍵掃描程序模塊,延時程序模塊組成。各個模塊相對獨立,結(jié)構(gòu)清晰,降低了整體軟件設(shè)計復雜性,避免程序開發(fā)的重復勞動;易于維護和功能擴展。 程序總體流程圖 程序整體流程圖如圖 41 所示,具體代碼參照附錄二。 首先對系統(tǒng)進行初始化,檢測控制電機啟停的 是否按下,如果按下則電機啟動,如果沒有按下則繼續(xù)等待按鍵動作 。再檢測控制電機正反轉(zhuǎn)的 是否按下,如果按下則電機正轉(zhuǎn),如果沒有按下則電機反轉(zhuǎn);無論是正轉(zhuǎn)還是反轉(zhuǎn)電機轉(zhuǎn)速都與 555 定時器輸入頻率有關(guān),把頻率 F1K 的信號轉(zhuǎn)化成占空比 10%的脈沖,把 1KF3K 的信號轉(zhuǎn)化成占空比 30%的脈沖,把 3KF5K 的信號轉(zhuǎn)化成占空比 50%的脈沖,把 5KF7K 的信號轉(zhuǎn)化成占空比 70%的脈沖, 7KF9K 的信號轉(zhuǎn)化成占空比 90%的脈沖,用不同占空比寬度的脈沖控制電機轉(zhuǎn)速,分別送到顯示部分進行輸出,如果是四位 LED 可以顯示頻率,如果只有一位 LED 可以顯示轉(zhuǎn)速的檔位。再檢測 是否按下,如果按下則電機停轉(zhuǎn),如果沒有按下則去檢測 是否按下,即檢測是正轉(zhuǎn)還是反轉(zhuǎn),如此不斷循環(huán)。 華北水利水電學院畢業(yè)設(shè)計 第 17 頁 開 始 初 始 化 正轉(zhuǎn) 50% 反轉(zhuǎn) 70% 電機轉(zhuǎn)動 停 止 是否按下 是否按下 判斷 555 輸入頻率 1F3K 3F5K 5F7K 7F9K 90% 10% 30% 是否按下 F1K 顯示轉(zhuǎn)速 檔位 是 是 否 否 是 否 圖 4— 1 主程序流程圖 華北水利水電學院畢業(yè)設(shè)計 第 18 頁 軟件各子模塊設(shè)計 主程序模塊 主程序模塊的功能是對系統(tǒng)用到的存儲單元,寄存器和堆棧指針初始化。設(shè)置定時 /計數(shù)器 T0、 T1的工作方式,允許定時 /計數(shù)器 T0、 T1 計數(shù)滿中斷和外部中斷,執(zhí)行循環(huán)等待程序,等待功能選擇信號,并對各個子程序進行調(diào)用。 主程序包括調(diào)用了 PWM 加速輸出函數(shù)和反轉(zhuǎn) PWM 加速輸出函數(shù),屬于對電機方向和轉(zhuǎn)速的調(diào)節(jié)部分。是本程序的核心和主題,以此達到實現(xiàn)單片機控制直流電機轉(zhuǎn)動的目的 //**********************************************************//下面為主函數(shù) void main(void) { TMOD=0x40。 // T0 定時, T1 計數(shù) ,分別工作方式 01 TH0=(6553650000)/256。 //載入定時初值 TL0=(6553650000)%256。 EA=1。 //開總中斷 EX0=1。 //開外部中斷 0 ET0=1。 // 允許定時器 0 中斷 IT1=1。 // 設(shè)置下降沿觸發(fā)計數(shù)器中斷 TR0=1。 //開啟定時 TR1=1。 // 開啟計數(shù) while(1) { key = scan_key()。 //首先掃描鍵盤 華北水利水電學院畢業(yè)設(shè)計 第 19 頁 if((n=0)amp。amp。(n=999)) //小于 1KHz { save[0]=n/1000。a1=n%1000。save[1]=a1/100。a2=a1%100。save[2]=a2/10。save[3]=a2%10。 // 這里是轉(zhuǎn)換要顯示 Display(save)。//led 顯示此時頻率 if (key==1) //判斷正反轉(zhuǎn),選擇不同方向的 PWM { Speed_A10()。 } else { Speed_B10()。} } else if((n=1000)amp。amp。(n=2999)) //大于 1KHz,小于 3KHZ { save[0]=n/1000。a1=n%1000。save[1]=a1/100。a2=a1%100。save[2]=a2/10。save[3]=a2%10。 Display(save)。//led 顯示此時頻率 if (key==1) { Speed_A30()。 } else { Speed_B30()。} } else if((n=3000)amp。amp。(n=4999)) //大于 3KHz,小于 5KHZ { save[0]=n/1000。a1=n%1000。save[1]=a1/100。a2=a1%100。save[2]=a2/10。save[3]=a2%10。 Display(save)。//led 顯示此時頻率 if (key==1) { Speed_A50()。 } else 華北水利水電學院畢業(yè)設(shè)計 第 20 頁 { Speed_B50()。} } else if((n=5000)amp。amp。(n=6999)) //大于 5KHz,小于 7KHZ { save[0]=n/1000。a1=n%1000。save[1]=a1/100。a2=a1%100。save[2]=a2/10。save[3]=a2%10。 Display(save)。//led 顯 示此時頻率 if (key==1) { Speed_A70()。 } else { Speed_B70()。} } else if((n=7000)amp。amp。(n=9999)) //大于 7KHz,小于 10kHZ { save[0]=n/1000。a1=n%1000。save[1]=a1/100。a2=a1%100。save[2]=a2/10。save[3]=a2%10。 Display(save)。//led 顯示此時頻率 if (key==1) { Speed_A90()。 } else { Speed_B90()。} } } } 華北水利水電學院畢業(yè)設(shè)計 第 21 頁 void timer0(void) interrupt 1 using 1 //T0 定時中斷服務(wù)程序 , { bittime++。 if(bitt
點擊復制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1