11.是四個通道的啟動定時器外觸發脈衝,或計數器的計數脈衝(輸入,用戶可以編程設定是脈衝的上升沿有效,還是下降沿有效)。在計數器方式工作時,加到這引腳的每個有效脈衝邊沿,觸發減1計數器減1;在外觸發的定時器方式工作時,是用它的有效邊沿啟動定時器開始定時工作。
12.是0、1和2通道的回零義時間到正脈衝輸出引腳(輸出)。每當這三個通道的減1計數器回零時,由對應引腳發出一個電平正脈衝。
13.是係統時鍾(輸入)。它是標準的Z80單相時鍾脈衝。
7.3-3 CTC 的工作方式和初始化
一、工作方式
有計數器和定時器兩種工作方式.四個通道都可以獨立地選定兩種方式中的一種。選定工作在哪種方式,則在程序初始化時由通道控製字的決定。
1.計數器方式
工作在計數器方式時,減1計數器由時間常數寄存器賦予初值後,由引腳輸入的脈衝來控製進行減1計數。每當引腳輸入一個脈衝有效邊沿之廠;第一個係統時鍾的上升沿,便使減1計數器減1。
脈衝規定必須限定一個最小脈寬。而且脈衝周期不得小於係統時鍾的兩倍。超前觸發時間最小值規定,若小於此數值,減1計數器操作將延遲一個時鍾7周期時間。減1計數器回零時,在引腳發出一正脈衝,假若程序設定信道中斷是開放的,即在的引腳向口發出申請中斷有效信號。
2.定時器方式
工作在定時器方式,可以采用二種方式觸發它開始定時工作,這由控製字位決定。一種是先輸入過程控製字,接著送入間常數,便自動由第二個係統時鍾開始工作,另一種是由引腳輸入外觸發脈衝有效邊沿後才開始工作。象計數器方式一樣,要求脈衝有一最小寬度(數值與計數器方式一樣)。因為啟動定時器工作是與係統時鍾同步的情況下進行的。若這個值小於規定最小值,那麼將延遲一個係統時鍾1時間開始工作。
同樣,若程序設定信道中斷是開放的,其減1計數器回零時,引腳向口發出中斷申請信號。
工作在定時器方式,是使係統時鍾4經過兩個串行計數器:定標器(對4進行分頻輸出)和減1計數器(對來自定標器輸出進行減1計數)傳送,而在2/70引腳發出與係統時鍾少成整數倍關係的脈衝(或脈衝係列)。
二、操作和程序設定
1.起動
接通電源後,假若這時通電自複位信號不起作用,狀態便不確定,需按下鍵,使進入硬件複位狀態。
在任一通道開始工作之前,先向寫入通道控製字,緊接著是時間常數字。在控製字中若允許申請中斷,還必須寫入中斷矢量。而按照方式響應中斷。當寫入三個字之後,才能按你所希望的方式工作。
2.程序設定
我們起動任一通道工作,如上所述,必須先後寫入三個字:通道控製字,時間常數和中斷矢量。但每一信道隻占用一個口地址,為此,規定通道控製字和中斷矢量這兩個字。位作為尋址用,我們把它稱作尋址特征位。的程序設定順序一般是這樣:“是否工作在中斷方式,若是,則先確定中斷服務程序地址表指針,以便確定寫入;矢量寄存器的數據(中斷矢量高字節)。
設定中斷矢量低字節,以便口口響應中斷時,和內容配合形成中斷服務地址表指針。
設定信道控製字,選定通道工作方式和內部相應邏輯。“設定時間常數值,確定定時器方式的時間間隔長短,或計數器方式的計數脈衝數量。
當裝配中斷矢量(即形成中斷矢量地址表指針)時,由芯片中斷控製邏輯自動提供。因此,在安排中斷地址表時,通道一定要順序排列,而且三位都為0,否則是錯誤的。
啟動定時器開始工作;在計數器方式時,由脈衝下降沿使減1計數器減1。隻對定時器方式有意義。它決定用什麼方式啟動定時器開始工作。當在裝入時間常數後,延遲一個時鍾脈衝,在第二個時鍾脈衝的上升沿自動啟動定時器工作。定時器一旦啟動之後,便繼續進行下去,直到對它進行複位為止。當由外觸發脈衝啟動定時器工作。要求外觸發脈衝在寫入時間常數之後,延遲一個時鍾脈衝,在第二個時鍾脈衝的上升沿到來之後,才能夠啟動定時器工作。定時器一旦經觸發脈衝啟動之後,便連續不斷進行下去,直至對它複位為止。
是時間常數標識位。表示下一個訪問本通道的數據字,一定是裝入時間常數寄存器的時間常數。但不受時間限製,任何時候都可以裝入。當表示下一個訪問本通道的,不是時間常數。通常是應用於已在工作的通道。例如,通道已工作在允許中斷的自動定時器方式,現在要禁止信道的中斷,其他均不改變,這時送入的通道控製字,隻要將07位改為0(禁止中斷),02位也為0,其他位則和上次送入的通道控製字一樣便可以。
把一個更新的通道控製字和時間常數送入一個已在工作的通道,減1計數器將繼續現行操作到回零時再作變更。
使通道複位,不等待減1計數器回零,就立刻中止通道行操作。和硬件複位一樣,從時間常數寄存器讀出的內容,是上次裝入的時間常數。每當減1計數器回零時,時間常數寄存器立即將其內容裝入減1計數器,通道自動繼續現行操作。
當一個已經開始工作的通道,我們送入一個通道控製字是,三者的區別是送入的通道控製字,不等待減1計數器回零,就立即中止通道的工作,等待裝入時間常數來啟動它重新工作。采用這種方式,可以使在規定時間發出一個單脈衝,下一個寫入通道的,將是新的時間常數。但兩者不同的是,在裝入控製字之後,在未裝入新的時間常數之前,通道將繼續現行操作而不受影響。
若送入的通道控製,立刻則使通道停止現行操作而複位。它控製字的區別是,要使通道重新工作,隻好按操作規定,重新裝入通道控製字和時間常數。