999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種嵌入式軟件版本信息獲取方法設(shè)計(jì)與實(shí)現(xiàn)

2013-08-10 10:30:00劉源楊馬建輝王知學(xué)
電子設(shè)計(jì)工程 2013年14期
關(guān)鍵詞:方向設(shè)置檢測(cè)

劉源楊 , 馬建輝 , 王知學(xué) , 王 崗

(1.山東省汽車(chē)電子重點(diǎn)實(shí)驗(yàn)室 山東 濟(jì)南 250014;2.山東省科學(xué)院自動(dòng)化研究所 山東 濟(jì)南 250014)

在嵌入式軟件的開(kāi)發(fā)階段,需要經(jīng)過(guò)多次設(shè)計(jì)迭代并進(jìn)行充分測(cè)試以提高軟件可靠性和完善產(chǎn)品性能。采用軟件版本的形式對(duì)設(shè)計(jì)過(guò)程建立里程碑,以版本標(biāo)號(hào)的形式對(duì)各個(gè)軟件版本進(jìn)行標(biāo)識(shí)和區(qū)分,然后在計(jì)算機(jī)上以文檔管理的形式或者通過(guò)專(zhuān)業(yè)的版本控制工具對(duì)各個(gè)版本軟件的源代碼及其二進(jìn)制文件進(jìn)行整理及控制是一種有效的軟件開(kāi)發(fā)管理方式并已被廣泛采用[1]。在開(kāi)發(fā)過(guò)程中,為了提高設(shè)計(jì)效率,開(kāi)發(fā)和測(cè)試并行進(jìn)行,為了測(cè)試缺陷、查找缺陷原因或定位缺陷的引入時(shí)間,可能需要對(duì)不同版本的軟件進(jìn)行測(cè)試。當(dāng)測(cè)試出某個(gè)缺陷后,需要定位當(dāng)前運(yùn)行軟件的版本號(hào)進(jìn)行進(jìn)一步分析,由于硬件版本的相對(duì)固定性,無(wú)法通過(guò)檢查硬件電路的手段來(lái)判斷當(dāng)前運(yùn)行軟件的版本,如果軟件本身包含版本信息,通過(guò)一種手段從軟件中獲得版本信息,便可以解決上述問(wèn)題。本文通過(guò)采用預(yù)留的MCU IO管腳進(jìn)行軟件版本的獲取,通過(guò)在單個(gè)IO管腳上實(shí)現(xiàn)按鍵檢測(cè)與LED驅(qū)動(dòng)的復(fù)用[2],按鍵觸發(fā)嵌入式設(shè)備輸出當(dāng)前軟件版本信息,設(shè)備以特定方式LED脈沖閃爍的表現(xiàn)形式輸出版本信息。這種方式避免了對(duì)代碼二進(jìn)制文件的專(zhuān)業(yè)分析和數(shù)據(jù)查找,可以高效直觀得在測(cè)試現(xiàn)場(chǎng)獲取版本信息,而且因?yàn)槠浜?jiǎn)單易實(shí)現(xiàn)、占用資源少,在嵌入式設(shè)備領(lǐng)域具有廣泛的適用性。

1 設(shè)計(jì)思路

嵌入式設(shè)備的軟件版本標(biāo)號(hào)采用帶小數(shù)點(diǎn)的浮點(diǎn)數(shù)形式,格式為 X.Y,X和Y的取值區(qū)間為[0,9],共計(jì)可包含0.1-9.9的99個(gè)版本,由于浮點(diǎn)數(shù)運(yùn)算存在誤差[3],每次軟件定版時(shí),在非易失性存儲(chǔ)器中存儲(chǔ)一個(gè)取值區(qū)間為[1,99]的整型常量VERSION來(lái)表示版本號(hào),VERSION=(X.Y)*10,從版本號(hào)常量VERSION中提取X和Y的計(jì)算公式如下:

X等于版本號(hào)常量除以10的模,Y等于版本號(hào)常量除以10的余數(shù)。

