Time of Update: 2018-12-04
小弟初學Verilog,確實不太習慣,此文只是作為處級入門總結,高手請不要見笑。同時此文僅作為自己小小的經驗總結,設計思路及程式僅供參考。
Time of Update: 2018-12-04
寫了這麼久的Makefile檔案,今天遇到怪事了。工程目錄下有pppya目錄,目錄內容為pppya.c和pppya.hMakefile檔案內容如下:.SUFFIXES : .c .oCFLAGS = -g -c -Os -WallINC = -I./uart -I./pppya -I./#IFCROSS = yifdef IFCROSSCROSS=mipsel-linux-endifCC = $(CROSS)gccexport CCexport CFLAGSOBJECTS = main.o
Time of Update: 2018-12-04
我22歲,一個在大學裡攻讀美術設計的四年級的學生。爸爸62歲,一個很老的爸爸。早在世紀60年代他就在田納西理工大學編程,他在打孔紙帶上做FORTRAN開發。他知識豐富。這個學期我才剛剛開始接觸編程,而我的整個腦子全被它吸引住了。編程很神奇,很強大,在很多方面比映像設計更富創造性(我會在另外的文章裡談論這個話題)。在我假期回到家時,爸爸向我分享了無我編程的十條誡律。他把它列印出來,逐條和我討論。這是在他意外去世前我們僅有的關於編程的討論。也許這是讓我對此念念不忘的原因。來自寫於1971年的《程式開
Time of Update: 2018-12-04
你,剛畢業,什麼都不會,但是你卻很幸運的進入了一家軟體公司,獲得一個工程師的職位。上司一般都有它的考慮和矜持,為了保住工作,你得在規定的時間裡實現一些功能模組。幸運的是,系統已經有一些部分能夠給你作為參考,像抓住救命稻草一般,拚命的模仿與拷貝。最後東拼西湊的出現一個功能,還夠用。這時候問題來了,大部分公司都沒有專門做代碼審查的人。專案經理一般都是要求技術負責人關注這塊。而負責人整合、部署、測試、發布、備份、文檔、工作計劃、總結、需求、會議一大摞的事情壓得喘不過氣,可能根本沒看cvs上的代碼,功能
Time of Update: 2018-12-04
Time of Update: 2018-12-04
ListView這個控制項可謂是用處多多,最近使用ListView遇到了一些問題,在解決之後一來想留個記錄,二來想分享一下我的問題,在大家遇到後能夠快速解決。 功能說明: 實現多個版面的滑動顯示,同時多個版面中的ListView中Item要能夠響應點擊並跳轉至顯示詳細資料的Activity中。 痛點:
Time of Update: 2018-12-04
大部分人工作應該很大程度上都是為了掙人民幣,而程式員要想掙更多的人民幣,就不能滿足初級程式員了。我的理解,程式員加薪兩個方向。項目方向,相信很多項目負責人深有體會,作為負責人並不是你有多優秀,而是你跟這個項目時間最長。這就是所謂的業務積累。技術方向,你喜歡探索,你鐘愛研究,你偏執技術,你身體過硬。未來某一天,你成為了一個行業的技術標杆。顯然這個比上面業務積累要花更長的時間,也更難做到。因此,很多人成了前者。但是細細思考,這樣發展而來的項目負責人真的合格嗎?真的能從大局觀來考慮一個項目了嗎。至少我
Time of Update: 2018-12-04
最近做一個小玩意,又繼續玩起了學習已久的avr(mage8)單片機,還是那麼的熟悉。但這次可遇到了一點小麻煩,一開始就不順了。程式不能下載!!!!當然這最大的原因是下載器的原因,如果你不是使用的USBISP下載器那情況可能跟我的不一樣了。 當然在這裡也不是怪那些開發USBISP的大俠們,我忠心的佩服他們,佩服他們的技術也敬佩他們的開源精神,正因為如此我才能在此之前自己動手製作了一個AVR下載器。好了,下面具體說下我的經曆:
Time of Update: 2018-12-04
目的是這樣的:線程A實現錄影功能,所要進行的操作是網路連接與錄影儲存,並且在錄影過程中需要與主線程,即UI線程進行互動,然後線程A根據UI線程中的響應結果進行下一步處理。簡單來說就是主線程與子線程相互傳遞資訊,並且主線程會通過所傳遞的資訊控制子線程的操作。相互之間傳遞資訊不是痛點,痛點是主線程要通過傳遞資訊來控制子線程的操作,我們都知道,子線程的執行不依賴於主線程,當我們把子線程中的狀態資訊傳遞給主線程之後,在主線程根據子線程的狀態資訊進行判斷時,子線程仍會繼續執行,但我們要實現的是當主線程判斷
Time of Update: 2018-12-04
早前用qt4.6,用得挺爽,做了一些程式。感覺用c++寫介面相當的順暢。出了qt5,那自然要試一下。先試交叉編譯,因為一般來說pc上的編譯是沒有問題的。交叉編譯一般要考慮,顯示方式,有沒有顯示加速硬體,有沒有觸控螢幕,有沒有鍵盤。1下載qt5,http://releases.qt-project.org/qt5/5.0.1/single/qt-everywhere-opensource-src-5.0.1.tar.gz2 解壓3 修改設定檔qmake.conf檔案,qtbase/mkspecs/
Time of Update: 2018-12-04
生活中很多誘惑,人要自覺戰勝自己的懶惰還是很難的。縱然有態度、有方法,還是無法抵擋誘惑的攻擊。既然如此,公司應該盡量規範一個流程。再不濟也可以搞個程式碼檢閱會。選一個下午茶的時間段,一星期一次,或者一月一次。項目負責人,來組織,挑選優異的代碼、粗糙的代碼,分別進行剖析。並列入績效考核中。讓成員在交流中成長。讓那些職責不明確的代碼,晦澀的代碼,冗長的代碼,重複的代碼,過多參數的代碼,過多if/else的代碼,過多臨時變數的代碼等等無所遁形。想想,這是多麼美妙的下午。在流程中規範,讓大家都能理解,進
Time of Update: 2018-12-04
typedef struct { uchar KeyStateIndex ; / / 目前狀態索引號 uchar KeyDnState ; / / 按下“向下”鍵時轉向的狀態索引號 uchar KeyUpState ; / / 按下“向上”鍵時轉向的狀態索引號 uchar KeyCrState ; / / 按下“斷行符號”鍵時轉向的狀態索引號 uchar KeyBackState ; / / 按下“退回”鍵時轉向的狀態索引號 void
Time of Update: 2018-12-04
給定一個目錄後想要使用 list 方法列出該目錄下所有檔案檔案名稱,當該目錄下沒有檔案時則不允許之後的操作。剛開始誤以為 list 方法當路徑下沒有檔案時會返回一個 null,結果照這個思路沒有得到正確結果,輸出傳回值發現即使路徑下沒有任何檔案值也不為 null。查看協助文檔後才瞭解到只有所給字串不表示一個路徑或者出現輸入輸出錯誤時才會返回空值。於是改為判斷傳回值(字串數組)的長度進而實現了目的。
Time of Update: 2018-12-04
聊設計模式,有一個內容是必定要掌握的。類圖,一個優秀的架構,如果沒有類圖來輔助,也是一個很恐怖的事情。試想,大牛寫出的代碼,某一天,大牛離職,公司又招一個菜鳥來跟進這個系統。很顯然,菜鳥沒有大局觀,更多的是switch、if/else等控制語句來修改代碼。過不了多久,一團糟的局面又出現了。假如,把優秀的架構都整理成文檔,畫好類圖,事情會變得簡單很多。類跟類之間的關係就那麼幾種,依賴、關聯、彙總、組合、繼承、實現。一個簡單的類圖只需要處理好這幾種關係。你說有什麼難的?難的就是你肯不肯花時間,以我個
Time of Update: 2018-12-04
RandomAccessFile 類,隨機訪問檔案類,最大的特點就是可以控制檔案指標的位置,並且具有種類豐富的 write*** 與 read*** 方法,靈活讀取與寫入檔案內容。該類中有三個向檔案中寫入字串的方法:writeBytes/writeChars/writeUTF,這三個方法著實令我疑惑,查看了協助文檔才明白過來。RandomAccessFile 類中這三個方法是實現了 DataOutput介面而具有的,其中,writeBytes
Time of Update: 2018-12-04
雖說qt已經被諾基亞放棄,但是qt項目還是在進行,5.0已經出來了。在linux下寫程式,免不了要寫Makefile檔案,用automake,總感覺比較麻煩,linux人喜歡做麻煩的事,以顯得風格迥異。其實用qmake產生Makefile檔案相當簡單。1 裝好qmake工具2 在源碼工程目錄下,運行qmake -project這樣會產生一個*.pro檔案。3 運行qmake -makefile
Time of Update: 2018-12-04
感覺寫完了其實也沒怎麼理解這個函數,但是還是這裡儲存一下,希望大家予以拍磚指導:下面分析一下video_register_device這個函數:位於include/media/v4l2-dev.h標頭檔中:參考文獻:http://blog.sina.com.cn/s/blog_602f87700101a52s.htmlstatic inline int__must_check video_register_device(struct video_device *vdev,
Time of Update: 2018-12-04
開宗明義:不是抽象類別的基類不是好基類。為什麼這麼說? 基類和衍生類別的關係有如下幾種:基類可以是具體類、虛類和抽象類別三種,對衍生類別沒有要求。其中具體類是沒有虛函數的類,其所有方法都提供了具體實現;衍生類別方法如果和基類方法同名,則衍生類別方法隱藏(overwrite)了基類方法。虛類是包含虛函數的類,所有方法都提供具體實現;衍生類別如果要提供不同於基類虛方法的實現,則在衍生類別中提供同名方法,該方法將覆蓋(override)基類虛方法。抽象類別是包含抽象方法(或稱為純虛方法)的類,抽象方法
Time of Update: 2018-12-04
最近入手一部華為C8812E,將其刷為了MIUI,現在對這一過程中的問題做一總結,同時也給出有用的連結。首先,通過對C8812E刷機為MIUI是可以實現支援GSM卡的(刷機後在撥號介面輸入:*#*#4636#*#*進行相關設定即可),大家開心刷吧!刷機步驟及需要資源參考此連結:http://www.miui.com/thread-865909-1-1.html。下面說一下在刷機中與刷機後所遇到的問題,以便於大家參考:1,關於快速啟動在我們進入fastboot模式時,所查到的資料是既可以關閉快速啟
Time of Update: 2018-12-04
umount: /mnt/cdrom: device is busyEvery wonder why sometimes you get this messagewhen you try to un-mount a NFS drive or cdrom driveCODEroot@homer:~# umount /mnt/cdromumount: /mnt/cdrom: device is busyumount: /mnt/cdrom: device is