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

正文內(nèi)容

基于單片機(jī)的專用定時器設(shè)計(編輯修改稿)

2024-12-16 02:49 本頁面
 

【文章內(nèi)容簡介】 ,ULN2803 相當(dāng)于一個反相驅(qū)動器,其內(nèi)部具體結(jié)構(gòu)如圖 25: R 1R 3R 2圖 25 ULN2803 的內(nèi)部結(jié)構(gòu)ULN2803 的特點(diǎn):1.最大驅(qū)動電流可達(dá) 500mA2.反向驅(qū)動河南科技大學(xué)本科畢業(yè)設(shè)計(論文)123.需要限流電阻,數(shù)碼管越多,限流電阻的阻值越小167。 單片機(jī)外圍接口電路設(shè)計167。 發(fā)光二極管發(fā)光二極管咋兩端的電壓差超出其導(dǎo)通壓降時開始工作,發(fā)光二極管的導(dǎo)通壓降一般為 ~。此外,工作電流要滿足二極管的工作電流,滿足電流和電壓的要求,發(fā)光二極管就可以發(fā)光了。單片機(jī)系統(tǒng)中往往是數(shù)字信號,其電源不是 5V 就是 0V,所以只要將二極管的正負(fù)極和電源對應(yīng)上就可以了。在發(fā)光二極管前面要接一個電阻,這個電阻的作用在于限制二極管的電流,從而達(dá)到減少功耗或者滿足端口對最大電流的限制。一般二極管的點(diǎn)亮電流為 5mA ~ 10mA,在 5V 電源驅(qū)動時,一般多采用470Ω 限流電阻,在該設(shè)計中選用 510Ω 電阻,這樣既不會超出單片機(jī)的 I/O 口最大限流,二極管也比較亮。167。 鍵盤模塊按鍵使用上拉電阻方式接入單片機(jī)。未按下時對單片機(jī)輸入一個高電平,按下后輸入一個低電平。它在這個設(shè)計中的作用是調(diào)節(jié) TT2 和 T3 的大小。鍵的閉合與否,反映在行線輸出電壓上就是呈現(xiàn)出高電平或低電平,如果高電平表示斷開的話,那么低電平則表示閉合,所以通過對行線電平的高低狀態(tài)的檢測,便可以確認(rèn)按鍵按下與否,為了確保 CPU 對一次按鍵動作只確認(rèn)一次按鍵,必須消除抖動的影響。167。 繼電器繼電器在這個設(shè)計中作為輸出設(shè)備,既是輸出該定時時間的中轉(zhuǎn)站。繼電器室一個感性元件,感性元件在使用過程中要加一個保護(hù)二極管,然而在上圖中并沒有這個二極管,不是改圖設(shè)計不合理,而是在該設(shè)計中使用的驅(qū)動芯片ULN2803 中已經(jīng)帶有這個保護(hù)作用的二極管了。單片機(jī)外圍接口電路設(shè)計如圖 26:河南科技大學(xué)本科畢業(yè)設(shè)計(論文)13R10RES2 R12RES2R8RES2D5LED D4LED D3LED D2LED D1LEDC3CAPC2CAPR11RES2R1RES2R9RES2S6SWPB S5SWPB S2SWPB S1SWPBD6DIODE123J3CON31234J2CON412J1CON2R2RES2R3RES2R4RES2R5RES2R6RES2S4SWPB S3SWPBX1CRYSTALC4ELECTRO1K1RELAYSPDTC110UFR7RES2B1 B2 B3 B4 B5VCCVCCVCCTXDRXDGND C5CAP VCCGNDVCCGND123J4CON3K2RELAYSPDT123J5CON3K3RELAYSPDTVCC 38 35 32EA/VPP 31ALE 30PSEN 29 26 23 21 RST9 XTAL218XTAL119 VSS20U1AT89C52GNDGNDB1B2B3B4B5IN11 IN22 IN33IN44 IN55 IN66IN77 IN88 COM9OUT1 18OUT2 17OUT3 16OUT4 15OUT5 14OUT6 13OUT7 12OUT8 1DIODE 10U2GNDVCCVCCVCCVCCRXDTXDS4S5S6S6 S5 S4 S3 S2 S1圖 26 單片機(jī)外圍接口電路河南科技大學(xué)本科畢業(yè)設(shè)計(論文)14第 3 章 軟件設(shè)計首先介紹程序中的硬件功能,在進(jìn)行發(fā)光二極管指示程序、按鍵掃描程序和數(shù)碼167。 程序中硬件功能介紹167。 電路原理和器件選擇1.AT89C52:單片機(jī),控制 LED 的數(shù)據(jù)顯示。2.LED:兩個一位的 7 段碼 LED,用于顯示單片機(jī)的數(shù)據(jù)。3.74LS573:鎖存器。4.ULN2803:驅(qū)動 LED,相當(dāng)于反相器。5.按鍵 S3: S3=1 時,時間正常運(yùn)行, S3=0 時開始控制三個時間中的一個,再次讓 S3=0 時時間又開始正常運(yùn)行。6.按鍵 S2:當(dāng) S2=0 時,每按一次表示時間自減一,當(dāng) S2=1 時時間不變。7.按鍵 S1:當(dāng) S1=0 時,每按一次表示時間自增一,當(dāng) S1=1 時時間不變。8.D1 ~ D5:發(fā)光二極管。167。 地址分配和連接1.、:和 2803 驅(qū)動電路確定字位口的地址 0x80、0x40。2.D0 ~ D7:單片機(jī)的數(shù)據(jù)總線,LED 的顯示內(nèi)容通過數(shù)據(jù)總線從單片機(jī)傳到 LED167。 功能簡介LED 顯示模塊與單片機(jī)連接中,對 LED 顯示模塊讀寫和字位、字段通道的選擇是通過單片機(jī)的 、 口完成的。按鍵 S1 ~ S3 完成按鍵的復(fù)位定時時間的自增和自減功能。而發(fā)光二極管 D1 ~ D5 則反映了定時時間的不同亮滅就不同。河南科技大學(xué)本科畢業(yè)設(shè)計(論文)15167。 定時器主程序主程序要實(shí)現(xiàn)的功能主要有:1.1 ~ 99s 的時間調(diào)整。2.1 ~99min 的時間調(diào)整。3.時間的數(shù)碼顯示。主程序流程圖如圖 31:定時器初始化開始設(shè)定初值Reload()鍵掃描LED 二極管顯示結(jié)束KEY_ST=1?圖 31 主程序流程圖部分關(guān)鍵變量的說明如表 31 所示:表 31 部分關(guān)鍵變量說明河南科技大學(xué)本科畢業(yè)設(shè)計(論文)16變量 說明Buff[2] 顯示緩沖區(qū)( 依次為低位、高位)sec05二極管和繼電器狀態(tài)變量sec05=2 時,定時在 time3,sec05=1 時,定時在 time2,sec05=0 時,定時在 time1。Index 標(biāo)示當(dāng)前顯示的數(shù)碼管和緩沖區(qū)的偏移量TableLED[] 共陰極字型編碼表Delay() 延時變量sec 剩余時間變量變量和端口的定義如表 32 所示:表 32 變量和端口的定義變量 說明S1 ~ S3 定義 89c52 的 ~ 作為按鍵的輸入管腳L0 ~ L4 定義 89c52 的 ~ 作為發(fā)光二極管的輸入管腳167。 發(fā)光二極管指示程序發(fā)光二極管的亮滅指示了此刻數(shù)碼管顯示的時間是三個定時時間中的哪一個。發(fā)光二極管指示程序流主要內(nèi)容為當(dāng)顯示時間為 T1 時,則發(fā)光二極管L0、L3 亮,當(dāng)顯示時間為 T2 時,則發(fā)光二極管 LL3 亮,當(dāng)時間為 T3 時,則發(fā)光二極管 LL5 亮。流程圖如圖 32 所示:河南科技大學(xué)本科畢業(yè)設(shè)計(論文)17LL3 亮L0、L3 亮L L4 亮T=time1?T=time2?T三個數(shù)之和?結(jié)束開始YYYYNNNNT=time3?圖 32 發(fā)光二極管指示流程圖167。 鍵掃描程序通過三個鍵 KEY_ST、KEY_UP、KEY_DW 及按鍵 SSS1 ,來實(shí)現(xiàn)三個定時時間即 timetimetime3 的自增和自增及復(fù)位功能。按鍵掃描程序流程如圖 33:河南科技大學(xué)本科畢業(yè)設(shè)計(論文)18延時時間自加 1LED 顯示LED 顯示時間自減 1KEY_ST 按下?KEY_DW 按下?KEY_SE 按下?KEY_UP 按下?結(jié)束開始YNNNYYY圖 33 按鍵掃描程序流程圖在該程序的設(shè)計中要注意按鍵的去抖動程序。按鍵本身是機(jī)械開關(guān),由于機(jī)械觸點(diǎn)的彈性以及電壓突跳等原因,在觸點(diǎn)閉合或者是斷開的瞬間會出現(xiàn)電壓抖河南科技大學(xué)本科畢業(yè)設(shè)計(論文)19動的情況。在發(fā)生抖動時單片機(jī)很難判別此時按鍵是否按下,為此,就需要進(jìn)行按鍵的去抖動處理。去抖動的辦法一般有兩種:一種是采用硬件電路,另一種是采用軟件的時間延時程序以躲過抖動時間,待信號穩(wěn)定后在進(jìn)行按鍵掃描。在這里采用軟件方法去抖動。167。 數(shù)碼管顯示程序LED 顯示器有靜態(tài)顯示和動態(tài)掃描顯示兩種工作方式。167。 LED 靜態(tài)顯示靜態(tài)顯示就是顯示驅(qū)動電路具有輸出鎖存功能,單片機(jī)將要顯示的數(shù)據(jù)送出后就不再控制 LED,直到下一次顯示時再傳送一次新的數(shù)據(jù)。只要當(dāng)前顯示的數(shù)據(jù)沒有變化,就無須理睬數(shù)碼顯示管。靜態(tài)顯示的數(shù)據(jù)穩(wěn)定,占用的 CPU 時間少。靜態(tài)顯示中,每一個顯示器都要占用單獨(dú)具有瑣存功能的 I/O 口,該接口用于筆畫段字型代碼。這樣單片機(jī)只要把顯示的字型數(shù)據(jù)代碼發(fā)送到接口電路,該字段就可以顯示要發(fā)送的字型。要顯示新的數(shù)據(jù)時,單片機(jī)再發(fā)送新的字型碼。1.靜態(tài)驅(qū)動的優(yōu)/缺點(diǎn):2.優(yōu)點(diǎn)是 LED 顯示組件間連線非常簡潔 ,只需 56 根線即可將所有 LED 串接,調(diào)試檢修方便。3.顯示亮度好,采用合適的驅(qū)動元件可驅(qū)動 2 米以下的 LED,適合制作室外大型數(shù)字屏。4.缺點(diǎn)是每個 LED 需要 12 個驅(qū)動 IC,需要制作顯示組件 PCB 板。5.功耗稍大(是掃描驅(qū)動的 5 倍)。6.成本稍高(平均每位顯示驅(qū)動部分成本比掃描驅(qū)動要高 元)。167。 LED 動態(tài)掃描顯示另一種方法是動態(tài)掃描顯示。動態(tài)掃描方法是用其接口電路把所有顯示器的8 個筆畫字段(a~g 和 dp)同名端連在一起,而每一個顯示器的公共極 COM 各自獨(dú)立接受 I/O 線控制。CPU 向字段輸出端口輸出字型碼時,所有顯示器接受相同的字型碼,但究竟使那一位則由 I/O 線決定。動態(tài)掃描用分時的方法輪流控制每個河南科技大學(xué)本科畢業(yè)設(shè)計(論文)20顯示器的 COM 端,使每個顯示器輪流電亮。在輪流點(diǎn)亮過程中,每位顯示器的點(diǎn)亮?xí)r間極為短暫,但由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù)。掃描驅(qū)動的優(yōu)/缺點(diǎn):1.優(yōu)點(diǎn)是顯示驅(qū)動電路簡單,2 個 IC 即可驅(qū)動 8 個 10以下的 LED,成本較低。2.各種尺寸的 LED 可直接與主控板、驅(qū)動板、擴(kuò)展板連接,甚至可不采用PCB 板。3.功耗低。采用分時掃描顯示方式,功耗只有靜態(tài)顯示的 1/5。4.缺點(diǎn)是 LED 至驅(qū)動板間的連線較多。當(dāng)位數(shù)較多時,連線及檢修不便。該設(shè)計使用動態(tài)掃描顯示方式。采用掃描顯示方式,即在某一時刻,只讓某一位的位選線處于選通狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài),同時,段選線上輸出相應(yīng)要顯示字符的段碼。這樣同一時刻,4 位 LED 中只有選通的那一位字符,而其它三位是熄滅的,同樣,在下一時刻,只讓下一位的位選線處于選通狀態(tài),而其它各位的位選線處于關(guān)閉狀態(tài),同時,在段選線上輸出相應(yīng)位將要顯示字符的段碼,則同一時刻,只有選通位顯示相應(yīng)的字符,而其它各位是熄滅的。如此循環(huán)下去,就可以使各位顯示出將要顯示的字符,雖然這些字符是在不同時刻出現(xiàn)的,但由于 LED 顯示器的余輝和人眼的視覺暫留作用,只要每位顯示間隔足夠短,就可以造成多為同時亮的假象,達(dá)到同時亮的假象,達(dá)到同時顯示的目的。如何確定 LED 不同位顯示的時間間隔,例如對 8 位 LED 顯示器,假如顯示一位保持 1ms 時間,則顯示完所有 8 位后,則需要 8ms。上述保持 1ms 的時間根據(jù)實(shí)際情況而定。不能太短,也不能太長。定時器 0 中斷服務(wù)程序,用于數(shù)碼管的動態(tài)掃描,在動態(tài) LED 顯示程序中,需要不停的掃描字位口,從而實(shí)現(xiàn)不同滋味的數(shù)據(jù)的動態(tài)顯示效果。數(shù)碼管顯示的中斷流程如圖 34:河南科技大學(xué)本科畢業(yè)設(shè)計(論文)21重置 T0 定時初值T++指定字形口查表得字型碼送字位碼結(jié)束開始中斷1S 到?圖 34 數(shù)碼管顯示的中斷流程圖河南科技大學(xué)本科畢業(yè)設(shè)計(論文)22第 4 章 統(tǒng)軟件調(diào)試與仿真167。 應(yīng)用 KEIL 軟件進(jìn)行程序調(diào)試軟件的調(diào)試必須在開發(fā)系統(tǒng)的支持下進(jìn)行。先調(diào)試通過各個模塊,然后調(diào)試中斷服務(wù)程序,最后調(diào)試主程序,將各部分連接進(jìn)行調(diào)試。調(diào)試的范圍可由大到小、逐步增加,必要的中間信號可以先做設(shè)定。通常交叉使用單步運(yùn)行、斷點(diǎn)運(yùn)行、連續(xù)運(yùn)行等多種方式,每次執(zhí)行完畢后,檢查 CPU 執(zhí)行現(xiàn)場、RAM 的有關(guān)內(nèi)容、I/O 接口的狀態(tài),發(fā)現(xiàn)一個問題解決一個問題,直到全部通過。在調(diào)試時,生成 HEX 文件,通過 ISIS 軟件進(jìn)行仿真。發(fā)光二極管的程序調(diào)試界面如圖 41所示。圖 41 發(fā)光二極管的程序調(diào)試由圖中程序運(yùn)行可知,當(dāng) sec05=2 時,L2 和 L4 處于低電平,即 L2=0,L4=,此時 L2 和 L4 為低電平,因此程序正確。河南科技大學(xué)本科畢業(yè)設(shè)計(論文)23數(shù)碼管調(diào)試界面如圖 42 所示。圖 42 數(shù)碼管調(diào)試界面圖中輸出段 P0 為段選端,輸出字位碼, P2 為位選端,指示哪一位數(shù)碼管顯示。首先 CPU 指定字形口,再通過 P0 段輸出字位碼,然后 CPU 通過 P2 口指定哪一位數(shù)碼管顯示。圖示所輸出的數(shù)字為 5,位數(shù)為十位。對各個模塊調(diào)試完畢后,再對總程序進(jìn)行調(diào)試。通過觀察發(fā)光二極管的輸出端的高低電平所顯示出來燈的亮滅來觀察是否真確,通過觀察數(shù)碼管的 P0 和 P2 輸出端,來判斷顯示的數(shù)字和字位是否正確,最后通過按鍵調(diào)節(jié)來觀察數(shù)碼管的輸出端和發(fā)光二極管的輸出端的高低電平情況。通過觀察由調(diào)試結(jié)果可知,程序能夠運(yùn)行通過,能夠基本實(shí)現(xiàn)各個功能??傮w程序調(diào)試如圖 43 所示。河南科技大學(xué)本科畢業(yè)設(shè)計(論文)24圖 43 總程序調(diào)試界面16
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1