設(shè)計(jì)電路實(shí)現(xiàn)按鍵檢測(cè)和LED驅(qū)動(dòng)復(fù)用IO腳,當(dāng)IO腳為輸入方向時(shí),通過(guò)IO狀態(tài)的讀取可以檢測(cè)按鍵的按下和彈起狀態(tài),當(dāng)IO腳為輸出方向時(shí),可以設(shè)置高低電平實(shí)現(xiàn)LED的亮滅控制。具體應(yīng)用時(shí),首先設(shè)置IO腳為輸入方向,周期檢測(cè)按鍵操作,檢測(cè)到有效的按鍵按下操作后,當(dāng)按鍵彈起時(shí)將IO腳設(shè)置為輸出方向,以PWM的方式驅(qū)動(dòng)LED,首先以頻率為2 Hz、占空比為50%的PWM形式輸出X個(gè)周期的方波脈沖,然后間歇3 s,以頻率為1 Hz、占空比為50%的PWM形式輸出Y個(gè)周期的方波脈沖,進(jìn)行軟件版本的顯示[4],顯示完成后再次設(shè)置IO腳為輸入方向。

通過(guò)在按鍵按下并彈起后統(tǒng)計(jì)3 s間歇時(shí)間前后的LED閃爍次數(shù),便可以得到X和Y的數(shù)值,軟件版本號(hào)計(jì)算公式如下:

2 電路設(shè)計(jì)

硬件電路包括按鍵、LED、限流電阻R1和上拉電阻R2四個(gè)元件,其電路如圖1所示。IO腳設(shè)置為輸入方向時(shí),按鍵按下,R1端電壓為VCC,LED截止處于熄滅狀態(tài),由于上拉電阻R2的作用,IO腳電平為高,狀態(tài)值為1,當(dāng)按鍵彈起,R1端電壓為0,LED截止,IO腳電平為低,狀態(tài)值為0。IO設(shè)置為輸出方向時(shí),在按鍵處于彈起狀態(tài)的條件下,IO電平為高時(shí),LED導(dǎo)通點(diǎn)亮,IO電平為低時(shí),LED截止熄滅,當(dāng)按鍵按下時(shí),LED截止熄滅。可選擇紅、黃、藍(lán)不同顏色的LED,不同顏色LED的導(dǎo)通電壓不同,決定所使用的限流電阻R1的阻值也不相同,同時(shí)調(diào)整R1阻值,可以調(diào)節(jié)LED燈的亮度[5]。

圖1 硬件電路圖Fig.1 Hardware circuit

3 軟件設(shè)計(jì)

軟件設(shè)計(jì)流程如圖2所示。首先設(shè)置該IO腳為輸入方向,以20 ms為周期讀取IO狀態(tài),正常狀態(tài)即按鍵處于彈起狀態(tài)時(shí),IO狀態(tài)為0,按下按鍵時(shí)IO狀態(tài)為1,當(dāng)檢測(cè)到IO狀態(tài)為1時(shí)啟動(dòng)對(duì)按鍵的軟件去抖處理[6],當(dāng)檢測(cè)到一次有效的按鍵按下操作后,按鍵彈起時(shí)設(shè)置IO腳為輸出方向,開(kāi)始進(jìn)行LED的驅(qū)動(dòng)控制。

LED控制方式如下:首先根據(jù)公式(1)和(2)計(jì)算出軟件版本號(hào)中的X和Y,然后以頻率為2 Hz、占空比為50%的PWM方式輸出X個(gè)周期方波脈沖,此時(shí)LED周期閃爍,閃爍次數(shù)等于X,最后一個(gè)周期結(jié)束后熄滅LED,然后啟動(dòng)3 s間歇定時(shí),定時(shí)到達(dá)后以頻率為1Hz、占空比為50%的方式輸出Y個(gè)周期方波脈沖,此時(shí)LED周期閃爍次數(shù)等于Y,最后一個(gè)周期結(jié)束后熄滅LED,并再次設(shè)置管腳為輸入方向。

4 結(jié)束語(yǔ)

文中通過(guò)MCU的單個(gè)IO管腳復(fù)用實(shí)現(xiàn)按鍵檢測(cè)及LED驅(qū)動(dòng),通過(guò)按鍵的方式觸發(fā)讀取軟件版本信息操作,避免了復(fù)雜的診斷協(xié)議和診斷接口,通過(guò)LED脈沖閃爍的方式輸出軟件版本信息,直觀方便,電路設(shè)計(jì)和程序設(shè)計(jì)簡(jiǎn)單,占用軟硬件資源很少,可以方便地在不同的嵌入式設(shè)備上實(shí)現(xiàn),具有廣泛的適用性和極強(qiáng)的實(shí)用價(jià)值。

圖2 軟件設(shè)計(jì)流程圖Fig.2 Software design flow

[1]李欣,張路,謝冰,等.基于構(gòu)件的軟件版本管理系統(tǒng)[J].電子學(xué)報(bào),2000(11):119-121.LI Xin,ZHANG LU,XIE Bin,et al.Component based software version management system[J].Acta Electronica Sinica,2000,(11):119-121.

