加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

51的江湖 | 時鐘亂碼幽靈般光顧了所有設(shè)備,追蹤尋跡趁勢撲捉?

2015/08/01
5
閱讀需 16 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

?

上文《物色一個得力的助手,測試工作事半功倍》中講到,華容從測試部門得到一個實習(xí)生林鴻陽,讓他幫忙測試設(shè)備的數(shù)據(jù),經(jīng)過一天的合作華容發(fā)現(xiàn)他雖然是一張白紙,但是很認真,真是自己需要的幫手。

屋漏偏逢連夜雨。


真是的,越是怕什么越是來什么,雖然對于這個BUG心里已經(jīng)有所準備,但是當事實擺在眼前的時候,華容仍不免有些頭皮發(fā)麻。表面上的風(fēng)輕云淡,是給別人看的,內(nèi)心的七上八下,只有自己知道。


小林離開后,華容原地做了一個伸展動作,緩解一下不安的情緒,然后一邊整理桌面上的文件,一邊安慰自己:“畢竟將故障再現(xiàn)了,這就是一個進步,即使是‘幽靈’一現(xiàn),也比看不見、抓不到胡思亂想的結(jié)局好很多。”


事態(tài)的發(fā)展,推著她不得不抓緊應(yīng)用軟件程序的編寫和調(diào)試--在線升級程序的搶先版。
事實證明,合作的工作效率是非常高的。


正所謂“Two Heads Are Better Than One”,即使是小林這樣沒有經(jīng)驗的“白紙”選手,對檢測程序的測試作用也是很大的。就測試工作而言,林鴻陽無異于是華容的替身和影子。接下來的日子,每天早晚兩次,華容例行檢查影子的測試報告,匯總詳情,然后為其答疑解惑,最后對檢測程序進行微調(diào)(時鐘檢測除外),而且根據(jù)測試者的體會和建議,將程序增加了一個自動模式:


自檢程序在啟動之后,依次進行自動檢測,如果沒有錯誤便可以自動進入下一個項目,當出現(xiàn)錯誤的時候,將相應(yīng)的檢測結(jié)果顯示到LCD上,同時蜂鳴器發(fā)出報警音,用來提示測試者。當測試者觀察到結(jié)果之后,按下“確認”鍵,便可以運行下一項。每一輪的檢測完畢后,將本輪測試的全部結(jié)果再顯示到LCD上,任何人對于這個結(jié)果都是一目了然。事實證明,改進后的檢測程序效率和效果有明顯的提升。


有了這個助手,華容可以全身心地投入到在線升級程序的編寫和調(diào)試。


對于應(yīng)用軟件的編程,并不是華容的強項,以前由于項目開發(fā)的原因,不得不對VC++強制充電,因此學(xué)會了使用API和MFC,進行底層的數(shù)據(jù)的處理和通信,雖然功能界面非常簡陋,但是在性能方面基本可以滿足項目所需,也算是自給自足了。不過,此后便留下了2個后遺癥:


一是:能夠自己做的,盡量不麻煩別人;
二是:在與別人合作之前,尤其在處理有關(guān)數(shù)據(jù)通信協(xié)議的時候,關(guān)于方案的合理性和可行性必先通過自己的驗證。
這樣做的后果是無形中給自己增加了負擔(dān),但收獲也是巨大的,這就是增加了對項目的信心和可控性。


這個軟件也是如此,用的是MFC和API函數(shù),命名為ISP_Line。


在界面設(shè)計上,ISP_Line使用的是MFC單個對話框模式,所有的操作都在一個“面板”上,操作簡單、直觀,包括:串口的選擇、波特率的設(shè)置、下載文件的選擇、操作結(jié)果的信息提示,以及4個相關(guān)的按鈕。實現(xiàn)的功能只有兩個:數(shù)據(jù)的上傳和下載,上傳的是時鐘的測試記錄,下載的待升級程序的BIN文件。


