本發(fā)明涉及進(jìn)行計(jì)算機(jī)處理的裝置中的使用了計(jì)時(shí)器的時(shí)間測量技術(shù),尤其涉及適于以低成本進(jìn)行高速動作時(shí)的時(shí)間測量動作的高精度化的時(shí)間測量裝置、微型控制器、程序以及時(shí)間測量方法。
背景技術(shù):作為進(jìn)行計(jì)算機(jī)處理的裝置,存在一種將計(jì)算機(jī)系統(tǒng)整體集成于1個(gè)半導(dǎo)體芯片的微型控制器。通常,該微型控制器具備多個(gè)用于生成動作時(shí)鐘的振蕩器,能夠根據(jù)目的、用途來切換CPU(CentralProcessingUnit)、計(jì)時(shí)器等外圍電路的動作時(shí)鐘。例如,在通常動作中,為了抑制消耗電力而選擇低速的時(shí)鐘作為這些動作時(shí)鐘,需要以高速進(jìn)行處理時(shí),切換為高速的時(shí)鐘。作為一個(gè)例子,在進(jìn)行無線通信的系統(tǒng)中,在利用無線開始接收指令前,處于以低速的時(shí)鐘進(jìn)行動作,等待接收指令的狀態(tài)。由此,能夠減少等待接收指令的狀態(tài)下的消耗電力。這里,存在一種進(jìn)行無線通信的系統(tǒng),具有狀態(tài)以一定間隔發(fā)生變化,并利用無線發(fā)送該狀態(tài)的裝置a、和利用無線接收裝置a的狀態(tài),以與裝置a相同的間隔切換與裝置a的狀態(tài)對應(yīng)的動作的裝置b,即使在因某些妨礙切斷了來自裝置a的無線時(shí),裝置b也以以前接收到的間隔為基礎(chǔ)繼續(xù)動作。在該系統(tǒng)中,為了裝置b在來自裝置a的無線被切斷的情況下也能夠與裝置a取得同步,需要準(zhǔn)確地測量接收到的指令的時(shí)間間隔,該情況下,需要提高測量指令的時(shí)間間隔的計(jì)時(shí)器的精度。作為用于該用途的安裝于微型控制器的時(shí)鐘振蕩器的代表,可以舉出晶體振蕩器、RC振蕩器。晶體振蕩器是在外部附加石英振子來使用的振蕩器,能夠生成高精度的時(shí)鐘。另外,RC振蕩器由于不需要在微型控制器的外部安裝部件,而能夠在內(nèi)部集成部件,因此能夠比晶體振蕩器更廉價(jià)地構(gòu)建。但是,在RC振蕩器中,與晶體振蕩器相比,不能生成高精度的時(shí)鐘。因此,RC振蕩器不能用于需要準(zhǔn)確的測量時(shí)間的用途。為解決該問題,專利文獻(xiàn)1提出了下述技術(shù),即在利用使用了RC振蕩器的計(jì)時(shí)器的情況下也可以進(jìn)行準(zhǔn)確的時(shí)間測量。使用圖15的時(shí)序圖來說明該專利文獻(xiàn)1所述的微型控制器的動作。如圖15所示,根據(jù)因RC振蕩器的基本時(shí)鐘的上升而產(chǎn)生的中斷請求寄存器的中斷請求信號的上升,檢測RC振蕩器的時(shí)鐘的1個(gè)周期的前端(圖中,用帶圓圈的1表示)與1個(gè)周期的結(jié)束(圖中,用帶圓圈的2表示),進(jìn)行該期間發(fā)生的高精度、高頻率的晶體振蕩器的基本時(shí)鐘的計(jì)數(shù)值(count值)的確認(rèn)。這樣,通過利用高精度、高頻率的晶體振蕩器,測量RC振蕩器的時(shí)鐘的1個(gè)周期,來求RC振蕩器的實(shí)際的準(zhǔn)確的周期,并計(jì)算求得的實(shí)際的周期與RC振蕩器的正常時(shí)的周期(期待計(jì)數(shù)值)的比率,基于算出的比率來求修正系數(shù)。然后,通過將該修正系與以RC振蕩器作為輸入的計(jì)時(shí)器的計(jì)數(shù)值相乘,來進(jìn)行基于計(jì)時(shí)器的測量時(shí)間的修正。但是,該技術(shù)存在以下的問題。第1個(gè)問題點(diǎn)在于下述方面,即專利文獻(xiàn)1的技術(shù)需要可以直接測量RC振蕩器的時(shí)鐘周期那樣的高頻率、且昂貴的石英振子,從而會喪失RC振蕩電路帶來的低成本化的優(yōu)點(diǎn)。通常,晶體振蕩器的頻率越高,價(jià)格越昂貴,因此在以高頻率的振蕩時(shí)鐘動作的計(jì)算機(jī)系統(tǒng)中,對計(jì)時(shí)器的控制使用晶體振蕩器會提高成本。因此,為了使微型控制器的動作能夠?qū)崿F(xiàn)廉價(jià)且高速化,優(yōu)選使RC振蕩器的時(shí)鐘高速化而用作系統(tǒng)時(shí)鐘。但是,該情況下,專利文獻(xiàn)1的技術(shù)還需要高頻率的石英振子。此外,在專利文獻(xiàn)1的微型控制器中,雖然選擇晶體振蕩器的時(shí)鐘作為高速動作時(shí)的系統(tǒng)時(shí)鐘而使用,但為使該微型控制器更高速地動作,需要昂貴的晶體振蕩器,因此成本變高。第2個(gè)問題點(diǎn)在于下述方面,即、在利用專利文獻(xiàn)1的技術(shù)求準(zhǔn)確的修正系數(shù)時(shí),RC振蕩器必須比晶體振蕩器的頻率低,因此不能提高以該低頻率的RC振蕩器的基本時(shí)鐘為輸入的計(jì)時(shí)器的分辨能力。在提高計(jì)時(shí)器的分辨能力時(shí),必須使用使高頻率的基本時(shí)鐘振蕩的RC振蕩器。RC振蕩器是高頻率的也是較廉價(jià)的,在專利文獻(xiàn)1的技術(shù)中,為了提高計(jì)時(shí)器的分辨能力,必須同時(shí)使用高頻率的晶體振蕩器,因此成本會變高。此外,如專利文獻(xiàn)1中記載的那樣,若對RC振蕩器的頻率進(jìn)行分頻,則使用低頻率的晶體振蕩器也能夠提高計(jì)時(shí)器的分辨能力。但是,該情況下,必須新增加分頻器。此外,作為分頻器,例如存在專利文獻(xiàn)2所述的分頻器。另外,在這樣使用了分頻器的情況下,RC振蕩器的基本時(shí)鐘的1個(gè)周期被分頻而變長,因此在求修正系數(shù)時(shí)進(jìn)行的、對RC振蕩器的1個(gè)時(shí)鐘期間產(chǎn)生的晶體振蕩器的時(shí)鐘進(jìn)行計(jì)數(shù)的處理的時(shí)間會增加。第3個(gè)問題點(diǎn)在于下述方面,即、在專利文獻(xiàn)1中通過進(jìn)行輪詢實(shí)現(xiàn)修正系數(shù)計(jì)算時(shí)進(jìn)行的晶體振蕩器的時(shí)鐘的前端與終端的檢索、和使用計(jì)時(shí)器修正系數(shù)來進(jìn)行端口輸出的技術(shù),因此微型控制器內(nèi)的CPU總是處于動作的狀態(tài),不能切換為節(jié)能模式。另外,輪詢過程中,CPU不能執(zhí)行其他的處理。第4個(gè)問題點(diǎn)在于下述方面,即、在求修正系數(shù)時(shí),使用以高頻率的晶體振蕩器的時(shí)鐘為輸入的計(jì)時(shí)器針對低頻率的RC振蕩器的1個(gè)周期進(jìn)行計(jì)數(shù),因此在RC振蕩器與晶體振蕩器的速度差大的情況下,計(jì)時(shí)器的計(jì)數(shù)值有時(shí)會溢出。此外,作為用于控制由計(jì)時(shí)器執(zhí)行的對振蕩器的時(shí)鐘數(shù)的計(jì)數(shù)動作的技術(shù),例如在專利文獻(xiàn)3、4中有記載。在專利文獻(xiàn)3中,公開了下述技術(shù),即:為了修正第1時(shí)鐘信號的頻率的誤差,以比第1時(shí)鐘信號的頻率低的第2時(shí)鐘信號為輸入,利用脈沖數(shù)計(jì)數(shù)器來對該第2時(shí)鐘信號的1個(gè)周期所包含的第1時(shí)鐘信號的脈沖數(shù)進(jìn)行計(jì)數(shù),在運(yùn)算部中,使用該脈沖數(shù)計(jì)數(shù)器計(jì)數(shù)出的脈沖數(shù)和預(yù)先確定的基準(zhǔn)脈沖數(shù)來計(jì)算修正信息,在修正信號輸出部中,基于運(yùn)算部計(jì)算出的修正信息來輸出時(shí)鐘修正信號,在輸出端口,基于修正信號輸出部輸出的時(shí)鐘修正信號來修正第1時(shí)鐘信號的輸出。但是,該技術(shù)是基于由晶體振蕩器生成的第2時(shí)鐘信號的1個(gè)周期,針對向計(jì)時(shí)器輸入的由RC振蕩器等生成的第1時(shí)鐘信號的一部分,按照不向計(jì)時(shí)器傳遞方式切去信號,對時(shí)鐘自身進(jìn)行加工的技術(shù),因此需要增加構(gòu)成。另外,在專利文獻(xiàn)4中公開了下述技術(shù),即:按每一個(gè)基準(zhǔn)振蕩器的1個(gè)周期對RC振蕩器的頻率進(jìn)行計(jì)數(shù),若計(jì)數(shù)值在某一定值以上,則增加開關(guān)晶體管的數(shù)量,增加RC振蕩器中的全部電容值來減小輸出振蕩頻率,若計(jì)數(shù)數(shù)比某一定值小,則減少開關(guān)晶體管的數(shù)量,減少RC振蕩器中的全部電容值來增大輸出振蕩頻率,通過反復(fù)進(jìn)行這一步驟,按照利用內(nèi)部的其他的基準(zhǔn)振蕩器自動地將振蕩頻率穩(wěn)定為目標(biāo)值的方式進(jìn)行控制,該專利文獻(xiàn)4中的技術(shù)要增加開關(guān)晶體管的數(shù)量來加工時(shí)鐘,與專利文獻(xiàn)3同樣需要使構(gòu)成增加。專利文獻(xiàn)1:日本特開平10-49251號公報(bào)專利文獻(xiàn)2:日本特開平05-48433號公報(bào)專利文獻(xiàn)3:日本特開2006-309479號公報(bào)專利文獻(xiàn)4:日本特開平08-139593號公報(bào)
技術(shù)實(shí)現(xiàn)要素:本發(fā)明為解決上述問題點(diǎn)而提出,目的在于提供一種能夠以低成本進(jìn)行設(shè)置在計(jì)算機(jī)裝置中計(jì)時(shí)器進(jìn)行高速動作時(shí)的高精度的時(shí)間測量的時(shí)間測量裝置、微型控制器,程序以及時(shí)間測量方法。為了達(dá)成上述目的,本發(fā)明的時(shí)間測量裝置具備下述構(gòu)成:計(jì)數(shù)單元,其對第1基本時(shí)鐘信號的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù);導(dǎo)出單元,其使用比所述第1基本時(shí)鐘信號的振蕩頻率低、且振蕩精度高的第2基本時(shí)鐘信號的規(guī)定周期下的由所述計(jì)數(shù)單元計(jì)數(shù)出的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)、和作為與所述第2基本時(shí)鐘信號的規(guī)定周期對應(yīng)的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)而預(yù)先計(jì)數(shù)出的基準(zhǔn)時(shí)鐘數(shù),來導(dǎo)出表示所述計(jì)數(shù)單元計(jì)數(shù)的時(shí)鐘數(shù)相對于所述基準(zhǔn)時(shí)鐘數(shù)的變動量的物理量;修正單元,其根據(jù)所述導(dǎo)出單元導(dǎo)出的所述物理量,對表示與作為測量對象的時(shí)間對應(yīng)的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)的期待計(jì)數(shù)值進(jìn)行修正;以及輸出單元,當(dāng)所述計(jì)數(shù)單元計(jì)數(shù)的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)達(dá)到所述修正單元修正后的修正期待計(jì)數(shù)值時(shí),其輸出表示已經(jīng)達(dá)到該修正期待計(jì)數(shù)值的時(shí)間信息。另外,為了達(dá)成上述目的,本發(fā)明的微型控制器構(gòu)成為具備上述記載的時(shí)間測量裝置。另外,為了達(dá)成上述目的,本發(fā)明的程序是用于使計(jì)算機(jī)作為上述記載的時(shí)間測量裝置中的各單元而發(fā)揮作用的程序。另外,為了達(dá)成上述目的,本發(fā)明的時(shí)間測量方法是利用基于程序的計(jì)算機(jī)裝置來測量時(shí)間的方法,該方法包括:計(jì)數(shù)步驟,對第1基本時(shí)鐘信號的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù);導(dǎo)出步驟,使用比所述第1基本時(shí)鐘信號的振蕩頻率低、且振蕩精度高的第2基本時(shí)鐘信號的規(guī)定周期下的通過所述計(jì)數(shù)步驟計(jì)數(shù)出的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)和作為與所述第2基本時(shí)鐘信號的規(guī)定周期對應(yīng)的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)而預(yù)先計(jì)數(shù)的基準(zhǔn)時(shí)鐘數(shù),來導(dǎo)出表示由所述計(jì)數(shù)步驟計(jì)數(shù)的時(shí)鐘數(shù)相對于所述基準(zhǔn)時(shí)鐘數(shù)的變動量的物理量;修正步驟,根據(jù)由所述導(dǎo)出步驟導(dǎo)出的所述物理量,對表示與作為測量對象的時(shí)間對應(yīng)的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)的期待計(jì)數(shù)值進(jìn)行修正;以及輸出步驟,當(dāng)在所述計(jì)數(shù)步驟中計(jì)數(shù)出的所述第1基本時(shí)鐘信號的時(shí)鐘數(shù)達(dá)到由所述修正步驟修正后的修正期待計(jì)數(shù)值時(shí),輸出表示已經(jīng)達(dá)到該修正期待計(jì)數(shù)值的時(shí)間信息。發(fā)明的效果根據(jù)本發(fā)明,能夠以低成本進(jìn)行設(shè)置在計(jì)算機(jī)裝置中的計(jì)時(shí)器的高速動作時(shí)的高精度的時(shí)間測量。附圖說明圖1是表示本發(fā)明所涉及的微型控制器所具備的時(shí)間測量裝置的功能構(gòu)成例的框圖。圖2是表示設(shè)置了本發(fā)明所涉及的時(shí)間測量裝置的微型控制器的第1構(gòu)成例的框圖。圖3是表示圖2中的微型控制器的本發(fā)明所涉及的第1處理動作例的流程圖。圖4是表示圖2中的微型控制器的時(shí)間測量修正時(shí)的第1動作例的時(shí)序圖。圖5是表示圖2中的微型控制器的本發(fā)明所涉及的第2處理動作例的流程圖。圖6是表示圖2中的微型控制器的時(shí)間測量修正時(shí)的第2動作例的時(shí)序圖。圖7是表示設(shè)置了本發(fā)明所涉及的時(shí)間測量裝置的微型控制器的第2構(gòu)成例的框圖。圖8是表示圖7中的微型控制器的本發(fā)明所涉及的第1處理動作例的流程圖。圖9是表示圖7中的微型控制器的本發(fā)明所涉及的第2處理動作例的流程圖。圖10是表示圖7中的微型控制器的時(shí)間測量修正時(shí)的動作例的時(shí)序圖。圖11是表示圖7中的微型控制器的本發(fā)明所涉及的第3處理動作例的流程圖。圖12是表示圖7中的微型控制器的本發(fā)明所涉及的第4處理動作例的流程圖。圖13是表示設(shè)置了本發(fā)明所涉及的時(shí)間測量裝置的微型控制器的第3構(gòu)成例的框圖。圖14是表示設(shè)置了本發(fā)明所涉及的時(shí)間測量裝置的微型控制器的第4構(gòu)成例的框圖。圖15是表示現(xiàn)有的微型控制器中的時(shí)間測量修正時(shí)的動作例的時(shí)序圖。其中,附圖標(biāo)記的說明如下:1、1a、1b、1c、100微型控制器;2RC振蕩器;2aPLL振蕩電路;3基本時(shí)鐘(第1基本時(shí)鐘);4晶體振蕩器;5基本時(shí)鐘(第2基本時(shí)鐘);6基本時(shí)鐘選擇器;7系統(tǒng)時(shí)鐘;8計(jì)時(shí)器(計(jì)數(shù)單元);9中斷請求寄存器(同步信號生成單元);10中斷請求信號;11總線;12端口;13CPU;14、14a、14bROM;15時(shí)鐘波形;16時(shí)間;17時(shí)鐘波形;18時(shí)間;19修正時(shí)間;20中斷控制器;21計(jì)時(shí)器;22分頻器;100微型控制器;101時(shí)間測量裝置;101a計(jì)數(shù)單元;101b導(dǎo)出單元;101c修正單元;101d輸出單元;101e期待計(jì)數(shù)值。具體實(shí)施方式以下,使用附圖,對實(shí)施本發(fā)明用的方式例進(jìn)行說明。圖1表示本發(fā)明所涉及的微型控制器100所具備的時(shí)間測量裝置101的功能構(gòu)成例,本例的時(shí)間測量裝置101具備計(jì)數(shù)部101a、導(dǎo)出部101b、修正部101c以及輸出部101d作為執(zhí)行本發(fā)明所涉及的動作的功能。計(jì)數(shù)部101a對第1基本時(shí)鐘信號的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù),導(dǎo)出部101b使用比第1基本時(shí)鐘信號的振蕩頻率低、振蕩精度高的第2基本時(shí)鐘信號的規(guī)定周期下的由計(jì)數(shù)部101a計(jì)數(shù)出的第1基本時(shí)鐘信號的時(shí)鐘數(shù)、和作為與第2基本時(shí)鐘信號的規(guī)定周期對應(yīng)的第1基本時(shí)鐘信號的時(shí)鐘數(shù)而預(yù)先計(jì)數(shù)的基準(zhǔn)時(shí)鐘數(shù),導(dǎo)出表示計(jì)數(shù)部101a計(jì)數(shù)出的時(shí)鐘數(shù)相對于基準(zhǔn)時(shí)鐘數(shù)的變動量的物理量,修正部101c根據(jù)導(dǎo)出部101b導(dǎo)出的物理量,對表示與作為測量對象的時(shí)間對應(yīng)的第1基本時(shí)鐘信號的時(shí)鐘數(shù)的、存儲在存儲裝置中的期待計(jì)數(shù)值101e進(jìn)行修正,當(dāng)計(jì)數(shù)部101a計(jì)數(shù)出的第1基本時(shí)鐘信號的時(shí)鐘數(shù)達(dá)到由修正部101c修正過的修正期待計(jì)數(shù)值時(shí),輸出部101d輸出表示達(dá)到該修正期待計(jì)數(shù)值的時(shí)間信息。通過具備設(shè)置有這樣的各處理部的構(gòu)成的時(shí)間測量裝置101,微型控制器100能夠以低成本進(jìn)行基于高速動作時(shí)的計(jì)時(shí)器功能的高精度的時(shí)間測量。接下來,使用圖2~圖14,對具備這樣的時(shí)間測量裝置的微型控制器進(jìn)行詳細(xì)的說明。圖2是表示本發(fā)明的第1方式例的微型控制器的構(gòu)成圖,本例的微型控制器1具備:ROM14,其保存控制包含本發(fā)明的時(shí)間測量方法的微型控制器1的處理動作的程序;CPU13,其讀出保存在ROM14中的各程序來執(zhí)行計(jì)算機(jī)處理;微型控制器內(nèi)部的數(shù)據(jù)通行的總線11;系統(tǒng)時(shí)鐘7;進(jìn)行與外部接口的端口12;生成第1基本時(shí)鐘3的RC振蕩器2;生成第2基本時(shí)鐘5的晶體振蕩器4;基本時(shí)鐘選擇器6,其選擇將第1以及第2基本時(shí)鐘的哪一個(gè)作為系統(tǒng)時(shí)鐘7輸出;計(jì)時(shí)器8,其將系統(tǒng)時(shí)鐘7計(jì)數(shù)為時(shí)間信息;以及與第2基本時(shí)鐘5同步地輸出中斷請求信號的中斷請求寄存器9。此外,通過CPU13讀取并執(zhí)行存儲在ROM14中的本發(fā)明所涉及的時(shí)間測量用程序,構(gòu)成包含本發(fā)明的導(dǎo)出單元、修正單元以及輸出單元等各單元。另外,計(jì)時(shí)器8相當(dāng)于本發(fā)明的計(jì)數(shù)單元,中斷請求寄存器9相當(dāng)于本發(fā)明的同步信號生成單元。在本例的微型控制器1中,RC振蕩器2生成振蕩頻率高的第1基本時(shí)鐘3,晶體振蕩器4生成比RC振蕩器2的振蕩頻率低的高精度的第2基本時(shí)鐘5。而且,基本時(shí)鐘選擇器6選擇第1基本時(shí)鐘3與第2基本時(shí)鐘5中的任意一個(gè)作為系統(tǒng)時(shí)鐘7,計(jì)時(shí)器8對基本時(shí)鐘選擇器6選擇的第1基本時(shí)鐘3與第2基本時(shí)鐘5的任意一個(gè)的系統(tǒng)時(shí)鐘7的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù),CPU13在計(jì)時(shí)器8的計(jì)數(shù)值成為與預(yù)先設(shè)定的時(shí)間相當(dāng)?shù)闹担ㄆ诖?jì)數(shù)值)之前,反復(fù)進(jìn)行確認(rèn)計(jì)時(shí)器8的計(jì)數(shù)值的動作。在這樣的構(gòu)成中,本例的微型控制器1使用來自RC振蕩器2的高頻率的振蕩時(shí)鐘信號,即第1基本時(shí)鐘3作為系統(tǒng)時(shí)鐘7,來進(jìn)行高速的處理動作,使用來自晶體振蕩器4的低頻率的振蕩時(shí)鐘信號,即基本時(shí)鐘5作為系統(tǒng)時(shí)鐘7,來進(jìn)行低速的處理動作。這樣,圖4所示的本例的微型控制器1使用來自RC振蕩器2的振蕩頻率高的基本時(shí)鐘3作為系統(tǒng)時(shí)鐘,能夠以低成本進(jìn)行高速的處理。但是,在RC振蕩器2中,與晶體振蕩器4相比,不能生成高精度的時(shí)鐘信號,因此高速處理時(shí)的計(jì)時(shí)器8中的計(jì)數(shù)動作會產(chǎn)生誤差,不能測量準(zhǔn)確的時(shí)間。為了避免該問題,在本例的微型控制器1中,通過CPU13讀出并執(zhí)行存儲在ROM14中的本發(fā)明的時(shí)間測量用的程序,從而使用來自RC振蕩器2的振蕩頻率高的基本時(shí)鐘3作為系統(tǒng)時(shí)鐘,來修正進(jìn)行高速處理時(shí)的使用了計(jì)時(shí)器8的時(shí)間測量處理中產(chǎn)生的誤差。即、CPU13利用執(zhí)行存儲于ROM14中的程序而安裝的時(shí)間測量功能,當(dāng)計(jì)時(shí)器8計(jì)數(shù)出的高速處理時(shí)的來自RC振蕩器2的基本時(shí)鐘3的時(shí)鐘數(shù)變?yōu)轭A(yù)先確定的期待計(jì)數(shù)值時(shí),輸出與該期待計(jì)數(shù)值建立了對應(yīng)關(guān)系的時(shí)間信息,這樣,在開始讀取基本時(shí)鐘3的時(shí)鐘數(shù)前,利用CPU13執(zhí)行存儲在ROM14中的程序而安裝的導(dǎo)出單元、修正單元以及輸出單元等各功能,如以下那樣,進(jìn)行伴隨RC振蕩器2的振蕩動作誤差的計(jì)時(shí)器8的時(shí)間測量的修正。首先,CPU13利用導(dǎo)出單元的功能,判別是否被輸入了來自振蕩精度高的晶體振蕩器4的第2基本時(shí)鐘5,若被輸入了該第2基本時(shí)鐘5,則取得該第2基本時(shí)鐘5的1個(gè)周期下的計(jì)時(shí)器8計(jì)數(shù)出的第1基本時(shí)鐘3的時(shí)鐘數(shù),導(dǎo)出表示得到的實(shí)際的時(shí)鐘數(shù)相對于預(yù)先對第2基本時(shí)鐘5的1個(gè)周期規(guī)定的基本時(shí)鐘3的時(shí)鐘數(shù)(基準(zhǔn)時(shí)鐘數(shù))的變動量的物理量,然后,利用修正單元的功能,根據(jù)利用導(dǎo)出功能導(dǎo)出的物理量來修正期待計(jì)數(shù)值。此外,在本例中導(dǎo)出得到的實(shí)際的時(shí)鐘數(shù)與基準(zhǔn)時(shí)鐘數(shù)的比率作作為表示變動量的物理量,根據(jù)這樣導(dǎo)出的比率,來修正期待計(jì)數(shù)值。然后,若輸出計(jì)時(shí)器8計(jì)數(shù)出的基本時(shí)鐘3的時(shí)鐘數(shù)成為利用修正單元的功能修正而得的期待計(jì)數(shù)值,CPU13則利用輸出單元的功能來輸出時(shí)間信息。這樣,在本例的微型控制器1中,在由基于振蕩頻率高的RC振蕩器2的第1基本時(shí)鐘3的高速處理動作中的計(jì)時(shí)器8進(jìn)行時(shí)間測量時(shí),使用從振蕩頻率低但精度高的晶體振蕩器4輸入的第2基本時(shí)鐘5作為控制信號,進(jìn)行針對時(shí)間測量所使用的RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)的變動的修正,從而高精度地進(jìn)行高速的處理動作中的使用計(jì)時(shí)器8進(jìn)行時(shí)間測量,并且以低成本且高精度地進(jìn)行高速的處理。以下,使用圖3~圖6,詳細(xì)說明這樣的微型控制器1中的本例所涉及的計(jì)時(shí)器修正技術(shù)。首先,使用圖3的流程圖,說明用于求出以RC振蕩器2生成的高速的第1基本時(shí)鐘3使圖2的計(jì)時(shí)器8動作時(shí)的、用于提高使用了計(jì)時(shí)器8的時(shí)間測量的精度的計(jì)時(shí)器修正系數(shù)的、CPU13基于程序而執(zhí)行的處理。按照選擇來自RC振蕩器2的基本時(shí)鐘3作為由計(jì)時(shí)器8計(jì)數(shù)的時(shí)鐘的方式來設(shè)定基本時(shí)鐘選擇器6(步驟S1),并將中斷請求寄存器9清零(初始化)(步驟S2)。通過輪詢(polling),判別有無來自中斷請求寄存器9的中斷請求信號的輸出(步驟S3),若有該中斷請求信號的輸出,則將中斷請求寄存器9和計(jì)時(shí)器8的值清零(初始化)(步驟S4、S5),通過繼續(xù)確認(rèn)是否輸出了下一個(gè)來自中斷請求寄存器9的中斷請求信號,來尋找下一個(gè)晶體振蕩器4的時(shí)鐘的1個(gè)周期的前端(步驟S6)。在該步驟S6的處理期間,通過計(jì)時(shí)器8對來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù)。在步驟S6的處理中,若發(fā)現(xiàn)下1個(gè)周期的前端,則讀取在該步驟S6的處理中計(jì)時(shí)器8計(jì)數(shù)出的值,即、來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)(步驟S7)。之后,根據(jù)該步驟S7的處理中讀取到的計(jì)時(shí)器8的計(jì)數(shù)值,求出計(jì)時(shí)器修正系數(shù)(步驟S8)。在本例中,該修正系數(shù)按照如下方式而求出。即,若將步驟S7的處理中實(shí)際讀取到的時(shí)鐘數(shù)作為實(shí)際時(shí)鐘數(shù)A,將來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期中的預(yù)先成為基準(zhǔn)的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)作為基準(zhǔn)時(shí)鐘數(shù)B,則修正系數(shù)C用以下的式子求出。“C=A/B”使用圖4的時(shí)序圖說明求這樣的修正系數(shù)時(shí)的、來自RC振蕩器2的第1基本時(shí)鐘3、來自晶體振蕩器4的第2基本時(shí)鐘5以及中斷請求寄存器9的中斷請求信號10的各信號的動作關(guān)系。圖4中的RC振蕩器的基本時(shí)鐘3以及晶體振蕩器的基本時(shí)鐘5分別相當(dāng)于圖2中的RC振蕩器2的第1基本時(shí)鐘3以及晶體振蕩器4的第2基本時(shí)鐘5,另外,圖4中的S2~S4、S6對應(yīng)圖3中的各處理步驟的附圖標(biāo)記S2~S4、S6。在S2時(shí)刻,圖2的CPU13通過圖3中的步驟S2的處理,將中斷請求寄存器9清零(初始化)。在S3時(shí)刻,中斷請求寄存器9檢測來自晶體振蕩器4的第2基本時(shí)鐘5中的1個(gè)周期的前端,生成中斷請求信號10。CPU13通過輪詢來探測該中斷請求寄存器9的中斷請求信號10的生成,在S4時(shí)刻,將中斷請求寄存器9的值清零(初始化)。此外,計(jì)時(shí)器8在該S3時(shí)刻一旦被清零(初始化)后,開始對來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù)。在S6時(shí)刻,中斷請求寄存器9檢測來自晶體振蕩器4的第2基本時(shí)鐘5中的下一個(gè)周期的前端,并生成中斷請求信號10。CPU13通過輪詢,探測該中斷請求寄存器9的下一中斷請求信號10的生成,并對中斷請求寄存器9的值清零(初始化)。這樣,CPU13讀取實(shí)際的來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù),求出修正系數(shù)。然后,基于圖5說明使用這樣求出的修正系數(shù),來提高使用了計(jì)時(shí)器8的時(shí)間測量的精度時(shí)的處理內(nèi)容。首先,利用基本時(shí)鐘選擇器6,將由計(jì)時(shí)器8計(jì)數(shù)的時(shí)鐘設(shè)定為來自RC振蕩器2的基本時(shí)鐘3(步驟S9)。此外,預(yù)先,將由計(jì)時(shí)器8測量的所希望的時(shí)間除以預(yù)先規(guī)定的基準(zhǔn)時(shí)鐘數(shù)而得的值作為所希望的計(jì)時(shí)器8的期待值(期待計(jì)數(shù)值)求出,并存儲在ROM14等存儲裝置中(步驟S10),并且將對在通過該步驟S10的處理求出的所希望的計(jì)時(shí)器的期待計(jì)數(shù)值乘以在圖3的步驟S8的處理中求出的計(jì)時(shí)器修正系數(shù)而得值作為修正后的計(jì)時(shí)器的期待計(jì)數(shù)值(修正期待計(jì)數(shù)值)求出,并存儲在ROM14等存儲裝置中(步驟S11)。即、基于“修正后的計(jì)時(shí)器的期待值=所希望的計(jì)時(shí)器的期待值×計(jì)時(shí)器修正系數(shù)”的式子來計(jì)算。預(yù)先規(guī)定的基準(zhǔn)時(shí)鐘數(shù)為所希望的RC振蕩器2的周期、即來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自正常時(shí)的RC振蕩器2的第2基本時(shí)鐘的時(shí)鐘數(shù)。然后,將計(jì)時(shí)器8暫時(shí)清零(初始化)(步驟S12),讀取之后的計(jì)時(shí)器8的計(jì)數(shù)值(步驟S13),在該計(jì)時(shí)器8的計(jì)數(shù)值小于修正后的計(jì)時(shí)器的期待計(jì)數(shù)值的期間(步驟S14),返回進(jìn)行步驟S13的處理,當(dāng)計(jì)時(shí)器8的計(jì)數(shù)值達(dá)到修正后的計(jì)時(shí)器的期待計(jì)數(shù)值時(shí),經(jīng)由端口12輸出表示與該期待計(jì)數(shù)值相當(dāng)?shù)臅r(shí)間已經(jīng)經(jīng)過的時(shí)間信息(步驟S15)。使用圖6的時(shí)序圖說明求上述的修正系數(shù)的處理、以及使用求出的修正系數(shù)來修正計(jì)時(shí)器的時(shí)間測量動作時(shí)的誤差的處理的詳細(xì)內(nèi)容。這里,作為求修正系數(shù)的例子,將來自晶體振蕩器4的第2基本時(shí)鐘5的振蕩周期設(shè)為1.0msec,將正常動作時(shí)的所希望的來自RC振蕩器2的第1基本時(shí)鐘3的振蕩周期如圖6中的時(shí)鐘波形15所示那樣設(shè)為1.0μsec。如果,當(dāng)來自RC振蕩器2的第1基本時(shí)鐘3的實(shí)際的振蕩周期如圖6的時(shí)鐘波形17所示那樣變動成1.1μsec時(shí),在圖3的步驟S7的處理中讀取的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)為909。即、來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期為1.0msec,來自RC振蕩器2的第1基本時(shí)鐘3的實(shí)際的振蕩周期變動成1.1μsec時(shí),計(jì)時(shí)器8在第2基本時(shí)鐘5的1個(gè)周期的1.0msec期間讀取的第1基本時(shí)鐘3的時(shí)鐘數(shù)為“1.0msec/1.1μsec=909”。當(dāng)來自RC振蕩器2的第1基本時(shí)鐘3的振蕩周期為希望的振蕩周期1.0μsec時(shí),在來自晶體振蕩器4的第2基本時(shí)鐘5的周期1.0msec中,由計(jì)時(shí)器8計(jì)數(shù)的基準(zhǔn)時(shí)鐘數(shù)為1000計(jì)數(shù)。因此,當(dāng)在圖3的步驟S7的處理中讀取到的第1基本時(shí)鐘3的時(shí)鐘數(shù)為909時(shí),根據(jù)“修正系數(shù)C=實(shí)際時(shí)鐘數(shù)A/基準(zhǔn)時(shí)鐘數(shù)B”,計(jì)時(shí)器8的修正系數(shù)C為“0.909=909/1000”,計(jì)時(shí)器8的修正系數(shù)C=0.909被求出。然后,說明使用這樣求出的計(jì)時(shí)器修正系數(shù)(C=0.909),來提高來自RC振蕩器2的高振蕩頻率下的、使用了計(jì)時(shí)器8的時(shí)間測量的精度的技術(shù)。在進(jìn)行修正前的微型控制器1中,如果,RC振蕩器2的希望周期1.0μsec延長為1.1μsec,則如圖6中的時(shí)間16與時(shí)鐘波形17、18所示那樣,使用計(jì)時(shí)器8測量的時(shí)間會從希望的1.0msec延長至1.1msec。為了修正這樣的不良狀況,首先,基于“所希望的計(jì)時(shí)器的期待值=所希望的測量對象時(shí)間/所希望的基本時(shí)鐘的周期”的式子,將圖5的步驟S10的處理中存儲的所希望的計(jì)時(shí)器的期待值(期待計(jì)數(shù)值)求出為“1000=1.0msec/1.0μsec”。然后,對這樣求出的所希望的計(jì)時(shí)器的期待計(jì)數(shù)值(=1000)乘以以基于圖3的步驟S8的處理而求出的計(jì)時(shí)器修正系數(shù)(=0.909),來求修正后的計(jì)時(shí)器的期待計(jì)數(shù)值(修正期待計(jì)數(shù)值)。在本圖6的例子中,修正期待計(jì)數(shù)值為“1000×0.909=909”。之后,開始計(jì)時(shí)器8中的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù),在該計(jì)時(shí)器8的計(jì)數(shù)值達(dá)到修正期待計(jì)數(shù)值(=909)之前,讀取計(jì)時(shí)器8計(jì)數(shù)的時(shí)鐘數(shù)。在圖6的例子中,由于修正后的計(jì)時(shí)器的期待計(jì)數(shù)值(修正期待計(jì)數(shù)值)為909,所以在909×1.1μsec=1.0msec期間,反復(fù)進(jìn)行計(jì)時(shí)器8的計(jì)數(shù)值的讀取。結(jié)果為,使用計(jì)時(shí)器8測量的時(shí)間為1.0msec,測量的時(shí)間被修正。例如,當(dāng)經(jīng)由微型控制器1的端口12從外部端子產(chǎn)生1.0msec的脈沖信號時(shí),若不使用該修正控制技術(shù),則為1.1msec,若使用本例的修正控制技術(shù),則能夠產(chǎn)生1.0msec的脈沖信號寬度。如以上那樣,在第1方式例中,以來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)時(shí)鐘的周期為基準(zhǔn),以基于測量該1個(gè)周期下的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)所得的結(jié)果的比率為基礎(chǔ),來修正輸入了來自RC振蕩器2的第1基本時(shí)鐘3的計(jì)時(shí)器8的時(shí)間測量中使用的期待計(jì)數(shù)值。因此,求出準(zhǔn)確的修正系數(shù)的情況,以使用高頻率的RC振蕩器2和低頻率的晶體振蕩器4為條件。為提高計(jì)時(shí)器8的分辨能力,需要使用高頻率的RC振蕩器2,但在本例中,在使用高振蕩頻率的RC振蕩器2進(jìn)行計(jì)時(shí)器8中的時(shí)鐘數(shù)的計(jì)數(shù)的情況下也能夠使用低頻率、且廉價(jià)的高精度的晶體振蕩器4來進(jìn)行使用了計(jì)時(shí)器8的時(shí)間測量的修正。為了提高計(jì)時(shí)器8的分辨能力,如現(xiàn)有的專利文獻(xiàn)1所記載的技術(shù)那樣,對來自晶體振蕩器4的第2基本時(shí)鐘進(jìn)行分頻也是有效的,但在本例中,使用高頻率的RC振蕩器2,不對來自晶體振蕩器4的第2基本時(shí)鐘進(jìn)行分頻也能夠提高計(jì)時(shí)器8的分辨能力,與進(jìn)行分頻的現(xiàn)有技術(shù)相比,計(jì)算修正系數(shù)的處理時(shí)間變短。以上,如使用圖2~圖6說明的那樣,在本第1方式例中,CPU13讀取并執(zhí)行存儲在ROM14中的本發(fā)明的時(shí)間測量用的程序,從而構(gòu)成本發(fā)明的時(shí)間測量裝置中的包括導(dǎo)出單元、修正單元以及輸出單元的各單元,通過使用這些各單元,能夠以低成本實(shí)現(xiàn)將振蕩頻率高的RC振蕩器2的時(shí)鐘數(shù)作為系統(tǒng)時(shí)鐘來進(jìn)行高速的處理動作的計(jì)算機(jī)裝置中的計(jì)時(shí)器的時(shí)間測量動作的高精度化。即、如圖2所示,在本例的微型控制器1中,利用計(jì)時(shí)器8(計(jì)數(shù)單元),對用作高速處理時(shí)的系統(tǒng)時(shí)鐘的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù),利用作為CPU13的導(dǎo)出單元的功能,在被輸入了來自晶體振蕩器4的、比第1基本時(shí)鐘信號的振蕩頻率低且振蕩精度高的基本時(shí)鐘5(第2基本時(shí)鐘信號)的情況下,使計(jì)時(shí)器8對輸入的第2基本時(shí)鐘信號的1個(gè)周期下的第1基本時(shí)鐘信號的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù),使用計(jì)時(shí)器8計(jì)數(shù)出的時(shí)鐘數(shù)與針對第2基本時(shí)鐘信號的1個(gè)周期而預(yù)先確定的第1基本時(shí)鐘信號的時(shí)鐘數(shù),即、基準(zhǔn)時(shí)鐘數(shù),導(dǎo)出表示計(jì)時(shí)器8計(jì)數(shù)出的第2基本時(shí)鐘信號的1個(gè)周期下的第1基本時(shí)鐘信號的時(shí)鐘數(shù)相對于基準(zhǔn)時(shí)鐘數(shù)的變動量的物理量,根據(jù)這樣導(dǎo)出的物理量,利用作為修正單元的功能,來修正對第1基本時(shí)鐘信號的時(shí)鐘數(shù)預(yù)先確定的期待計(jì)數(shù)值,而且,利用作為輸出單元的功能,讀取計(jì)時(shí)器8計(jì)數(shù)出的第1基本時(shí)鐘信號的時(shí)鐘數(shù),當(dāng)讀取到的時(shí)鐘數(shù)達(dá)到用修正單元的功能修正過的期待計(jì)數(shù)值時(shí),輸出表示與該期待計(jì)數(shù)值相當(dāng)?shù)臅r(shí)間已經(jīng)經(jīng)過的時(shí)間信息。其中,在本第1方式例的微型控制器1中,具備按每一個(gè)第2基本時(shí)鐘信號的周期生成同步信號的中斷請求寄存器9(生成單元),CPU13利用作為導(dǎo)出單元的功能進(jìn)行輪詢,判別中斷請求寄存器是否生成了同步信號,若生成同步信號,則在生成下一個(gè)同步信號前的期間,使計(jì)時(shí)器8執(zhí)行對來自晶體振蕩器4的基本時(shí)鐘5(第2基本時(shí)鐘信號)的1個(gè)周期下的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)的時(shí)鐘數(shù)的計(jì)數(shù),并依次讀取該計(jì)數(shù)值,從而讀取來自晶體振蕩器4的基本時(shí)鐘5(第2基本時(shí)鐘信號)的1個(gè)周期下的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)的時(shí)鐘數(shù),并將讀取到的時(shí)鐘數(shù)與基準(zhǔn)時(shí)鐘數(shù)的比率作為物理量導(dǎo)出,利用作為修正單元的功能,根據(jù)用導(dǎo)出單元的功能導(dǎo)出的比率,來修正期待計(jì)數(shù)值,利用作為輸出單元的功能,進(jìn)行輪詢,判別計(jì)時(shí)器8計(jì)數(shù)的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)的時(shí)鐘數(shù)是否達(dá)到了利用修正單元的功能修正后的期待計(jì)數(shù)值,若達(dá)到,則輸出時(shí)間信息。另外,利用基本時(shí)鐘選擇器6,將來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)和來自晶體振蕩器4的基本時(shí)鐘5(第2基本時(shí)鐘信號)的任意一個(gè)選擇為系統(tǒng)時(shí)鐘7,計(jì)時(shí)器8對基本時(shí)鐘選擇器6選擇出的系統(tǒng)時(shí)鐘7的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù)。然后,使用圖7~圖10對第2方式例進(jìn)行說明。在上述的第1方式例中,通過輪詢來執(zhí)行在開始本發(fā)明的修正動作時(shí)作為控制信號輸入的來自晶體振蕩器4的基本時(shí)鐘5,在第2方式例中,通過中斷處理,輸入來自晶體振蕩器4的基本時(shí)鐘5。如圖7所示,本第2方式例中的微型控制器1a為代替設(shè)置圖4所示的第1方式例中的微型控制器1中的中斷請求寄存器9,而設(shè)置了中斷控制器20的構(gòu)成,其他的構(gòu)成相同,關(guān)于各構(gòu)成要素的說明在這里省略。中斷控制器20按每一個(gè)晶體振蕩器4的周期產(chǎn)生中斷,并且在計(jì)時(shí)器8的計(jì)數(shù)值達(dá)到例如設(shè)置在中斷控制器20內(nèi)的未圖示的計(jì)時(shí)器數(shù)據(jù)寄存器中的期待計(jì)數(shù)值的情況下,產(chǎn)生中斷。即使在由這樣的構(gòu)成組成的本第2方式例的微型控制器1a中,也能夠通過基于來自RC振蕩器2的高頻率的振蕩時(shí)鐘信號,即、基本時(shí)鐘3,來進(jìn)行高速的處理動作,能夠以低成本進(jìn)行高速的處理。而且,為了避免基于RC振蕩器2的基本時(shí)鐘3的高速處理時(shí)的計(jì)時(shí)器8中的時(shí)間測量動作的不良狀況,即使在本例的微型控制器1a中,也通過CPU13讀出并執(zhí)行保存在ROM14a中的用于執(zhí)行本發(fā)明的時(shí)間測量的程序,來修正高速處理時(shí)的使用了計(jì)時(shí)器8的時(shí)間測量動作中產(chǎn)生的誤差。這里,CPU13取得在基本時(shí)鐘5的1個(gè)周期中,由計(jì)時(shí)器8計(jì)數(shù)的基本時(shí)鐘3的時(shí)鐘數(shù),并將得到的時(shí)鐘數(shù)與針對基本時(shí)鐘5的1個(gè)周期預(yù)先確定為所希望的計(jì)數(shù)值的基本時(shí)鐘3的時(shí)鐘數(shù)的比率作為變動量導(dǎo)出,根據(jù)導(dǎo)出的比率,來修正期待計(jì)數(shù)值。由此,即使在本例的微型控制器1a中,也能夠高精度地進(jìn)行執(zhí)行基于來自RC振蕩器2的高頻率的振蕩時(shí)鐘信號的高速的處理動作時(shí)的、使用了計(jì)時(shí)器8的時(shí)間測量,能夠以低成本、且高精度進(jìn)行高速的處理。并且,本第2方式例的微型控制器1a例如具有節(jié)能模式,在該節(jié)能模式下,通過形成為使CPU13的動作停止,僅使外圍電路動作的狀態(tài)來降低微型控制器1a的消耗電力。第1方式例的微型控制器1通過CPU13輪詢中斷請求寄存器9來實(shí)現(xiàn)圖3所示的計(jì)算修正系數(shù)時(shí)進(jìn)行的晶體振蕩器4的時(shí)鐘的前端與終端的檢索,因此CPU13始終處于動作的狀態(tài),無法切換到節(jié)能模式。同樣地,在圖5所示的流程圖的步驟S15中的端口輸出處理中,第1方式例的微型控制器1的CPU13輪詢計(jì)時(shí)器8的計(jì)數(shù)值,當(dāng)計(jì)時(shí)器8的計(jì)數(shù)值比修正后的計(jì)時(shí)器的期待計(jì)數(shù)值大時(shí),進(jìn)行端口輸出,也無法切換到節(jié)能模式。與此相對,第2方式例的微型控制器1a通過設(shè)置有中斷控制器20,從而會使由于晶體振蕩器4的時(shí)鐘的上升而產(chǎn)生中斷。這樣,通過利用中斷控制器20的中斷,檢測在修正系數(shù)計(jì)算時(shí)進(jìn)行的晶體振蕩器4的時(shí)鐘的前端與終端的檢索,從而由于CPU13不需要動作,所以在晶體振蕩器4的時(shí)鐘的前端與終端的檢索中,能夠?qū)⑽⑿涂刂破?a向節(jié)能模式切換。另外,通過在圖5所示的流程圖的步驟S15中的端口輸出處理中,在成為修正后的計(jì)時(shí)器的期待計(jì)數(shù)值時(shí),中斷控制器20發(fā)生中斷,從而在計(jì)時(shí)器8計(jì)數(shù)的期間,也能夠?qū)⑽⑿涂刂破?a切換到節(jié)能模式。以下,使用圖8~圖10,對這樣的第2方式例的微型控制器1a中的本發(fā)明的時(shí)間測量處理動作進(jìn)行說明。使用圖8,說明在以RC振蕩器2生成的高頻率的基本時(shí)鐘3使圖7的計(jì)時(shí)器8動作時(shí),為提高使用了計(jì)時(shí)器8的時(shí)間測量精度而使用的計(jì)時(shí)器修正系數(shù)的求法。利用基本時(shí)鐘選擇器6,選擇來自RC振蕩器2的高頻率的基本時(shí)鐘3作為輸入計(jì)時(shí)器8的系統(tǒng)時(shí)鐘(步驟S1’),在從中斷控制器20產(chǎn)生晶體振蕩器4的時(shí)鐘的1個(gè)周期的前端(時(shí)鐘的上升)的中斷之前待機(jī)(步驟S2’)。若產(chǎn)生來自中斷控制器20的水晶振蕩的中斷,CPU13則參照表示該中斷是否是第1次的中斷的標(biāo)記信息(flg:初期值=0),判別該中斷是否是第1次的中斷(flg=0)(步驟S20)。若是第1次的中斷(flg=0),則將計(jì)時(shí)器8的值清零(初始化)(步驟S21),建立通知發(fā)生了第1次的中斷(1個(gè)周期的前端)的標(biāo)記flg(flg=1)(步驟S22)。之后,在產(chǎn)生來自中斷控制器20的、晶體振蕩器4的時(shí)鐘的1個(gè)周期的結(jié)束(下1個(gè)周期的開頭)的中斷之前待機(jī)(步驟S3’)。若產(chǎn)生下1個(gè)周期的中斷(步驟S20),則讀取在該晶體振蕩器4的1個(gè)周期的時(shí)間內(nèi),由計(jì)時(shí)器8計(jì)數(shù)的第1基本時(shí)鐘3的時(shí)鐘數(shù)(步驟S23),將標(biāo)記flg清零(初始化)(flg=0)(步驟S24),根據(jù)讀取到的計(jì)時(shí)器8的值求出計(jì)時(shí)器修正系數(shù)(步驟S4’)。使用圖9說明這樣使用步驟S4’的處理中求出的計(jì)時(shí)器修正系數(shù),來提高使用了來自RC振蕩器2的高振蕩頻率的基本時(shí)鐘3的計(jì)時(shí)器8的時(shí)間測量動作的精度的技術(shù)。首先,控制基本時(shí)鐘選擇器6,按照來自RC振蕩器2的基本時(shí)鐘3輸入至計(jì)時(shí)器8的方式進(jìn)行設(shè)定(步驟S5’)。此外,預(yù)先,將用由計(jì)時(shí)器8測量的希望的時(shí)間除以所希望的RC振蕩器2的周期、即作為來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自正常時(shí)的RC振蕩器2的第2基本時(shí)鐘的時(shí)鐘數(shù)而預(yù)先求出的基準(zhǔn)時(shí)鐘數(shù)而得的值,作為所希望的計(jì)時(shí)器8的期待值(期待計(jì)數(shù)值)來求出(步驟S6’),將對通過該步驟S6’的處理求出的所希望的計(jì)時(shí)器的期待計(jì)數(shù)值乘以圖8的步驟S4’的處理中求出的計(jì)時(shí)器修正系數(shù)而得的值,作為修正后的計(jì)時(shí)器的期待計(jì)數(shù)值(修正期待計(jì)數(shù)值)(步驟S7’求出,保存在例如設(shè)置在中斷控制器20內(nèi)的計(jì)時(shí)器數(shù)據(jù)寄存器中(步驟S8’)。而且,將計(jì)時(shí)器8暫時(shí)清零(初始化)后(步驟S9’),啟動(開始)計(jì)時(shí)器8的計(jì)數(shù)動作(步驟S10’)。而且,在進(jìn)入基于計(jì)時(shí)器8的計(jì)數(shù)結(jié)果的來自中斷控制器20的中斷之前待機(jī)。在該待機(jī)中,CPU13能夠停止或者進(jìn)行其他的處理。當(dāng)計(jì)時(shí)器8的計(jì)數(shù)值達(dá)到修正后的計(jì)時(shí)器的期待計(jì)數(shù)值(修正期待計(jì)數(shù)值)時(shí),來自中斷控制器20的中斷信號(計(jì)時(shí)器中斷)被輸入,因此CPU13經(jīng)由端口12輸出表示與該修正期待計(jì)數(shù)值相當(dāng)?shù)臅r(shí)間已經(jīng)經(jīng)過的時(shí)間信息(步驟S30)。這樣,在第2方式例的微型控制器1a中,利用中斷控制器20通過中斷實(shí)現(xiàn)了在修正系數(shù)計(jì)算時(shí)進(jìn)行的晶體振蕩器4的時(shí)鐘的前端與終端(下一前端)的檢索、和進(jìn)行使用了計(jì)時(shí)器修正系數(shù)的端口輸出的處理。因此,能夠在中斷事件發(fā)生前停止CPU13的動作,如圖10所示那樣,能夠形成節(jié)能模式的區(qū)間。因此,能夠降低微型控制器1a的消耗電力。另外,在節(jié)能動作模式的區(qū)間中,CPU13還能夠進(jìn)行其他的處理。在圖10中,示出了第2方式例的各信號的動作時(shí)刻,作為各信號,示出端口輸出、晶體振蕩器中斷、計(jì)時(shí)器中斷、晶體振蕩器的基本時(shí)鐘(第2基本時(shí)鐘)以及RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)。圖10中的符號S2’、S3’、S10’、S11’分別與圖8以及圖9中的步驟S2’、S3’、S10’、S11’的處理時(shí)刻相當(dāng)。若在S2’時(shí)刻,晶體振蕩器的基本時(shí)鐘(第2基本時(shí)鐘)上升,則晶體振蕩器中斷信號上升,計(jì)時(shí)器8執(zhí)行的RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)的計(jì)數(shù)開始,在S3’時(shí)刻下一個(gè)晶體振蕩器的基本時(shí)鐘(第2基本時(shí)鐘)上升,晶體振蕩器中斷信號上升之前,反復(fù)進(jìn)行計(jì)時(shí)器8執(zhí)行的RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)的計(jì)數(shù)。在利用該計(jì)時(shí)器8反復(fù)進(jìn)行RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)的計(jì)數(shù)的期間,CPU13成為節(jié)能模式。若在S3’時(shí)刻,下一個(gè)晶體振蕩器的基本時(shí)鐘(第2基本時(shí)鐘)上升,晶體振蕩器中斷信號上升,CPU13則進(jìn)行圖8所示的修正系數(shù)的計(jì)算處理和期待計(jì)數(shù)值的修正處理。在修正系數(shù)的計(jì)算處理和期待計(jì)數(shù)值的修正處理結(jié)束后的S10’時(shí)刻,針對修正后的期待計(jì)數(shù)值的計(jì)時(shí)器8的RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)的計(jì)數(shù)動作開始(計(jì)時(shí)器啟動)。在該計(jì)時(shí)器8執(zhí)行RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)的計(jì)數(shù)時(shí),CPU13成為節(jié)能模式。若在S11’時(shí)刻,計(jì)時(shí)器8計(jì)數(shù)的RC振蕩器的基本時(shí)鐘(第1基本時(shí)鐘)的計(jì)數(shù)值達(dá)到修正后的期待計(jì)數(shù)值,則產(chǎn)生計(jì)時(shí)器中斷信號,與此相伴,CPU13執(zhí)行圖9的步驟S30中的端口輸出處理。如以上說明那樣,在本第2方式例的微型控制器1a中,如圖7所示那樣具備中斷控制器20,按每一個(gè)來自晶體振蕩器4的基本時(shí)鐘5(第2基本時(shí)鐘信號)的周期輸出第1中斷信號,并且當(dāng)計(jì)時(shí)器8計(jì)數(shù)的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)的時(shí)鐘數(shù)成為CPU13通過修正單元功能修正后的期待計(jì)數(shù)值時(shí),輸出第2中斷信號,CPU13利用作為導(dǎo)出單元的功能,當(dāng)從中斷控制器20輸出第1中斷信號時(shí),使計(jì)時(shí)器8開始第1基本時(shí)鐘信號的時(shí)鐘數(shù)的計(jì)數(shù),并在下一個(gè)中斷信號被輸出前待機(jī),當(dāng)下一個(gè)中斷信號被輸出時(shí),獲取至此由計(jì)時(shí)器8計(jì)數(shù)的第1基本時(shí)鐘信號的時(shí)鐘數(shù)作為第2基本時(shí)鐘信號的1個(gè)周期下的第1基本時(shí)鐘的時(shí)鐘數(shù),并將得到的時(shí)鐘數(shù)、與預(yù)先針對第2基本時(shí)鐘信號的1個(gè)周期確定的第1基本時(shí)鐘信號的時(shí)鐘數(shù)的比率作為物理量導(dǎo)出,利用作為修正單元的功能,根據(jù)用導(dǎo)出單元的功能導(dǎo)出的比率,來修正期待計(jì)數(shù)值,在利用修正單元的功能對期待計(jì)數(shù)值修正后,利用作為輸出單元的功能,使計(jì)時(shí)器8開始第1基本時(shí)鐘信號的時(shí)鐘數(shù)的計(jì)數(shù),并在從中斷控制器20輸出表示計(jì)時(shí)器8的計(jì)數(shù)值達(dá)到修正后的期待計(jì)數(shù)值的第2中斷信號之前待機(jī),當(dāng)從中斷控制器20輸出第2中斷信號時(shí),進(jìn)行輸出時(shí)間信息的動作。另外,在本第2方式例的微型控制器1a中,如圖7~圖9所示那樣,CPU13利用作為導(dǎo)出單元的功能,當(dāng)從中斷控制器20輸出第1中斷信號時(shí),判別是否是第1次中斷,若是第1次中斷,則將計(jì)時(shí)器8的計(jì)數(shù)值初始化,并設(shè)定表示發(fā)生了第1次中斷的標(biāo)記信息,若不是第1次中斷,則獲取至此由計(jì)時(shí)器8計(jì)數(shù)的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)的時(shí)鐘數(shù)作為來自晶體振蕩器4的基本時(shí)鐘5(第2基本時(shí)鐘信號)的1個(gè)周期下的基本時(shí)鐘3的時(shí)鐘數(shù),進(jìn)行初始化標(biāo)記信息的設(shè)定的動作。另外,在本第2方式例的微型控制器1a中,如圖7所示,按照下述方式進(jìn)行動作,即CPU13利用作為導(dǎo)出單元的功能,將用得到的計(jì)時(shí)器8計(jì)數(shù)出的計(jì)時(shí)器8對來自晶體振蕩器4的基本時(shí)鐘5(第2基本時(shí)鐘信號)的1個(gè)周期下的來自RC振蕩器2的基本時(shí)鐘3(第1基本時(shí)鐘信號)計(jì)數(shù)的時(shí)鐘數(shù)除以預(yù)先對基本時(shí)鐘3的1個(gè)周期確定的基本時(shí)鐘3的時(shí)鐘數(shù)而得的值作為比率而導(dǎo)出,利用作為修正單元的功能,對期待計(jì)數(shù)值乘以用導(dǎo)出單元功能導(dǎo)出的比率來進(jìn)行修正。這樣,在本第2方式例的微型控制器1a中,利用中斷控制器20通過中斷來實(shí)現(xiàn)在修正系數(shù)計(jì)算時(shí)進(jìn)行的來自晶體振蕩器4的第2基本時(shí)鐘5的前端與終端的檢索、和使用計(jì)時(shí)器修正系數(shù)進(jìn)行端口輸出的處理動作,因此在中斷事件發(fā)生前,能夠停止CPU13的動作,如圖10所示那樣,能夠形成節(jié)能模式的區(qū)間。結(jié)果,能夠降低微型控制器1a的消耗電力。另外,在節(jié)能動作模式的區(qū)間中還能夠進(jìn)行其他的處理。然后,使用圖11、圖12對第3方式例進(jìn)行說明。其中,本第3方式例中的微型控制器的構(gòu)成與圖7所示的第2方式例的微型控制器1a為相同的構(gòu)成,故這里省略其詳細(xì)的說明。對于上述的第1、第2方式例而言,在求修正系數(shù)時(shí),在計(jì)時(shí)器8中,對來自晶體振蕩器4的低頻率的基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的高頻率的基本時(shí)鐘3的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù),但當(dāng)RC振蕩器2與晶體振蕩器4的速度差(振蕩頻率的差)大時(shí),會導(dǎo)致計(jì)時(shí)器8的計(jì)數(shù)值溢出(overflow)。該情況下,不能用RC振蕩器2的時(shí)鐘數(shù)對晶體振蕩器4的1個(gè)周期進(jìn)行計(jì)數(shù)。在第3方式例中,為了還能夠應(yīng)對這樣計(jì)時(shí)器8的計(jì)數(shù)值溢出的情況,若當(dāng)計(jì)時(shí)器8執(zhí)行的晶體振蕩器4的基本時(shí)鐘5的1個(gè)周期下的RC振蕩器2的基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)時(shí)產(chǎn)生溢出,則中斷控制器20經(jīng)由總線11檢測該溢出的產(chǎn)生,輸出中斷信號。根據(jù)該中斷信號,CPU13對溢出的次數(shù)進(jìn)行計(jì)數(shù),將對該計(jì)數(shù)值與成為該溢出的時(shí)鐘數(shù)相乘后的值和未溢出的情況下計(jì)時(shí)器8計(jì)數(shù)出的RC振蕩器2的基本時(shí)鐘3的時(shí)鐘數(shù)相加,將相加后的值作為計(jì)時(shí)器8計(jì)數(shù)的晶體振蕩器4的基本時(shí)鐘5的1個(gè)周期下的RC振蕩器2的基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)值而取得,修正系數(shù)的計(jì)算如圖11、圖12所示那樣進(jìn)行。以下,說明使用了圖7所示的構(gòu)成的微型控制器1a的第3方式例的動作。這里,說明在以RC振蕩器2生成的新頻率高的基本時(shí)鐘3使圖7的計(jì)時(shí)器8動作時(shí),用于提高使用了計(jì)時(shí)器8的時(shí)間測量動作的精度的CPU13執(zhí)行的計(jì)時(shí)器修正系數(shù)的求法。在圖11中,控制基本時(shí)鐘選擇器6,設(shè)定來自RC振蕩器2的第1基本時(shí)鐘3作為輸入計(jì)時(shí)器8的系統(tǒng)時(shí)鐘7(步驟S1”),在由中斷控制器20產(chǎn)生晶體振蕩器4的時(shí)鐘的1個(gè)周期的前端(時(shí)鐘的上升)的中斷前待機(jī)(步驟S2”)。若產(chǎn)生來自中斷控制器20的水晶振蕩的中斷,CPU13則參照表示該中斷是否是第1次中斷的標(biāo)記信息(flg:初期值=0),判別該中斷是否是第1次中斷(flg=0)(步驟S40)。若是第1次的中斷(flg=0),則將例如存儲在ROM14a等存儲裝置中的、表示CPU13自身計(jì)數(shù)的計(jì)時(shí)器8的溢出次數(shù)的計(jì)數(shù)值cnt清零(初始化)(cnt=0)(步驟S41),并且將計(jì)時(shí)器8的值清零(初始化)(步驟S42),建立通知發(fā)生了第1次中斷(1個(gè)周期的前端)的標(biāo)記flg(flg=1)(步驟S43)。之后,在產(chǎn)生來自中斷控制器20的晶體振蕩器4的時(shí)鐘的1個(gè)周期的結(jié)束(下1個(gè)周期的開頭)的中斷前待機(jī)(步驟S3”)。其中,在該待機(jī)中產(chǎn)生了計(jì)時(shí)器8的溢出的情況下,對其次數(shù)進(jìn)行計(jì)數(shù)。若產(chǎn)生下1個(gè)周期的中斷(步驟S3”),則標(biāo)記信息flg為“1”,從步驟S40移向步驟S44的處理,首先,讀取在來自晶體振蕩器4的第2基本時(shí)鐘的1個(gè)周期的時(shí)間內(nèi)由計(jì)時(shí)器8計(jì)數(shù)出的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)(步驟S44),對該讀取出的時(shí)鐘數(shù)上加上步驟S”中的在待機(jī)中計(jì)數(shù)出的計(jì)時(shí)器8的溢出次數(shù),作為在來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期的期間,由計(jì)時(shí)器8計(jì)數(shù)出的來自RC振蕩器2的第1基本時(shí)鐘3的計(jì)數(shù)值(count值)(步驟S45),將標(biāo)記信息flg清零(初始化)(flg=0)(步驟S46),并進(jìn)行圖8所示的處理,由此根據(jù)讀取出的計(jì)時(shí)器8的值求出計(jì)時(shí)器修正系數(shù)(步驟S4”)。這樣,CPU13使用步驟S4”的處理中求出的計(jì)時(shí)器修正系數(shù),來進(jìn)行圖9所示的修正處理,提高使用了來自RC振蕩器2的高振蕩頻率的基本時(shí)鐘3的計(jì)時(shí)器8的時(shí)間測量動作的精度。在圖12中,示出圖11的步驟S3”的待機(jī)中的CPU13執(zhí)行的處理內(nèi)容,在產(chǎn)生來自中斷控制器20的、晶體振蕩器4的時(shí)鐘的1個(gè)周期的結(jié)束(下1個(gè)周期的開頭)的中斷之前的待機(jī)中,每當(dāng)發(fā)生計(jì)時(shí)器8的溢出時(shí)(步驟S50),對存儲在ROM14a等存儲裝置中的溢出次數(shù)cnt加1(cnt++)(步驟S60)。這樣,在第3方式例中,通過在圖11所示的處理中計(jì)算修正系數(shù),即使在RC振蕩器2與晶體振蕩器4的速度差(振蕩頻率的差)大、且在來自RC振蕩器2的高頻率的基本時(shí)鐘3的計(jì)數(shù)時(shí)計(jì)時(shí)器8溢出的情況下,也能夠進(jìn)行計(jì)時(shí)器8執(zhí)行的晶體振蕩器4的每一個(gè)周期的RC振蕩器2的時(shí)鐘數(shù)的計(jì)數(shù)。如以上說明那樣,在作為第3方式例的微型控制器1b中,CPU13利用作為溢出計(jì)數(shù)單元(第2計(jì)數(shù)單元)的功能,對計(jì)時(shí)器8執(zhí)行的對來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)時(shí)產(chǎn)生的溢出次數(shù)進(jìn)行計(jì)數(shù),利用作為導(dǎo)出單元的功能,將用溢出計(jì)數(shù)單元功能計(jì)數(shù)出的溢出次數(shù)與作為該溢出的時(shí)鐘數(shù)相乘后的值和未產(chǎn)生溢出的情況下由計(jì)時(shí)器8計(jì)數(shù)出的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)相加,將相加后的值作為計(jì)時(shí)器8計(jì)數(shù)的來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)值而取得。另外,在作為第3方式例的微型控制器1b中,利用中斷控制器20中的作為第3中斷單元的功能,檢測計(jì)時(shí)器8的溢出的發(fā)生,每當(dāng)輸出第3中斷信號時(shí),CPU13利用作為溢出計(jì)數(shù)單元的功能,對溢出的次數(shù)進(jìn)行計(jì)數(shù),并且判別該中斷是否是第1次中斷,若是第1次的中斷,則將作為溢出計(jì)數(shù)單元功能的計(jì)數(shù)值初始化,并將計(jì)時(shí)器8的計(jì)數(shù)值初始化,設(shè)定表示發(fā)生了第1次中斷的標(biāo)記信息,若不是第1次的中斷,則讀取至此由計(jì)時(shí)器8計(jì)數(shù)出的第1基本時(shí)鐘信號的時(shí)鐘數(shù)和用溢出計(jì)數(shù)單元功能計(jì)數(shù)出的溢出的發(fā)生次數(shù),進(jìn)行相乘和相加,來將標(biāo)記信息的設(shè)定初始化。這樣,在第3方式例中,通過將計(jì)算修正系數(shù)的處理變更為如圖11所示的處理內(nèi)容,即使在RC振蕩器2與晶體振蕩器4的速度差大、且計(jì)時(shí)器8產(chǎn)生溢出的情況下,也能夠通過計(jì)數(shù)溢出的次數(shù),來計(jì)數(shù)來自晶體振蕩器4的第2基本時(shí)鐘5的每1個(gè)周期的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù)。然后,使用圖13,對第4方式例進(jìn)行說明。圖13中的微型控制器1b為在圖7所示的微型控制器1a中進(jìn)一步設(shè)置了計(jì)時(shí)器21和分頻器22的構(gòu)成。在第1~3的方式例中,使用了一個(gè)計(jì)時(shí)器,而在圖13中的微型控制器1b中,進(jìn)一步增加了一個(gè)計(jì)時(shí)器21,從而能夠使用不同的計(jì)時(shí)器8、21進(jìn)行修正系數(shù)的計(jì)算和計(jì)時(shí)器修正。例如,將計(jì)時(shí)器8用于對來自晶體振蕩器4的基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù),將計(jì)時(shí)器21用于對與期待計(jì)數(shù)值比較的RC晶體振蕩器2的基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)。由此,即使在必須總是以一定間隔進(jìn)行端口輸出的系統(tǒng)中,也能夠一邊進(jìn)行計(jì)時(shí)器的修正,一邊進(jìn)行端口的輸出。另外,圖13中的微型控制器1b具備分頻器22,利用該分頻器22對來自晶體振蕩器4的基本時(shí)鐘5進(jìn)行分頻,從而在RC振蕩器2與晶體振蕩器4沒有速度差(振蕩頻率的差)的情況下,也能夠放大晶體振蕩器4的1個(gè)周期的時(shí)間來計(jì)數(shù)RC振蕩器2的基本時(shí)鐘3的振蕩頻率,能夠提高時(shí)間測量精度。這樣,在作為本第4方式例的微型控制器1b中,作為計(jì)時(shí)器,具備用于第2基本時(shí)鐘5的1個(gè)周期下的第1基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)的計(jì)時(shí)器8(第3計(jì)數(shù)單元)、和用于與期待計(jì)數(shù)值比較的第1基本時(shí)鐘3的時(shí)鐘數(shù)的計(jì)數(shù)的計(jì)時(shí)器21(第4計(jì)數(shù)單元)。這樣,增加一個(gè)計(jì)時(shí)器,以便能夠使用不同的計(jì)時(shí)器進(jìn)行修正系數(shù)計(jì)算和計(jì)時(shí)器修正,從而即使在必須總是以一定間隔進(jìn)行端口輸出的系統(tǒng)中,也能夠一邊進(jìn)行計(jì)時(shí)器的修正,一邊進(jìn)行端口的輸出。另外,在作為本第4方式例的微型控制器1b中,具備對來自晶體振蕩器4的第2基本時(shí)鐘5進(jìn)行分頻的分頻器22,計(jì)時(shí)器8對分頻器22分頻后的第2基本時(shí)鐘5的1個(gè)周期下的來自RC振蕩器2的第2基本時(shí)鐘3的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù)。這樣,通過對晶體振蕩器4增加分頻器22,即使在RC振蕩器2與晶體振蕩器4沒有速度差的情況下,也能夠放大晶體振蕩器4的1個(gè)周期的時(shí)間來進(jìn)行測量,能夠提高時(shí)間測量精度。然后,使用圖14,對第5方式例進(jìn)行說明。圖14中的微型控制器1c為代替設(shè)置圖7所示的微型控制器1a中的RC振蕩器,而設(shè)置了PLL(PhaseLockedLoop:鎖相環(huán))振蕩電路的構(gòu)成。在第1~3方式例中,是使以RC振蕩器2生成的時(shí)鐘動作的計(jì)時(shí)器8的時(shí)間測量精度提高的技術(shù),如圖14所示的微型控制器1c那樣,在代替使用由RC振蕩器2生成的時(shí)鐘,而由PLL振蕩電路2a生成的時(shí)鐘的情況下,也與在高速的動作用中使用了RC振蕩器2的情況同樣,能夠修正計(jì)時(shí)器8的時(shí)間測量動作。以上,如使用圖1~圖14說明的那樣,在本例中,通過CPU13讀取并執(zhí)行存儲在ROM14中的本發(fā)明的時(shí)間測量用程序,從而構(gòu)成本發(fā)明的時(shí)間測量裝置101中的包括導(dǎo)出單元101b、修正單元101c以及輸出單元101d的各單元,通過使用這各單元,能夠以低成本實(shí)現(xiàn)將振蕩頻率高的RC振蕩器2的時(shí)鐘數(shù)作為系統(tǒng)時(shí)鐘來進(jìn)行高速的處理動作的計(jì)算機(jī)裝置中的計(jì)時(shí)器的時(shí)間測量動作的高精度化,在本例的微型控制器1~1c、100中,通過設(shè)置有本發(fā)明的時(shí)間測量裝置101的功能,能夠解決現(xiàn)有技術(shù)的問題點(diǎn)。例如,本例的微型控制器1~1c、100不需要在測量高頻率的RC振蕩器2的時(shí)鐘周期時(shí)使用高頻、昂貴的石英振子,且不會喪失RC振蕩電路2的低成本化的優(yōu)點(diǎn)。另外,在在本例的微型控制器1~1c、100中,RC振蕩器2能夠產(chǎn)生比晶體振蕩器4高頻率的時(shí)鐘,不需要如專利文獻(xiàn)1那樣使用高頻率的晶體振蕩器,能夠避免成本高。另外,不需要如專利文獻(xiàn)1的技術(shù)那樣,RC振蕩器比晶體振蕩器的頻率低,在求針對RC振蕩器的準(zhǔn)確的修正系數(shù)的情況下,也可以使用高頻率的RC振蕩器,不需要新設(shè)置針對RC振蕩器的分頻器來進(jìn)行分頻。由此,在如專利文獻(xiàn)1那樣使用了分頻器的情況下,由于RC振蕩器的1個(gè)周期變長,因此在求修正系數(shù)時(shí)進(jìn)行的、對RC振蕩器1個(gè)時(shí)鐘的期間產(chǎn)生的晶體振蕩器的時(shí)鐘進(jìn)行計(jì)數(shù)的處理時(shí)間會增加的問題也被消除。另外,在本例的微型控制器1b、1c中,能夠不通過輪詢而使用中斷請求處理來實(shí)現(xiàn)作為基準(zhǔn)的振蕩器(晶體振蕩器4)的時(shí)鐘(第2基本時(shí)鐘)的前端與終端的檢索、和使用計(jì)時(shí)器修正系數(shù)來進(jìn)行端口輸出的技術(shù)。由此,CPU13不需要始終動作,而需要能夠?qū)PU13切換為節(jié)能模式,而且在中斷待機(jī)中能夠使CPU13執(zhí)行其他的處理。另外,在本例的微型控制器1b中,對求修正系數(shù)時(shí)產(chǎn)生的計(jì)時(shí)器8中的溢出次數(shù)進(jìn)行計(jì)數(shù),并將該計(jì)算值用于修正系數(shù)的導(dǎo)出,當(dāng)RC振蕩器2和晶體振蕩器4的速度差大時(shí),計(jì)時(shí)器8的計(jì)數(shù)值即使溢出也能夠?qū)?yīng)。此外,本發(fā)明不限于使用圖1~圖14說明的例子,在不脫離其主旨的范圍內(nèi)可以進(jìn)行各種變更。例如,在本例中,通過CPU13讀取并執(zhí)行存儲在ROM14、14a、14b中的本發(fā)明的時(shí)間測量用程序,從而構(gòu)成本發(fā)明的時(shí)間測量裝置中的包括導(dǎo)出單元101b、修正單元101c以及輸出單元101d的各單元,這樣,可以通過程序化的計(jì)算機(jī)處理實(shí)現(xiàn)各構(gòu)成要素的功能的一部分或者全部,或者也可以用由邏輯元件電路構(gòu)成的硬件構(gòu)成來實(shí)現(xiàn)。另外,關(guān)于本發(fā)明中的修正系數(shù)的求法,在本例中,也如圖3說明的那樣,使用在步驟S7的處理中實(shí)際讀取到的實(shí)際時(shí)鐘數(shù)A、來自晶體振蕩器4的第2基本時(shí)鐘5的1個(gè)周期下的預(yù)先作為基準(zhǔn)的來自RC振蕩器2的第1基本時(shí)鐘3的時(shí)鐘數(shù),即、基準(zhǔn)時(shí)鐘數(shù)B,通過“修正系數(shù)C=實(shí)際時(shí)鐘數(shù)A/基準(zhǔn)時(shí)鐘數(shù)B”的式子求出修正系數(shù)C,例如,還可以用“修正系數(shù)C=基準(zhǔn)時(shí)鐘數(shù)B/實(shí)際時(shí)鐘數(shù)A”的式子來求得。該情況下,將在圖5的步驟S11中求的修正后的計(jì)時(shí)器的期待值的式子,即、“修正后的計(jì)時(shí)器的期待值=所希望的計(jì)時(shí)器的期待值×計(jì)時(shí)器修正系數(shù)”這一式子,設(shè)為“修正后的計(jì)時(shí)器的期待值=所希望的計(jì)時(shí)器的期待值/計(jì)時(shí)器修正系數(shù)”即可。另外,對于本例而言,在微型控制器1中,使計(jì)時(shí)器8對被輸入的第2基本時(shí)鐘信號的1個(gè)周期下的第1基本時(shí)鐘信號的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù),但不限于第2基本時(shí)鐘信號的1個(gè)周期,還可以對預(yù)先確定的周期(規(guī)定周期)下的第1基本時(shí)鐘信號的時(shí)鐘數(shù)進(jìn)行計(jì)數(shù)。