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

正文內(nèi)容

單片機(jī)原理及應(yīng)用電子課件-資料下載頁(yè)

2025-09-30 15:46本頁(yè)面
  

【正文】 單片機(jī)內(nèi)部定時(shí)器的邏輯結(jié)構(gòu)見下圖 。 它由四個(gè)特殊功能寄存器TCON、 TMOD、 T2CON、 T2MOD及 T0、 T T2組成 。 其中TMOD與 T2MOD為模式控制寄存器 , 主要用來設(shè)置定時(shí)器/計(jì)數(shù)器的操作模式; TCON與 T2CON為控制寄存器 , 主要用來控制定時(shí)器的啟動(dòng)與停止 。 三個(gè) 16位的定時(shí)器 T0、 T T2均可以分成 2個(gè)獨(dú)立的 8位計(jì)數(shù)器即 TH0、 TL0、 TH TL1, TH TL2用于存定時(shí)或計(jì)數(shù)的初值 。 它們是加 1的計(jì)數(shù)器 。 2. 定時(shí)器的工作原理 單片機(jī)的定時(shí)器均有兩種工作方式 , 即定時(shí)和計(jì)數(shù)工作方式 。 T0、 T1由 TMOD的 D6位和 D2位選擇 , 其中 D6位選擇 T1的工作方式 , D2位選擇 T0的工作方式 。 ( 1) 選擇定時(shí)工作方式時(shí): TMOD的 D6或 D2=0; T0、 T1工作在定時(shí)方式時(shí) , 計(jì)數(shù)脈沖輸入信號(hào)是由內(nèi)部時(shí)鐘提供的 ,每一個(gè)機(jī)器周期使計(jì)數(shù)器的值加 1。 而每個(gè)機(jī)器周期等于 12個(gè)振蕩周期 ,故計(jì)數(shù)器的計(jì)數(shù)頻率為振蕩器頻率的 1/ 12。 單片機(jī)的定時(shí)器用于定時(shí) , 其定時(shí)的時(shí)間由計(jì)數(shù)初值 、 選擇的計(jì)數(shù)器的長(zhǎng)度 (如 8位 、 13位或 16位 )和單片機(jī)的晶振頻率 來確定 。 ( 2) 選擇計(jì)數(shù)工作方式時(shí): TMOD的 D6或 D2=1; T0、 T1工作在計(jì)數(shù)方式時(shí) , 計(jì)數(shù)脈沖來自相應(yīng)的外部輸入引腳 T0、 T1,故計(jì)數(shù)方式是用于對(duì)外部事件進(jìn)行計(jì)數(shù) 。 當(dāng)外部輸入脈沖信號(hào)產(chǎn)生由 1至 0的跳變時(shí) , 計(jì)數(shù)器的值加 1。 計(jì)數(shù)器在每個(gè)機(jī)器周期的 S5P2期間 , 對(duì)外部脈沖輸入進(jìn)行一次采樣 。 由于確認(rèn)一次由 1至 0的下跳變要花 2個(gè)機(jī)器周期 , 即24個(gè)振蕩器周期 , 故計(jì)數(shù)器的 最高計(jì)數(shù)頻率為 fcont=fosc 1/ 24。 對(duì)外部脈沖的占空比并沒有什么限制 , 但為了確保某一給定的電平在變化之前至少被采樣一次 , 因此 外部計(jì)數(shù)脈沖的高電平和低電平保持時(shí)間均要求在一個(gè)機(jī)器周期以上 。 T0和 T1定時(shí) /計(jì)數(shù)器的控制 1. 模式控制寄存器 ─ TMOD TMOD是一個(gè) 8位的專用寄存器 , 其字節(jié)地址是 89H, 不能進(jìn)行位尋址 ,系統(tǒng)復(fù)位后其所有位均為 0。 TMOD用于控制 T1和 T0的操作模式及工作方式 ,其各位的定義如下 : ─ TCON TCON的作用是用于控制定時(shí)器的啟 、 停及定時(shí)器的溢出標(biāo)志和外部中斷觸發(fā)方式等 。 其字節(jié)地址為 88H, 可以位尋址 , 各位定義如下: 位地址 TF1和 TF0:分別為定時(shí)器 1和定進(jìn)器 0溢出標(biāo)志 。 TR1和 TR0:為定時(shí)器 1和定時(shí)器 0的啟動(dòng)控制位 。 IE1和 IE0:為外部中斷 1 和外部中斷 0 的中斷請(qǐng)求標(biāo)志位 。 IT1和 IT0:為外部中斷 1和外部中斷 0的觸發(fā)方式選擇位 。 TCON中低 4位是與外部中斷有關(guān)的位 , 高 4位為定時(shí)器控制位 。 定時(shí) /計(jì)數(shù)器的初始化編程 1. 初始化的步驟: (1) 確定工作方式 、 操作模式 、 啟動(dòng)控制方式 寫入 TMOD、 TCON和T2MOD、 T2CON寄存器 。 (2) 設(shè)置定時(shí)或計(jì)數(shù)器的初值 可直接將初值寫入 TH0、 TL0或 THTL TH TL2中 。 16位計(jì)數(shù)初值必須分兩次寫入對(duì)應(yīng)的計(jì)數(shù)器 。 (3) 根據(jù)要求是否采用中斷方式 直接對(duì) IE位賦值 。 開放中斷時(shí) , 對(duì)應(yīng)位置 1;采用程序查詢方式時(shí) IE相應(yīng)位清 0進(jìn)行中斷屏蔽 。 (4) 啟動(dòng)定時(shí)器工作 可使用 SETB TRi啟動(dòng) 。 T0或 T1若設(shè)置為軟啟動(dòng) ,即 GATE設(shè)置為 0時(shí) , 以上指令執(zhí)行后 , 定時(shí)器即可開始工作 。 若 GATE設(shè)置為 1時(shí) ,且當(dāng) INTi引腳電平為高時(shí) , 以上指令執(zhí)行后定時(shí)器方可啟動(dòng)工作 。 2 計(jì)數(shù)初值的計(jì)算 若設(shè)最大計(jì)數(shù)值為 2n, n為計(jì)數(shù)器位數(shù) , 各操作模式下的 2n值為: 模式 0: 2n=8192 ; n=13 模式 1: 2n=65536 ; n=16 模式 2: 2n=256 ; n=8 模式 3: 2n=256 ; n=8, 定時(shí)器 T0分成 2個(gè)獨(dú)立的 8位計(jì)數(shù)器 , 所 以 TH0、 TL0的最大計(jì)數(shù)值均為 256。 單片機(jī)中的 T0、 T T2定時(shí)器均為加 1計(jì)數(shù)器 , 當(dāng)加到最大值 (00H或0000H)時(shí)產(chǎn)生溢出 , 將 TFi位置 1, 可發(fā)出溢出中斷 , 因此計(jì)數(shù)器初值 X的計(jì)算式為: X=2n計(jì)數(shù)值 (1) 計(jì)數(shù)工作方式時(shí) 計(jì)數(shù)工作方式時(shí) , 對(duì)外部脈沖進(jìn)行計(jì)數(shù) , 其計(jì)數(shù)初值: X=2n計(jì)數(shù)值 (2) 定時(shí)工作方式時(shí) 定時(shí)工作方式時(shí) , 對(duì)機(jī)器周期進(jìn)行計(jì)數(shù) , 故計(jì)數(shù)脈沖頻率為fcont=fosc 1/ 1 計(jì)數(shù)周期 T=1/ fcont定時(shí)工作方式的計(jì)數(shù)初值 X等于: X=2n計(jì)數(shù)值 =2nt/ T=2n(fosc t)/ 12 注: fosc單位是 MHz, 定時(shí)時(shí)間 t的單位是 μ s。 3. 定時(shí)器初始化舉例 設(shè)置 T1為定時(shí)工作方式,定時(shí) 50ms,選操作模式 1,軟啟動(dòng); T0為計(jì)數(shù)方式,對(duì)外部脈沖進(jìn)行計(jì)數(shù) 10次,硬啟動(dòng),選操作模式 2。禁止 T0/T1中斷,編寫其初始化程序,設(shè) fosc=6MHz。 T0/T1的模式控制字為: 00011110( 1EH) T0的初值 X0= 256- 10= 246= 0F6H T1的初值 X1= 65536( 6*50*1000) /12= 40536= 9E58H 則初始化程序?yàn)椋? MOV TMOD,1EH 。寫入模式控制字(方式字) MOV TH0,0F6H 。寫入 T0的初值 MOV TL0,0F6H MOV TH1,9EH 。寫入 T1的初值 MOV TL1,58H CLR ET0 。禁止 T0中斷 CLR ET1 。禁止 T1中斷 SETB TR0 。啟動(dòng) T0計(jì)數(shù) SETB TR1 。啟動(dòng) T1計(jì)數(shù) ?? T0和 T1 定時(shí) /計(jì)數(shù)器的操作模式及使用方法 通過對(duì)定時(shí)器的 TMOD中 M1 M0位的設(shè)置 , 可以選擇 4種操作模式 。 1. 模式 0( 方式 0) 模式 0是一個(gè) 13位的定時(shí)/計(jì)數(shù)器 , 16位的寄存器只用了高 8位 (THi)和低 5位 (TLi的 D4~D0位 ), TLi的高 3位未用 。 該模式是為與 MCS48系列單片機(jī)兼容而設(shè)置的 , 但目前很少選用它 。 其: 定時(shí)初值 X=213t fosc/12 計(jì)數(shù)初值 X=213計(jì)數(shù)值 注意:在模式 0下計(jì)算得到的初值一定要轉(zhuǎn)換為 13位 2進(jìn)制數(shù) , 然后從高位開始截取 8位做為 THi的值 , 余下的 5位在其前面補(bǔ)充 000后做為 TLi的值 。 2. 模式 1(方式 1) 操作模式 1是 16位定時(shí)/計(jì)數(shù)器,其結(jié)構(gòu)和工作過程幾乎與模式 0完全相同,唯一的區(qū)別是計(jì)數(shù)器的長(zhǎng)度為 16位。 定時(shí)初值 X為: X=216t fosc/ 12 計(jì)數(shù)初值 X為: X=216計(jì)數(shù)值 例:用定時(shí)器 1產(chǎn)生一個(gè) 50Hz的方波,由 ,用程序查詢方式工作, fosc=12MHz。 解:方波周期 T= 1/50= =20ms,我們只需要每隔半周期 10ms將 50Hz 的方波。 T1的定時(shí)初值為: X1= 6553610 1000 12/12= 55536= D8F0H,則程序段如下: MOV TMOD,10H 。設(shè) T1為方式 1 LOOP: MOV TH1,0D8H 。送 T1的初值 MOV TL1,0F0H SETB TR1 。啟動(dòng) T1計(jì)數(shù) LL1: JBC TF1,LL2 。如果 T1溢出,則清溢出標(biāo)志并轉(zhuǎn)移到 LL2 SJMP LL1 。否則繼續(xù)判斷,等待 LL2: CPL 。將 ,以輸出方波 SJMP LOOP 。給 T1重新賦初值 3. 模式 2( 方式 2) 模式 2是能自動(dòng)重裝計(jì)數(shù)初值的 8位計(jì)數(shù)器 。 模式 2中把 16位的計(jì)數(shù)器拆成兩個(gè) 8位計(jì)數(shù)器 , 低 8位作計(jì)數(shù)器用 , 高 8位用以保存計(jì)數(shù)初值 。 當(dāng)?shù)?位計(jì)數(shù)產(chǎn)生溢出時(shí) , 將 TFi位置 1, 同時(shí)又將保存在高 8位中的計(jì)數(shù)初值重新自動(dòng)裝入低 8位計(jì)數(shù)器中 , 繼續(xù)計(jì)數(shù) , 循環(huán)重復(fù)不止 。 模式 2可自動(dòng)循環(huán)計(jì)數(shù) , 省去了軟件重新裝入初值的麻煩 , 提高了定時(shí)的精度 。 該模式常用在定時(shí)精度高的場(chǎng)合 , 例如做為串行口的波特率發(fā)生器使用 。 計(jì)數(shù)初值 X=28計(jì)數(shù)值 定時(shí)初值 X=28t fosc/ 12 注意:在該模式下 , 初始化編程時(shí) THi和 TLi都裝入此 X值 , 并且只需裝入一次即可 。 例:利用 89C51單片機(jī)的定時(shí)器 0產(chǎn)生一個(gè) 2022Hz的方波,由 ,采用程序查詢方式工作, fosc=12MHz。 解:方波周期 T= 1/2022= =500μ s,我們只需要每隔半周期 250μ s將 2022Hz的方波。由于定時(shí)時(shí)間256μ s,因此選擇 T0工作在方式 2。 T0的定時(shí)初值為: X0= 256250 12/12= 6= 6H, 程序段如下: MOV TMOD,02H 。設(shè) T0為方式 2 MOV TH0,06H 。送 T0的初值 MOV TL0,06H SETB TR0 。啟動(dòng) T0計(jì)數(shù) LOOP: JNB TF0,$ 。如果 T0沒有溢出,則等待 CLR TF0 。否則定時(shí)時(shí)間到,清除溢出標(biāo)志 CPL 。將 ,以輸出方波 SJMP LOOP 4. 模式 3(方式 3) 模式 3只適用定時(shí)器 T0, T0在該模式下被拆成兩個(gè)獨(dú)立的 8位計(jì)數(shù)器 TH0和 TL0,其中 TL0使用原來 T0的一些控制位和引腳,它們是 C/T、GATE、 TR0、 TF0和 T0()引腳及 INT0()引腳。此模式下的 TL0作為 8位計(jì)數(shù)器,其功能和操作與模式 0、模式 1完全相同,可做定時(shí)也可做計(jì)數(shù)用。 該模式下的 TH0,此時(shí)只可用作簡(jiǎn)單的內(nèi)部定時(shí)器功能,它借用原定時(shí)器 T1的控制位和溢出標(biāo)志位 TR1和 TF1,同時(shí)占用了 T1的中斷源。TH0的啟動(dòng)和關(guān)閉僅受 TR1的控制, TR1=1, TH0啟動(dòng)定時(shí); TR1=0, TH0停止定時(shí)工作。模式 3為定時(shí)器 T0增加了一個(gè) 8位的定時(shí)器。 此時(shí)的 T1仍可以設(shè)置為模式 0、模式 模式 2,用在任何不需要中斷的場(chǎng)合。通過設(shè)置 C/T位可對(duì)內(nèi)部時(shí)鐘進(jìn)行定時(shí)或?qū)ν獠恳_脈沖進(jìn)行計(jì)數(shù)的功能。由于 T1的 TR1和 TF1被 TH0占用,此情況下 T1溢出產(chǎn)生中斷時(shí)不能由 TF1發(fā)出,只能從串行口輸出 T1的溢出信號(hào)。因此,當(dāng) T0工作于模式 3時(shí), T1一般用作串行口波特率發(fā)生器使用。當(dāng)設(shè)置好工作方式后,定時(shí)器 T1自動(dòng)開始運(yùn)行;若要停止操作,只需送入一個(gè)設(shè)置定時(shí)器 1為模式 3的模式控制字。通常把定時(shí)器 T1設(shè)置為模式 2作波特率發(fā)生器比較方便。 小 結(jié) 51系列單片機(jī)有 2個(gè) 16位定時(shí)/計(jì)數(shù)器, 52系列有 3個(gè)。 定時(shí)/計(jì)數(shù)器均為加法計(jì)數(shù)器。 定時(shí)器與計(jì)數(shù)器的區(qū)別 計(jì)數(shù)器對(duì)外部計(jì)數(shù)脈沖的頻率和占空比的要求。 T0有 4種工作方式, T1有 3種。各種工作方式下定時(shí)/計(jì)數(shù)的最大值與初值的計(jì)算。 定時(shí)/計(jì)數(shù)器的初始化方法。 定時(shí)/計(jì)數(shù)器的應(yīng)用。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1