API函數(shù)用于在數(shù)據(jù)通信方面的處理,一方面是由于API的程序代碼效率更高,更重要的原因是便于觀察通信過程中的每個細節(jié),在這方面,控件的效率是有折扣的。

?

與此同時,經(jīng)過近4晝夜的測試,時鐘的亂碼顯現(xiàn),如“幽靈”一般,光顧了在不同編號的設(shè)備,最少的只有一次,最多的有10次。從結(jié)果上看,與用戶描述的情況基本一致:不一定什么時候,不一定是哪一臺設(shè)備,在上傳到后臺的記錄中,就會爆出一條錯誤的記錄數(shù)據(jù)。


面對這個結(jié)果,ISP_Line剛好小試牛刀。


讀取時鐘的測試數(shù)據(jù),不必修改協(xié)議,只需將上傳數(shù)據(jù)的地址指向時鐘測試記錄的存儲區(qū)即可,然后將讀取的數(shù)據(jù)進一步處理:將HEX格式轉(zhuǎn)換為ASCII碼,為了觀察方便,在每兩個字符后面添加一個空格,每12個字符,即一條時鐘數(shù)據(jù),添加一個回車和換行,然后將數(shù)據(jù)逐條寫入指定的Clock.txt。上傳完畢后,用寫字板等工具打開txt文件即可進行相關(guān)的查看。


文件順利生成,華容用EditPlus打開了Clock.txt,“幽靈”的真面目如實呈現(xiàn)在電腦的屏幕上:既有非法數(shù)據(jù),又有非法字符,尤其是非法字符A-F,隨機出現(xiàn)在時鐘數(shù)據(jù)的不同字段上,有的是出現(xiàn)在“秒”的位置,有的出現(xiàn)在“時”的位置,有的出現(xiàn)在“分”的位置,也有日期的位置。簡單地統(tǒng)計了一下,日期的位置很少,多數(shù)都在時間的位置上。


“原來如此!”華容輕聲感嘆。


“這是什么意思?”一旁的林鴻陽則是一頭霧水。


“好吧,記得你說過,已經(jīng)看過M41T0的數(shù)據(jù)手冊,是吧?”華容沒有直接回答他的問題,反而提問。


“嗯,看了”,小林有些緊張,不時地搓著手。


“那么是否還記得,芯片輸出的數(shù)據(jù)格式是類型的?”


“好像…,好像是十進制的”,不大自信,回答的聲音比較小。


“確定嗎?十進制的前面還有幾個字吧?”


“好像是二進制格式的十進制數(shù)據(jù),有些拗口,不太好記?!甭曇舾土?。


“記憶力不錯,一字不差?!比A容嘴角掛著微笑,緩解了一下氣氛,“那么你理解含義嗎?”


“二進制和十進制都明白,但是…,但是合在一起描述,還是第一次聽說,所以不大明白”,小林繼續(xù)搓著手,顯得有些無助。


“別緊張,其實很簡單,還是眼見為實吧?!比A容一邊安慰對方,一邊迅速地打開工程文件,連接仿真器,運行程序仿真,然后將斷點設(shè)置在調(diào)用讀取時鐘的函數(shù)Get_Clock的下一行,斷點停止后,將保存變量的數(shù)組添加到觀察區(qū),以HEX格式展開。

?


“現(xiàn)在的時間是9點12分56秒,看一下返回的數(shù)據(jù)內(nèi)容吧,與實際的時間是如何對應(yīng)的?!?/p>


屏幕上,數(shù)組中前三個字節(jié)的數(shù)據(jù)依次是0X56,0X12,0X09。華容用鼠標指著數(shù)組的數(shù)據(jù)解釋:“第一個數(shù)據(jù)的含義是56秒,第二個數(shù)據(jù)的含義是12分鐘,第三個數(shù)據(jù)不用我解釋了吧?!?/p>


“哦,這樣啊,我懂了”,年輕的臉上洋溢著笑容。


“真的懂了?那么你知道這種數(shù)據(jù)的格式的名稱嗎?用這種格式來表示時鐘數(shù)據(jù)有什么好處?”華容乘勢追問。