[2]高瓊,張全營(yíng).基于R5G0C314DA芯片的IO口復(fù)用[J].家電科技,2012(6):70-71.GAO Qiong,ZHANG Quan-ying.IO port reuse based on R5G0C314DA chip[J].China Appliance Technology,2012,(6):70-71.

[3]杜叔強(qiáng).淺析C語(yǔ)言中的浮點(diǎn)數(shù) [J].蘭州工業(yè)高等專(zhuān)科學(xué)校學(xué)報(bào),2010(5):26-28.DU Shu-qiang.Analysis of floating-point numbers of C language[J].Journal of Lanzhou Polytechnic College,2010,(5):26-28.

[4]山東省科學(xué)院自動(dòng)化研究所.一種獲取嵌入式軟件版本信息的方法:中國(guó),201210488667.1[P].2012-11-27.

[5]美國(guó)國(guó)家半導(dǎo)體公司.發(fā)光二極管(LED)的相關(guān)應(yīng)用及驅(qū)動(dòng)技術(shù)[J].世界電子元器件,2007,(12):94-97 National Semiconductor.Application and Driver Technology of LED[J].Global Electronics China,2007,(12):94-97

[6]魯慶賓.矩陣式鍵盤(pán)部分連擊的處理[J].電子設(shè)計(jì)工程,2011(17):34-36.LU Qing-bin.Processing of the matrix keyboard parts combo[J].Electronic Design Engineering,2011(17):34-36.

猜你喜歡
方向設(shè)置檢測(cè)
2022年組稿方向
“不等式”檢測(cè)題
“一元一次不等式”檢測(cè)題
“一元一次不等式組”檢測(cè)題
中隊(duì)崗位該如何設(shè)置
2021年組稿方向
2021年組稿方向
小波變換在PCB缺陷檢測(cè)中的應(yīng)用
本刊欄目設(shè)置說(shuō)明
中俄臨床醫(yī)學(xué)專(zhuān)業(yè)課程設(shè)置的比較與思考
主站蜘蛛池模板: 少妇高潮惨叫久久久久久| 一级片一区| 国产高清国内精品福利| 福利视频一区| 国产精品成人久久| 亚洲欧美激情另类| 精品国产aⅴ一区二区三区| 日本91在线| 亚洲天堂免费在线视频| 久久鸭综合久久国产| 免费观看精品视频999| 亚洲小视频网站| 91在线中文| 在线日韩一区二区| 色悠久久久| 欧美日韩资源| 亚洲色图欧美视频| 国产精品99r8在线观看| 香蕉视频在线观看www| 久草国产在线观看| 色老二精品视频在线观看| 国产区在线看| 国产黑丝一区| 国产成人高清亚洲一区久久| 熟女日韩精品2区| 91小视频在线| 日韩麻豆小视频| 91欧美在线| 91在线国内在线播放老师| 精品久久久久久中文字幕女 | 97se亚洲| 夜夜操天天摸| 久久毛片网| 久久精品视频亚洲| 亚洲国产精品无码AV| 午夜无码一区二区三区| 亚洲精品不卡午夜精品| 中文天堂在线视频| 国产精品露脸视频| 亚洲中文精品久久久久久不卡| 亚洲天堂久久| 72种姿势欧美久久久大黄蕉| 亚洲中文字幕无码mv| 欧美人与性动交a欧美精品| 国产乱论视频| 人妻丰满熟妇AV无码区| 欧美一级高清免费a| 日韩第九页| 中文字幕在线一区二区在线| 九色免费视频| 少妇精品网站| 第一区免费在线观看| 麻豆精品在线视频| 高清大学生毛片一级| 国产在线观看精品| 东京热一区二区三区无码视频| 中文字幕亚洲无线码一区女同| 国产另类视频| 亚洲色图在线观看| 中文字幕人妻av一区二区| 国产成人三级| 国产精品一老牛影视频| 一本视频精品中文字幕| 毛片卡一卡二| 91视频首页| 在线一级毛片| 青青草国产免费国产| 亚洲中文字幕无码mv| 精品国产自| 国产91高跟丝袜| 亚洲 欧美 中文 AⅤ在线视频| 国产精品开放后亚洲| 欧美在线导航| 国产办公室秘书无码精品| 国产福利免费视频| 国产精品无码一二三视频| 99热这里只有精品2| 乱人伦99久久| 国产特一级毛片| 亚洲欧洲日产国产无码AV| 久久国产香蕉| 自拍偷拍一区|