在用大的buff讀取檔案的過程中,發現讀取無法正常結束,fileinfo的內容被破壞掉了.
追查了半天,發現是filegetch函式中的一處小bug.
在550行,handle=findopenfilew(fp->drive,fp->dirclus,fp->name);
if(handle這裡,如果該檔案沒有被"w"方式開啟,將返回not_open_file,這個值是-1,也就是ff,handle本身是個有符號數.但是max_open_files一般來說是個正數,比如10.所以,這裡的if(handle所以應該修改為:if(handle!=not_open_file)才比較合適.
接著,要優化讀取sd卡的速度了,現在的速度太慢了,我想至少要提高500倍以上才能讓該系統被用到實際的工程中.
第二個系統
在進入工作後,參與的第二系統,也剛好是乙個失敗的專案重新再設計的乙個專案。全程參與了設計討論和相關功能模組的實現。到最後證明,這個系統依舊是失敗的。事隔了1年多了,回頭看問題,希望能看明白它。首先,整個團隊太年輕了。不是剛畢業沒多久,就是工作了才一年。其次,需求的失控,不懂得拒絕 因為是進入工作不久...
第二個作業!
作業要求 從鍵盤輸入乙個四位正整數。首先分離出該正整數中的每一位數字,並按逆序顯示輸出各位數字 然後用分離出的每位數字組成乙個最大數和乙個最小數,並顯示輸出。例如,若輸入的四位正整數為3175。按逆序顯示輸出分離出的各位數字為5713 組成的最大數為7531,組成的最小數為1357。具體要求 1 輸...
第二個驅動
上次編譯成功hello world,興奮了好一會,呵呵。之前一直嘗試都沒成功。緣分未到,各種各樣的原因會讓嘗試失敗。用hello.ko練習了一把insmod,lsmod,rmmod,modinfo等命令,這些是使用module的基本命令吧。然後就開始著手開展下一步學習了,有個guide上面說,編譯完...