適合于國內(nèi)血糖儀的微處理器全方面解析方案
系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件采用C語言編寫。其主程序框架如圖4所示。
圖4 主程序框圖
對(duì)于便攜式設(shè)備,電池壽命至關(guān)重要;設(shè)計(jì)時(shí)應(yīng)盡量降低功耗,使系統(tǒng)盡可能長時(shí)間停留在低功耗狀態(tài)。因此,考慮設(shè)備在適當(dāng)?shù)臅r(shí)候自動(dòng)關(guān)機(jī)。這里采用了一個(gè)定時(shí)器。當(dāng)定時(shí)器大于0時(shí),系統(tǒng)處于開機(jī)狀態(tài);當(dāng)定時(shí)器倒數(shù)到0時(shí),系統(tǒng)自動(dòng)關(guān)機(jī)。這個(gè)定時(shí)器是由單片機(jī)中的Basic Timer實(shí)現(xiàn)的。通過軟件對(duì)Basic Timer控制寄存器進(jìn)行設(shè)置,將信號(hào)源設(shè)為輔助時(shí)鐘,大小為32KHz,并進(jìn)行256分頻,再對(duì)中斷定時(shí)間隔控制位進(jìn)行設(shè)置,使得中斷每秒進(jìn)行一次,并且每次到來時(shí)都對(duì)定時(shí)器減1,這樣就實(shí)現(xiàn)了定時(shí)器每秒減1的功能。具體操作是這樣:開機(jī)時(shí),對(duì)定時(shí)器初始化一個(gè)大于0的值,比如30,并且在每按一次有效鍵時(shí),系統(tǒng)重新初始化這個(gè)值。因此,當(dāng)沒有按任何有效鍵時(shí),30秒后就會(huì)自動(dòng)關(guān)機(jī),從而實(shí)現(xiàn)省電目的。
系統(tǒng)也具有實(shí)時(shí)時(shí)鐘功能,它的實(shí)現(xiàn)方式與上述的定時(shí)器類似。只是將“每秒減1”改為“每秒加1”;具體操作:每次中斷時(shí)都對(duì)秒變量進(jìn)行加1,當(dāng)秒變量的值變?yōu)?0時(shí),就對(duì)分鐘變量加1,而秒變量又重新從0開始計(jì)數(shù);同樣,當(dāng)分鐘變量累加到60時(shí),就對(duì)小時(shí)變量加一,而自身又從0開始計(jì)數(shù)。依次類推,就可以實(shí)現(xiàn)實(shí)時(shí)時(shí)鐘和日期功能。
為滿足個(gè)性化需要,還增加了時(shí)鐘和單位設(shè)置、平均值和溫度顯示等功能。這里就不再贅述了。下面主要介紹一下測量模塊。首先,初始化各個(gè)端口以及ADC寄存器;然后等待滴血。當(dāng)檢測到足量血時(shí),斷電并等待若干秒,使之與試條上的酶充分反應(yīng)。隨后加電并在一秒后迅速讀取。圖5是與本血糖儀配套使用的試條在不同濃度的血糖與酶反應(yīng)若干秒后再加電產(chǎn)生的電流的變化曲線。由圖不難看出,加電后一秒曲線就較為平穩(wěn),這也是本設(shè)計(jì)采用“加電一秒”后即可讀取的原因。
計(jì)算公式
這部分無疑是本設(shè)計(jì)的關(guān)鍵。表1是使用本設(shè)計(jì)的樣機(jī)測得的部分?jǐn)?shù)據(jù)。由表中的數(shù)據(jù)不難看出,血糖儀和血糖試條的測量重復(fù)性較好——CV3%,遠(yuǎn)遠(yuǎn)高于國家標(biāo)準(zhǔn)7.5%的要求。
表1 部分實(shí)驗(yàn)數(shù)據(jù)
濃度(mg/dl)
電流(uA) 50 100 200 300 400
1 3.003 6.752 13.101 16.861 19.836
2 3.028 6.678 12.368 17.130 19.621
3 2.918 6.800 13.272 16.764 20.366
4 2.893 6.910 13.028 17.179 20.622
5 3.064 7.081 13.614 17.574 20.341
6 2.881 7.106 13.211 17.264 20.268
7 3.075 6.703 12.905 17.628 19.645
8 2.905 6.849 13.150 17.029 20.158
9 2.991 7.130 13.233 17.081 20.024
10 2.901 7.240 12.964 16.838 20.952
均值 2.9659 6.9249 13.0846 17.1348 20.1833
均方差 0.0746 0.2001 0.3200 0.2924 0.4218
CV(%) 2.5153 2.8896 2.4456 1.7065 2.0898
評(píng)論