“這種格式有點像BCD碼,但又不一樣,第一次遇到,所以還不知道確切的名字,更不知道它的好處了?!毙θ葸€掛在嘴角,但臉色有些窘迫,左手撓著頭,投來的是征求意見的目光,接著說:“我回去查查,再好好看看數(shù)據(jù)手冊?!?/p>


“好的,沒問題?!比A容表示贊同,想了一下,接著補充:“友情提示,有一種數(shù)據(jù)格式叫做‘壓縮BCD碼’,相信你會有所收獲的,然后明天我們討論一下如何對時鐘數(shù)據(jù)進行糾錯處理,怎么樣?”


“討論糾錯問題?我們討論糾錯的問題?是我和您一起討論嗎?”,年輕人詫異地問,顯然,華容的話題超出了他的意料。


“什么反應(yīng),變成復(fù)讀機了?”華容調(diào)侃了一下,笑著回答,“當然是你了,我還有其他的助手嗎?”


“太好了,我這就回去準備?!?/p>


林鴻陽步履匆匆,興高采烈地返回生產(chǎn)部,目送遠去的背影,華容舒心得笑了:好奇而不張揚,這個年輕人具有從事研發(fā)工作的潛質(zhì)。


這么久了,她找到了培養(yǎng)的目標。

與非網(wǎng)原創(chuàng)內(nèi)容,謝絕轉(zhuǎn)載!

內(nèi)容匯總:

之一:部門重組,誰會出局?

摘要:沈陽的一場大雪似乎也預(yù)示著公司的某些變動,果然在休整后的第二天得到了證實,去掉一個部門,重組一個部門,孤立了一些人,拉攏了一些人,兵還是兵,將還是將...

之二:燙手的山芋,華工的困惑

摘要:部門雖然重新劃分,但辦公室里的格局和人員的位置都沒有變動,好像沒有發(fā)生任何事情。華容原本是個局部變量,從不參與本部門以外的事情,但這次人事變動,她的主管設(shè)計師的職位依舊,只不過屬性變成了全局變量...

之三:被隱藏的Bug

摘要:華工對自己的項目滿腹疑惑,后來在和燕飛的一場談話中了解到了很多緣由,看似表面風(fēng)光的銷售業(yè)績只有還有不為人知的秘密...

之四:要根據(jù)PCB設(shè)計程序,被算計了!

摘要:經(jīng)過與燕飛中午的一番談話,華容不敢再對眼前的PDA(手持機)怠慢了,但是只有她自己清楚其中的問題:框圖已經(jīng)有了,芯片的資料可查,那么詳細的電路原理圖,就不再是問題,可是偏偏無人提供原理圖的電子版,害得她不得不自己動手...

之五:憶當年200K代碼聯(lián)調(diào)的默契

摘要:平心而論,華容覺得自己與華萍之間還談不上“默契”,因為到目前為止,這個詞只屬于當年那個team。是她在轉(zhuǎn)行之后,加入的第一個開發(fā)團隊—中鼎公司中文版ECR的項目組...

之六:軟件和硬件,如今要彼此刮目相看

摘要:真正的交接開始了,果然不出華容的意料,華萍想盡辦法隱藏原理圖,讓她感到意外的是華容在兩年前已經(jīng)開始學(xué)習(xí)畫板子,而華容也知道她開始寫程序,曾經(jīng)推心置腹的合作伙伴如今心有芥蒂...

之七:箭在弦上,改發(fā)就發(fā)

摘要:華容冷靜地思考了一下整個“事件”進展和所經(jīng)歷的“談話”,她認定這個項目的背后,一定有不為自己所知的內(nèi)幕,尤其是與華萍的一番交涉,加上自己對她的了解,更加確認了這一點:這個項目不簡單...

之八:PDA檢測有變,百里行程半九十

