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

正文內(nèi)容

[工程科技]基于51單片機和cpld試驗開發(fā)板的設(shè)計-文庫吧資料

2025-01-22 06:27本頁面
  

【正文】 [3]==0) {task3()。} if(task_delay[2]==0) {task2()。} if(task_delay[1]==0) {task1()。//開總中斷 while(1){//根據(jù)任務(wù)延時量是否為零選擇執(zhí)就緒任務(wù)執(zhí)行,任務(wù)執(zhí)行完成后返回再恢復(fù)設(shè)定的延時量if(task_delay[0]==0) {task0()。 //系統(tǒng)初始化,包含各子任務(wù)初始化 OS_Init_Timer0()。各任務(wù)之間不具有搶占功能,因此不用考慮堆棧與保護,初學(xué)者也能夠完全掌握。//任務(wù)延時量減一歸零,使任務(wù)就緒}} 在定時中斷服務(wù)中,執(zhí)行的任務(wù)必須很簡短,重置定時器初值,把大于 0 的任務(wù)延時量減 1,該定時 中斷作為心臟跳動,不斷進出運行,為了節(jié)省 CPU 時間,該中斷任務(wù)越簡單越好。iMAX_TASK。//每節(jié)拍對任務(wù)延時量減 1 ,減至 0 后,任務(wù)就緒。TH0=255CLOCK/TIME_PER_SEC/12/256。 //開啟定時器中斷} 這里通過宏定義,把易變參數(shù)在頭文件中定義,這樣使得程序容易修改,便于移植。 TR0 =1。 //定時器 0 工作在模式 1,16Bit 定時器模式TH0 = 255CLOCK/TIME_PER_SEC/12/256。//任務(wù)延時量初始化TMOD = (TMOD amp。iMAX_TASK。 define CLOCK 22118400 //定義時鐘晶振,單位 Hz,與硬件一致即可void OS_Init_Timer0(void) //定時器 0 初始化{uchar i。 定時中斷在這里就是心臟,依靠定時中斷完成任務(wù)延時量的修改,從而實現(xiàn)不同任務(wù)運行頻度控制。務(wù)調(diào)度過程就是對任務(wù)延時量檢測過程,只有任務(wù)延時量為零時,CPU 從其它任務(wù)中 返回后立即執(zhí)行相應(yīng)的任務(wù),由于不同任務(wù)延時量不同,從而實現(xiàn)不同任務(wù)具有不同的執(zhí)行頻度而相互不受影響。(b) 所示,定時器固定節(jié)拍中斷,該節(jié)拍需 滿足最快任務(wù)執(zhí)行頻度需要,例如 50Hz,對于按鍵掃描程序,每秒按 50 次頻度執(zhí)行即可,而 LCD1602 可以按每秒 3 次頻度執(zhí)行,實時時鐘數(shù)據(jù)讀取也只需按每秒 3 次頻度執(zhí)行一次。(a) 定時中斷的多任務(wù)輪循程序架構(gòu)流程圖 基于定時器中斷的多任務(wù)輪循架構(gòu),各子任務(wù)必須設(shè)計成主動放棄 CPU 運行模式,子任務(wù)不能設(shè)計 成死循環(huán)流程,子任務(wù)的執(zhí)行依靠主程序任務(wù)調(diào)度來實現(xiàn)。不同任務(wù),需要不同的執(zhí)行頻度(CPU 關(guān)照度),如果采用傳統(tǒng)大循環(huán)模式,各任務(wù)按一個頻度運行,顯然不適合本設(shè)計。在 主程序中,根據(jù)任務(wù)延時量判斷任務(wù)是否就緒,各任務(wù)輪循占用 CPU,由任務(wù)延時量控制任務(wù)執(zhí)行頻度及 CPU 關(guān)照度,而任務(wù)延時量又由定時器中斷控制。 多任務(wù)程序架構(gòu) 為了程序移植性好,維護性好,易裁剪,我們有必要引入多任務(wù)編程思想,就是一個系統(tǒng)由多個任務(wù) 構(gòu)成,各任務(wù)之間相對獨立。聲音提示:所有按鍵操作伴隨聲音提示,長短按鍵有不同的提示聲,按鍵手感好。 按鍵操作:長按 set 鍵進入時間設(shè)定模式,在進入設(shè)定模式以前,隨意短按任意鍵,不產(chǎn)生任何作用, 保證時間不被隨便修改;同一鍵短按鍵選擇設(shè)定對象;加減鍵長按直接退出設(shè)定模式。 LCD 顯示要根據(jù) LCD 每行 16 字符的特點設(shè)計,如上,可以顯示年、月、日、星期、時間,還有鬧鐘 設(shè)定功能。 任務(wù)解析及人性化設(shè)計要求 Mini51 板上可用硬件資源有實時時鐘芯片 DS1302 和備用電池,還有 LCD1602 顯示屏、按鍵和蜂鳴。這里結(jié)合 Mini51 板硬件資源,開發(fā) 出一款實用的實時時鐘萬年歷,特別是程序設(shè)計采用了定時中斷多任務(wù)輪詢思想,對初學(xué)者程序設(shè)計具有 重要的參考價值。 顯示接口電路3 軟件設(shè)計 由AVR單片機ATmega8實現(xiàn)USB轉(zhuǎn)串口的驅(qū)動設(shè)計和ISP(insystemprogramming)的使用 在給ATmega8燒寫固件及驅(qū)動文件時,要注意熔絲位的設(shè)置,如果設(shè)置不對,則單片機不 能正常工作。圖 (e) AD/DA接口電路 本設(shè)計有三個顯示模塊,分別是:LCD160LCD12864和 4位7段LED數(shù)碼管。圖 (d) 蜂鳴器接口電路 此外P1口可以實現(xiàn)AD/DA電路的轉(zhuǎn)換,接口電路如圖 (e)。(c) 雙聯(lián)動繼電器接口電路 蜂鳴器電路如圖 (d)所示,通過跳線與 P10 相連,不用時可以斷開。(b) LED接口電路 該板還設(shè)計了繼電器電路,通過繼電器容易實現(xiàn)弱電到強電的開關(guān)控制,(c) 所示,通過跳線P12控制,不用時請斷開,圖 中 IN4148 為繼電器線圈續(xù)流用二極管,特別重要。Mini51 板上 P1 口被 LED、蜂鳴器、繼電器、串行 AD/DA 復(fù)用, 除 LED 直接與 P1 相連外,其它都可以斷開,只在需要用時連接。DS1302 和處理器接口一般為 3 線制,RST(CE)復(fù)位腳,讀寫操作時同步時序同步用,I/O 串行數(shù)據(jù) 輸入輸出腳,SCLK 串行時鐘輸入腳。 電源電路 單片機 P1 口擴展電路 STC89C5X 系列單片機有 P4 口,因此將 ~ 分配給 DS1302,用于連接溫度傳感器DS18B20 (a)所示。圖中按鈕為常閉開關(guān),用來 斷開電源實現(xiàn)冷啟動用。由于 ISP 技術(shù)具有的上述特點,本設(shè)計采用了 ISP 技術(shù),其轉(zhuǎn)換電路如上圖。ISP 的實現(xiàn)比較簡單,通用做法是內(nèi) 部的存儲器可以由上位機的軟件通過串口來進行改 寫,對于單片機來講可以通過 SPI 或其他的串行接口 接收上位機傳來的數(shù)據(jù)并寫入存儲器中。這里串口輸出(圖中為uRxD和uTxD)為TTL電平,可以直接接單片機。ATmega8是AVR高檔單片機中內(nèi)部接口豐富、功能齊全、性能價格比最好的品種[2]。(b) 單片機與 CPLD 接口電路框圖 USB及串行接口電路 由AVR單片機ATmega8實現(xiàn)USB轉(zhuǎn)串口且實現(xiàn)ISP(insystemprogramming)功能的接口電路,。數(shù)據(jù)總 線既單片機 P0 口同CPLD一般 IO 口相連,完成數(shù)據(jù)和低 8 位地址傳送;控制總線包括單片機讀寫控制信號 Rd()和 Wr(),以及地址鎖存信號 ALE(Address Lock Enable)和高位地址線 A15()通過 CPLD 的全局信號引腳輸入,包括全局時鐘輸入:INPUT/GCLK1,全局清零輸入 INPUT/GCLRn,全局使能輸入 INPUT/OE1,INPUT/OE2,這幾個信號有專用連線與 CPLD 中每個 宏單元相連,保證信號到每個宏單元的延時相同并且延時最短。(a) 單片機與 CPLD 接口電路 Mini51 板的 CPLD 選擇 Altera 公司的 EPM7064。 器件的參數(shù)特性可參閱相關(guān)資料。STC89C51RC 有 3 個定時器/計數(shù)器,1280 字節(jié)大容量內(nèi)部數(shù)據(jù) RAM ,特別是該系列單片機支持 ISP 編程,開發(fā)無需高價的編程器,可實現(xiàn)遠程升級,在 ISP下載編程時可設(shè)置6或12 時鐘/機器周期模式,在 6 時鐘模式,比普通 51 速度快一倍。圖2 系統(tǒng)
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1