




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
打鈴定時(shí)器一、基礎(chǔ)部分芯片定時(shí)器設(shè)置定時(shí)器狀態(tài)和控制寄存器TSCR$20fi=總線頻率一、基礎(chǔ)部分定時(shí)器中斷的設(shè)定有兩個(gè)因素決定:硬件決定:晶振頻率: 晶振頻率/4=總線頻率(fi)軟件決定:計(jì)數(shù)脈沖的分頻:PS2:PS1:PS0可以選擇1分頻(000)至64分頻(110)
比較中斷的模數(shù)計(jì)數(shù)值(比較值):定時(shí)器計(jì)數(shù)模數(shù)寄存器高位TMODH$23定時(shí)器計(jì)數(shù)模數(shù)寄存器低位TMODL$24晶振選擇:8MHz 總線頻率=8/4=2MHz總線周期=0.5uS(微秒)一、基礎(chǔ)部分參數(shù)設(shè)定:Tscr_initEQU %01000000
;1分頻,計(jì)數(shù)器頻率=總線頻率=2MHzTmodh_initEQU0Tmodl_init
EQU 250T
;溢出周期=250*0.5uS(微秒)=125uS(微秒)初始化程序:MOV#Tscr_init,TSCR
MOV#Tmodh_init,TMODHMOV#Tmodl_init,TMODL;溢出中斷頻率:每秒8000次二、蜂鳴器控制部分;==================================================================================;蜂鳴器管理;---------------Beep_ctrlTSTBEEP_DLYBNEBeep_bk;蜂鳴計(jì)數(shù)未結(jié)束,不處理其余事;---------------LDABEEP_CNTBRSET2,TIME_FL,Beep_offBIT#%11110000BEQBeep_bk;已經(jīng)響完,不再處理;---------------Beep_onBSET2,TIME_FL;要繼續(xù)蜂鳴,原未開(kāi),現(xiàn)在開(kāi)
SUB#%00010000STABEEP_CNTBRAGet_gap;---------------;---------------Beep_offBCLR2,TIME_FL;要繼續(xù)蜂鳴,原已開(kāi),現(xiàn)在關(guān)(間隔)BCLR5,PORTALSRALSRAGet_gapAND#%00000011TAXLDABeep_tbl,XSTABEEP_DLYBeep_bkJMPMain_loop;----------------------------------------------------------------------------------Beep_tblFCB60T,100T,150T,200T;2毫秒計(jì)時(shí);===============================================================三、定時(shí)器程序練習(xí)在平臺(tái)程序的基礎(chǔ)上,添加和修改程序代碼從淺入深,步步深入考核方式是單人單機(jī)操作,在平時(shí)的操作中一定要多動(dòng)手親自操作,否則很難過(guò)關(guān)練習(xí)一編制一個(gè)定時(shí)器程序
用于實(shí)訓(xùn)樓上課計(jì)時(shí).上課或下課有蜂鳴器提示上午4節(jié)課,下午2節(jié)課.具體時(shí)間間隔如下:上午:45分鐘,10分鐘,45分鐘,20分鐘,45分鐘,10分鐘,45分鐘,140分鐘下午:45分鐘,10分鐘,45分鐘課間休息時(shí)間閃動(dòng)LED燈(自選一個(gè)燈),每秒閃動(dòng)一次(0.5秒亮,0.5秒滅)注意:調(diào)試時(shí)使用縮時(shí)功能,1秒鐘=1分鐘(如何進(jìn)入縮時(shí)狀態(tài)?)要新定義變量,(如何增加新的變量定義)如:TM_M_CNT分鐘計(jì)數(shù)器TM_STEP階段計(jì)數(shù)器閃動(dòng)LED燈,使用平臺(tái)程序“練習(xí)-4.ASM”提供的資源:BLNK_CNT平臺(tái)程序已經(jīng)作好,只要使用該變量來(lái)控制閃動(dòng)(固定間隔亮燈,固定間隔滅燈)該變量每0.25秒加1,不同的位的翻轉(zhuǎn)周期不同解題思路a).在RAM區(qū)定義以下變量:TM_M_CNTRMB1TM_STEPRMB1b)在外時(shí)鐘程序后部加數(shù)據(jù)表如下:TM_TBL
FCB45T,10T,45T,20T,45T,10T,45T,140T,45T,10T,45T
注意:數(shù)據(jù)表的標(biāo)號(hào)“TM_TBL”不需要定義,貼邊寫(xiě)的字母默認(rèn)為標(biāo)號(hào),匯編時(shí)自動(dòng)分配地址給此處。c)在分鐘平臺(tái)程序處,寫(xiě)入以下程序:
INCTM_M_CNT
LDATM_M_CNT
LDXTM_STEP
CMPTM_TBL,X
BLOPP-1
CLRTM_M_CNT
MOV#%00010000,BEEP_CNT
INCTM_STEP
PP-1
NOPd)在顯示程序的風(fēng)速燈(LED)顯示處,屏蔽原風(fēng)速顯示:;---------------;風(fēng)速顯示*****;---------------
Dsp_f_spd;BRCLR1,MIX_FLAG,Dsp_lo_f
;BRCLR0,MIX_FLAG,Dsp_med_f
BRCLR0,TM_STEP,Dsp_swng
BRCLR1,BLNK_CNT,Dsp_swng
BSET0,DSP_BUF_1
BRADsp_swng
練習(xí)二加入數(shù)碼管顯示運(yùn)行分鐘程序位置在顯示處理(見(jiàn)*****標(biāo)記處)用運(yùn)行分鐘代替原來(lái)的室內(nèi)溫度(ROOM_TMP);-----------------------------------------------;顯示室溫*****;---------------Dsp_rm_tempLDXTM_M_CNT ;ROOM_TMPJSRDsp_temp_subBRASet_dsp_drv;-----------------------------------------------
練習(xí)三定時(shí)器擴(kuò)展到8節(jié)課上午4節(jié)課,下午4節(jié)課.具體時(shí)間間隔如下:上午:45分鐘,10分鐘,45分鐘,20分鐘,45分鐘,10分鐘,45分鐘,140分鐘下午:45分鐘,10分鐘,45分鐘,20分鐘,45分鐘,10分鐘,45分鐘附加要求:在數(shù)碼管上顯示所上課的節(jié)數(shù)解題思路:TM_STEP由11個(gè)增為15個(gè),要添加相應(yīng)的可訪問(wèn)到的數(shù)據(jù)對(duì)TM_STEP值的判斷標(biāo)準(zhǔn)把上課的節(jié)數(shù)作為一個(gè)量去顯示需要實(shí)時(shí)判斷是否為上課的時(shí)間階段修改時(shí)間序列表如下
TM_TBL
FCB45T,10T,45T,20T,45T,10T,45T,
140T
FCB45T,10T,45T,20T,45T,10T,45T原有的分鐘平臺(tái)程序處程序片段:
INCTM_M_CNT
LDATM_M_CNT
LDXTM_STEP
CMPTM_TBL,X
BLOPP-1
CLRTM_M_CNT
MOV#%00010000,BEEP_CNT
INCTM_STEP
LDA
TM_STEP
CMP#11T
BLO
PP-1
CLRTM_STEP
PP-1
NOP原有顯示運(yùn)行分鐘程序片斷;顯示室溫*****Dsp_rm_tempLDXTM_M_CNT ;ROOM_TMP
JSRDsp_temp_subBRASet_dsp_drv應(yīng)如何修改呢?上課階段的對(duì)應(yīng)值為0,2,4,6,8,10,12,14原有顯示運(yùn)行分鐘程序片斷;顯示室溫*****Dsp_rm_temp
BRSET0,TM_STEP,Set_dsp_drv
LDX
TM_STEPCLCRORXINCX
JSRDsp_temp_subBRASet_dsp_drv練習(xí)四數(shù)碼管顯示運(yùn)行分鐘倒計(jì)數(shù)當(dāng)前階段已運(yùn)行分鐘數(shù)當(dāng)前階段所需運(yùn)行分鐘總數(shù)以上第一節(jié)課為例(階段變量為0,該階段運(yùn)行時(shí)間為45分鐘)當(dāng)前階段余下的分鐘數(shù)用運(yùn)行分鐘代替原來(lái)的室內(nèi)溫度(ROOM_TMP);-----------------------------------------------;顯示室溫*****;---------------Dsp_rm_tempLDXTM_M_CNT ;ROOM_TMPINCX
JSRDsp_temp_subBRASet_dsp_drv;-----------------------------------------------
當(dāng)前階段已運(yùn)行分鐘數(shù)TM_M_CNT當(dāng)前階段所需運(yùn)行分鐘總數(shù)為45分鐘,通過(guò)查表獲得,如LDATM_TBL,XTM_STEP=0當(dāng)前階段余下的分鐘數(shù)(A)-TM_M_CNT??思考:如何實(shí)現(xiàn)個(gè)功能?用什么指令?;-----------------------------------------------;顯示室溫*****;---------------Dsp_rm_tempLDXTM_STEP LDATM_TBL,X
SUBTM_M_CNT
TAX
JSRDsp_temp_subBRASet_dsp_drv;-----------------------------------------------附加功能:把下課時(shí)段內(nèi)高風(fēng)燈閃改為高風(fēng)、中風(fēng)兩個(gè)燈同時(shí)閃?把下課時(shí)段內(nèi)高風(fēng)、中風(fēng)兩個(gè)燈同時(shí)閃改為兩個(gè)燈輪流閃爍?練習(xí)五上課下課蜂鳴器聲音不同平臺(tái)提供蜂鳴器控制的指令:1聲蜂鳴器MOV#%00010000,BEEP_CNT1短聲2聲蜂鳴器MOV#%00100000,BEEP_CNT
2短聲3聲蜂鳴器MOV#%00110000,BEEP_CNT
3短聲1聲蜂鳴器MOV#%00011011,BEEP_CNT
1長(zhǎng)聲2聲蜂鳴器MOV#%00101011,BEEP_CNT
2長(zhǎng)聲3聲蜂鳴器MOV#%00111011,BEEP_CNT
3長(zhǎng)聲
a).在時(shí)間序列表后加蜂鳴器聲音控制表BP_TBL
FCB%00010001 ;1節(jié)課下,1短聲
FCB%00101111 ;2節(jié)課上,2長(zhǎng)聲
FCB%00010001 ;2節(jié)課下,1短聲
FCB%00111111 ;3節(jié)課上,3長(zhǎng)聲
FCB%00010001 ;3節(jié)課下,1短聲
FCB%01001111 ;4節(jié)課上,4長(zhǎng)聲
FCB%00010001 ;4節(jié)課下,1短聲
FCB%01011111 ;5節(jié)課上,5長(zhǎng)聲
FCB%00010001 ;5節(jié)課下,1短聲
FCB%01101111 ;6節(jié)課上,6長(zhǎng)聲
FCB%00010001 ;6節(jié)課下,1短聲
FCB%01111111 ;7節(jié)課上,7長(zhǎng)聲
FCB%00010001 ;7節(jié)課下,1短聲
FCB%10001111 ;8節(jié)課上,8長(zhǎng)聲
FCB%00010001 ;8節(jié)課下,1短聲b)定時(shí)器程序如下:
INCTM_M_CNT
LDATM_M_CNT
LDXTM_STEP
CMPTM_TBL,X
BLOPP-1
CLRTM_M_CNT
LDABP_TBL,X
STABEEP_CNT
INCTM_STEPPP-1
NOP計(jì)當(dāng)前的運(yùn)行分鐘數(shù)、當(dāng)前的階段值當(dāng)前階段是否運(yùn)行完讀取相應(yīng)階段蜂鳴器數(shù)據(jù)表設(shè)置蜂鳴器更新階段變量NY練習(xí)六有選擇地運(yùn)行定時(shí)器按開(kāi)機(jī)鍵運(yùn)行定時(shí)器,不按鍵處于待機(jī)狀態(tài)平臺(tái)程序提供的按鍵開(kāi)關(guān)機(jī)標(biāo)記:3,MIX_FLAG檢測(cè)開(kāi)關(guān)機(jī)標(biāo)記開(kāi)機(jī)標(biāo)記MIX_FLAG的bit3為1關(guān)機(jī)標(biāo)記MIX_FLAG的bit3為0修改定時(shí)器程序如下:
BRCLR3,MIX_FLAG,PP-1
INCTM_M_CNT
LDATM_M_CNT
LDXTM_STEP
CMPTM_TBL,X
BLOPP-1
CLRTM_M_CNT
LDABP_TBL,X
STABEEP_CNT
INCTM_STEPPP-1
NOP思考:這一條指令是開(kāi)機(jī)轉(zhuǎn)移還是關(guān)機(jī)轉(zhuǎn)移?答案:是關(guān)機(jī)轉(zhuǎn)移注意不要與已有的標(biāo)號(hào)沖突如果改為開(kāi)機(jī)轉(zhuǎn)移,實(shí)現(xiàn)功能不變,這段程序應(yīng)作如何修改?改為開(kāi)機(jī)轉(zhuǎn)移:
BRSET3,MIX_FLAG,PP-2BRAPP-1PP-2
INCTM_M_CNT
LDATM_M_CNT
LDXTM_STEP
CMPTM_TBL,X
BLOPP-1
CLRTM_M_CNT
LDABP_TBL,X
STABEEP_CNT
INCTM_STEPPP-1
NOP把這種方法與前面對(duì)比一下,哪種好呢?練習(xí)七預(yù)定時(shí)運(yùn)行定時(shí)器運(yùn)行時(shí)加前10分鐘預(yù)定時(shí),按開(kāi)關(guān)鍵開(kāi)機(jī)后先運(yùn)行10分鐘預(yù)定時(shí),10分鐘到后響2長(zhǎng)聲蜂鳴器,開(kāi)始運(yùn)行打鈴定時(shí)器.用一個(gè)標(biāo)記來(lái)表明預(yù)定時(shí)10分鐘是否到當(dāng)標(biāo)記為1時(shí)表明預(yù)定時(shí)10分鐘到當(dāng)標(biāo)記為0時(shí)表明預(yù)定時(shí)10分鐘未到在這種情況下定時(shí)器工作在這種情況下定時(shí)器不工作,繼續(xù)預(yù)定時(shí)是開(kāi)機(jī)?預(yù)定時(shí)了?打鈴器工作運(yùn)行分鐘增1到10分鐘了嗎?清運(yùn)行分鐘變量置預(yù)定時(shí)標(biāo)記設(shè)置蜂鳴器否是是否否是是開(kāi)機(jī)?預(yù)定時(shí)了?打鈴器工作運(yùn)行分鐘增1到10分鐘了嗎?清運(yùn)行分鐘變量置預(yù)定時(shí)標(biāo)記設(shè)置蜂鳴器否是是否否是PP-1PP-3
修改定時(shí)器程序如下:
BRCLR3,MIX_FLAG,PP-1
BRSET6,MIX_FLAG,PP-3
INCTM_M_CNT
LDATM_M_CNT
CMP#10T
BLOPP-1
CLRTM_M_CNT
BSET6,MIX_FLAG
MOV#%00100011,BEEP_CNTPP-3
INCTM_M_CNT
LDATM_M_CNT
……………PP-1
NOP
練習(xí)八定時(shí)器自動(dòng)關(guān)機(jī)定時(shí)器運(yùn)行到第八節(jié)課后自動(dòng)關(guān)機(jī),再按開(kāi)關(guān)鍵重新開(kāi)機(jī)后,定時(shí)器可從10分鐘預(yù)定時(shí)開(kāi)始再運(yùn)行一遍.………
INCTM_M_CNT
LDATM_M_CNT
LDXTM_STEP
CMPTM_TBL,X
BLOPP-1
CLRTM_M_CNT
LDABP_TBL,X
STABEEP_CNT
INCTM_STEPPP-1
NOP思考一:階段變量是如何更新的呢?思考二:如何判斷是否到了第八節(jié)課結(jié)束,在哪里判斷?
該階段是否結(jié)束?是否第八節(jié)課結(jié)束清階段變量清開(kāi)機(jī)、預(yù)定時(shí)標(biāo)記清運(yùn)行分鐘變量設(shè)置蜂鳴器更新階段變量否是是否PP-1更新運(yùn)行分鐘變量讀取階段變量打鈴器工作分解打鈴器常規(guī)工作本次練習(xí)所增加的功能修改定時(shí)器程序如下:
…………
LDABP_TBL,X
STABEEP_CNT
INCTM_STEP
LDATM_STEP
CMP#14T
BLSPP-1
CLRTM_STEP
BCLR3,MIX_FLAG
BCLR6,MIX_FLAGPP-1
NOP
思考:這里可以改成BLOPP-1如果要使用這條指令,應(yīng)如何修改?答案:CMP#15TBLOPP-1這兩條指令意味著什么呢?你如何理解的?練習(xí)九增加預(yù)備鈴增加上課鈴的預(yù)備鈴,下課休息最后3分鐘響1短聲預(yù)備鈴,正式上課響3長(zhǎng)聲蜂鳴器,下課響1長(zhǎng)聲蜂鳴器.原上下課閃燈控制取消.45T,7T,3T,45T,17T,3T,45T,7T,3T,45T,137T,3T,45T,7T,3T,45T,17T,3T,45T,7T,3T,45T具有三種不同的蜂鳴聲音控制按照前面把6節(jié)課延伸為8節(jié)課的思路,可以通過(guò)改變?cè)械臅r(shí)間數(shù)據(jù)表,增加相應(yīng)的時(shí)間段即可按照前面上課下課對(duì)應(yīng)對(duì)蜂鳴聲音的控制,修改蜂鳴聲音控制表可以改變對(duì)各階段蜂鳴聲音的控制重新構(gòu)建數(shù)據(jù)表TM_TBL
FCB45T,7T,3T,45T,17T,3T,45T
FCB
7T,3T,45T,137T,3T,45T,7T
FCB
3T,45T,17T,3T,45T,7T,3T,45T以前的時(shí)間數(shù)據(jù)表如下:TM_TBL
FCB45T,10T
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高性能特種合金材料項(xiàng)目合作計(jì)劃書(shū)
- 同城工地出售合同范本
- 合作建材協(xié)議合同范例
- 共同投資協(xié)議合同范本
- 賣(mài)地買(mǎi)房合同范本
- 卷宗管理服務(wù)合同范例
- 合同范本庫(kù)編制說(shuō)明
- 資質(zhì)借用合同范本
- 農(nóng)田煙桿出售合同范本
- 幼兒園塑膠地板購(gòu)銷(xiāo)施工合同范本
- 英語(yǔ)-廣東省大灣區(qū)2025屆高三第一次模擬試卷和答案
- 丹佛斯變頻器培訓(xùn)經(jīng)典課件
- 2024年06月日照銀行社會(huì)招聘筆試歷年參考題庫(kù)附帶答案詳解
- 烤房租賃合同范例
- 建筑地暖系統(tǒng)工程安裝考核試卷
- 專(zhuān)題四 指數(shù)函數(shù)與對(duì)數(shù)函數(shù)【中職專(zhuān)用】2025春季對(duì)口高考數(shù)學(xué)專(zhuān)題復(fù)習(xí)(河南適用)(解析版)
- 江蘇卷2024年高考語(yǔ)文第一次模擬考試一(原卷版+解析版)
- 2024解析:第十六章電壓和電阻-講核心(解析版)
- 單層鋼結(jié)構(gòu)工業(yè)廠房施施工組織設(shè)計(jì)
- 華為經(jīng)營(yíng)管理-華為激勵(lì)機(jī)制(6版)
- 投資公司組織架構(gòu)和運(yùn)作流程
評(píng)論
0/150
提交評(píng)論