摘 要:華容向家里人“請假”,然后埋頭工作。按照既定的計劃,第9個工作日,進行了網(wǎng)絡(luò)聯(lián)調(diào),包括終端與網(wǎng)卡服務(wù)器以及服務(wù)器與后臺軟件的通信,由于物理層 的協(xié)議沒變,數(shù)據(jù)層的定義和格式也沒有變化,變化的只是填充的內(nèi)容,因此,毫無懸念,網(wǎng)絡(luò)聯(lián)調(diào)順利通過,但是在PDA檢測的時候她卻沒有看到檢測文 檔...

之九:故友偶重逢,項目工期蓄意被減半

摘要:由于項目工期緊張,華容從制定方案到實施方案,加班加點,甚至向家人請假,最后終于如期測試通過,在驗收的時候她偶爾遇到了以前的合作伙伴林杰森,也是這次偶遇讓她知道了自己的項目工期被壓縮減半...

之十:你可以暗算我,但是擋不住我的技術(shù)比你強

摘要:煙草局的項目驗收完成以后,華容終于松了一口氣,但是被壓縮工期的陰影始終縈繞心頭,以至于想起來心中難受。某一天華萍的項目組出了一個搞不定的Bug,于是要求華容過去解決...

之十一:設(shè)備出現(xiàn)“幽靈” Bug,華容奔赴現(xiàn)場“救火”

摘要:煙草局的項目忽然出變,原本都測試通過的設(shè)備有好幾臺被退回,華容展開緊張地測試,后來發(fā)現(xiàn)是板子上的一顆芯片型號...

之十二:新官上任以后的裁員風(fēng)波

摘要:一天發(fā)布在OA里的一條最新消息,如一石激起千層浪,波及到了公司的各個角落—有史以來,SD公司第一次裁員。這則消息,如同前天的暴風(fēng)雪一樣,來勢兇猛,威力強大...

之十三:公司技術(shù)大牛,裁員中你被誰害了?

摘要:岳海上任后開始了第一次裁員風(fēng)暴,楊玉庭本來不在名單了,但是因為年齡偏大而成了這次裁員的犧牲品...

之十四:為研發(fā)爭取時間和資源,華容對岳海的博弈

摘要:華容、岳海以及燕飛坐下來討論項目的執(zhí)行策略,由于已經(jīng)提前知道岳海的態(tài)度,華容提出項目進展中的各種問題,最后為項目爭取了時間和資源...

之十五:舉重若輕,研發(fā)計劃已然成竹在胸

摘要:華容制定了一套嚴謹?shù)难邪l(fā)計劃,而她最擅長的射頻卡的讀寫距離問題。這個問題對于其他人來說,也許高難的,但對于她來說幾乎談不上難度,只不過是一、兩個小時的問題...

之十六:物色一個得力的助手,測試工作事半功倍

摘要:華容準備好測試流程,發(fā)現(xiàn)需要個測試助手,人選哪里來?經(jīng)過與測試部的商議從中抽出一個新來的實習(xí)生林鴻陽幫助華容完成測試,經(jīng)過一天的試用,華容發(fā)現(xiàn)小林出乎意料地滿足自己的需求...

本系列為付麗華老師原創(chuàng)故事《51的江湖》連載,故事中有職場,故事中還有技術(shù),最真實的項目案例與大家一起探討。每周一期,更多內(nèi)容請查看:

《51的江湖》:以小說體的形式講解技術(shù)

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

1996畢業(yè)于華東理工大學(xué)自控系,同年7月進入某大型國企擔(dān)任電氣員。2000年轉(zhuǎn)行從事硬件研發(fā)相關(guān)工作;后從事RFID相關(guān)產(chǎn)品的研發(fā)、設(shè)計,曾參與中國自動識別協(xié)會RFID行業(yè)標準的起草;歷任硬件工程師、主管設(shè)計師、項目經(jīng)理、部門經(jīng)理;2012年至今,就職于沈陽工學(xué)院,擔(dān)任電子信息工程專業(yè)教師,研究方向:自動識別技術(shù)。已經(jīng)出版教材《自動識別技術(shù)概論》,職場故事《51的蛻變 》。