www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]序言:記錄一個(gè)新平臺(tái)的學(xué)習(xí)過程。1、大概是去年公司9周年年慶的前一周花了1330元買了Nokia5230這款智能手機(jī),其搭載的是ARM11的CPU和Symbian第五版的OS,是個(gè)很典型的嵌入

序言:記錄一個(gè)新平臺(tái)的學(xué)習(xí)過程。

1、大概是去年公司9周年年慶的前一周花了1330元買了Nokia5230這款智能手機(jī),其搭載的是ARM11的CPU和Symbian第五版的OS,是個(gè)很典型的嵌入式開發(fā)平臺(tái),對(duì)于從事軟件行業(yè)的我,自然少不了在這個(gè)平臺(tái)上玩玩應(yīng)用開發(fā)了,于是就有了這部筆記。

2011-11-07 01:18:07 [雖然這個(gè)系統(tǒng)已經(jīng)有點(diǎn)過氣了,但是我還是選擇學(xué)習(xí)它,理由很簡(jiǎn)單 —— 因?yàn)閾碛?,所以珍?hellip;…]

2、既然要開發(fā)應(yīng)用,自然首先要去了解這個(gè)平臺(tái)有哪些開發(fā)方式了,在Nokia的官網(wǎng)了解到,開發(fā)方式還是挺多的,有如下方式:Widget、J2ME、QtSDK、SymbianSDK。通過簡(jiǎn)單的了解,知道了Widget就是Web開發(fā)(html+javascript的方式),通過這種方式做了個(gè)“魔方計(jì)時(shí)器”,結(jié)果發(fā)現(xiàn)計(jì)時(shí)非常的不精確,況且我本來就不喜歡Web開發(fā),于是很自然的將此方法排除,但是不得不說,這是最簡(jiǎn)單的一種開發(fā)方式。然后就是J2ME,這就是大名鼎鼎的Java了,我在大學(xué)就開始玩這個(gè)了,那時(shí)就寫了個(gè)“MD5計(jì)算器”,在舍友的手機(jī)上也跑起來了,感覺挺好玩的,所以我自然一開始選擇了這種方式,也就是擴(kuò)展了大學(xué)時(shí)寫的那個(gè)程序,加入了幾個(gè)其它的Hash算法,也就改名叫“Hash計(jì)算器”了,后來把畫圖、線程等技術(shù)也都簡(jiǎn)單弄通了,但是接下來想玩玩手機(jī)的重力感應(yīng)(這些硬件擴(kuò)展功能其實(shí)才是移動(dòng)開發(fā)最好玩的東東)等功能時(shí),發(fā)現(xiàn)Java不怎么好用了,似乎對(duì)這些外設(shè)支持得不是很好,而且Java也不是我最喜歡的語言,我最喜歡的語言是C/C++,于是乎,開始了解上面提到的后面那兩種開發(fā)方式了,一開始非常搞不清它們的關(guān)系,隨著時(shí)間的流逝,隨著工作中技術(shù)的進(jìn)展(這段時(shí)間在工作中技術(shù)可謂突飛猛進(jìn)啊,了解了很多計(jì)算機(jī)底層的東西),終于了解并理解了這兩種方式的區(qū)別,QtSDK:Qt是一種應(yīng)用程序框架,它定義了一整套的供應(yīng)用開發(fā)的API,并且在很多平臺(tái)上實(shí)現(xiàn)了(例如:Windows、Linux、Mac、Symbian等等),可以這樣理解,其實(shí)Qt很類似Windows上的MFC,MFC是通過調(diào)用Win32SDK完成各種功能的,同理,在Symbian上,Qt是通過SymbianSDK來實(shí)現(xiàn)各種功能的,所以可以這樣理解,Qt只是在SymbianSDK的基礎(chǔ)上封裝了一層,前面提到過,Qt在很多平臺(tái)都有實(shí)現(xiàn),所以用Qt寫出來的程序可以在很多平臺(tái)上運(yùn)行,只要編譯時(shí)選擇相應(yīng)的平臺(tái)就可以了,我嘗試了Qt在Symbian、Windows和Linux平臺(tái)上的表現(xiàn),很不錯(cuò),尤其是在Linux上實(shí)現(xiàn)了UI編程,這可是我第一次在Linux上寫UI程序啊。好了,不扯得太遠(yuǎn)了,回到正題,開始選擇Qt,郁悶即將開始,我那時(shí)下載的是NokiaQt4.6版本的,下載好,安裝好,首先開始瀏覽一下里面的開發(fā)文檔,然后被里面各種各樣的目錄內(nèi)容弄得云里霧里的,當(dāng)時(shí)不是很明白為什么里面好像又有個(gè)SymbianSDK的目錄,不管了,先編個(gè)程序試試,打開QtCreate,玩玩各種UI控件,拖拖拽拽,跟MFC開發(fā)Windows程序差不多,很快HelloWorld級(jí)別的東東就出來了,然后開始玩Sensor(傳感器,也就是重力感應(yīng)、距離感應(yīng)之類的外設(shè)了),很郁悶,一開始就發(fā)現(xiàn)編譯不過,連Qt自帶的例子都編譯不過,然后開始試著全部在命令行下完成各種編譯操作的,其中也碰到了很多問題,不過最后還是編譯過了,但是又運(yùn)行不了,哦,還要安裝qt_installer.sis和qtmobility.sis(這個(gè)東西很類似DirectX(玩過CS、魔獸爭(zhēng)霸嗎?玩過的話就肯定裝過它了)、Java虛擬機(jī)等等這類環(huán)境組建,專業(yè)點(diǎn)的說法就叫‘運(yùn)行時(shí)環(huán)境’,runtime這個(gè)英文經(jīng)常見吧,就是它了),這個(gè)爛東西差不多11M,而且還必須裝在C盤,害我不得不卸載了一些其它的軟件,并且對(duì)于我的手機(jī)來說還真是太占空間了,不過最后總算正確的完成了讀取手機(jī)剩余電量的小功能,然后就是距離感應(yīng)器了(這個(gè)東東我把它和環(huán)境光感應(yīng)器搞混了,一直以為是環(huán)境光感應(yīng)器,結(jié)果搞了好久都沒有成功,最后還好意識(shí)到了這點(diǎn),才最終搞定),玩通這個(gè)后其它的什么重力感應(yīng)器的都順帶搞定了,這時(shí)寫了第一個(gè)程序“Sensor測(cè)試工具”,后來又寫了“水平儀”、“俄羅斯方塊”(這個(gè)是半成品,沒有最終完成),這段時(shí)間搞定了Qt里的線程、畫圖、文件操作,數(shù)據(jù)結(jié)構(gòu)之類的各種技術(shù),后來還移植了tinyxml、Box2D這些開源庫(kù)到手機(jī)上簡(jiǎn)單玩玩。隨著時(shí)間的過去和自身的成長(zhǎng),發(fā)現(xiàn)Qt也有不好的地方,首先感覺就是臃腫,一個(gè)Qt運(yùn)行時(shí)庫(kù)就很占地方了,其次UI不是很好控制,其中我在玩菜單欄時(shí),里面有個(gè)選項(xiàng)我是怎么也去不掉,灰常郁悶,后來讓我徹底對(duì)Qt失望的就是更新了NokiaQt4.7,一個(gè)超級(jí)大的庫(kù),1.77G啊,下了很久,也裝了很久,運(yùn)行起來也感覺比較卡,最后發(fā)現(xiàn)跟4.6還不兼容,而且不知怎么搞的,居然編譯不出sisx文件,xx的,懶得跟它玩了,早知道不升級(jí)還好,真是讓人抓狂,那一刻,我徹底厭倦了NokiaQt??偨Y(jié)一下前面這3種開發(fā)讓我最后放棄的原因:【1】、Widget——簡(jiǎn)陋,就像個(gè)破草屋,很簡(jiǎn)單也很簡(jiǎn)陋。【2】、Java——功能弱,估計(jì)是我沒有使用Nokia官方的JavaSDK開發(fā)包(注:我是用Wireless Toolkit 2.5.2的,還是大學(xué)時(shí)下載的哦,那時(shí)Sun還沒有被收購(gòu)……)的緣故吧,唉,不過也懶得裝了?!?】、Qt——不成熟,運(yùn)行時(shí)庫(kù)比較笨重(至少在Symbian平臺(tái)上,我的感覺是這樣的)。最后我選擇了SymbianSDK配合Carbide.c++這樣的黃金搭檔,這個(gè)開發(fā)方式是最難的,但是確是最強(qiáng)大的,相當(dāng)于在Windows上直接使用Win32SDK來開發(fā)應(yīng)用一樣,雖然低效些,但是強(qiáng)大。個(gè)人感覺,開發(fā)一個(gè)平臺(tái)的應(yīng)用,還是本地代碼王道,正如百度更懂中文、英特爾更懂奔騰這樣的道理一樣。好了,接下來的日子里,才是真正的開始玩Symbian開發(fā)了。

2011-11-07 21:09:29 [享受編程的樂趣,讓生活更美好]

3、SymbianSDK與Carbide.c++的環(huán)境還是很容易搭建的,但是搭建好后,第一個(gè)程序就沒有編譯通過,后來找到原因是ActivePerl的版本不對(duì),我裝的版本過高了!原來Symbian的開發(fā)文檔里面就有明確說明對(duì)版本是有要求的,具體的就是:ActivePerl-5.6.1.635MSWin32-x86.msi,最后我通過QQ旋風(fēng)在ftp://ftp.activestate.com/ActivePerl/Windows/5.6/ActivePerl-5.6.1.635-MSWin32-x86.msi把安裝包下載了下來,安裝后編譯順利通過。好了,那么接下來就可以面對(duì)一個(gè)全新的系統(tǒng),從零開始了,我第一個(gè)想到的就是要建立調(diào)試手段,很自然的想法就是讓程序?qū)ψ约旱牟僮饔兴硎?,例如彈出?duì)話框,在界面輸出文字什么的等等,要打印信息,很自然的就要用到字符串這種基本類型,結(jié)果也著實(shí)折騰了一番,在那一堆的描述符和類中轉(zhuǎn)來轉(zhuǎn)去,最后還是忍不住百度谷歌了(本來想完全通過自己看文檔手冊(cè)搞定了,苦于求進(jìn)展心切,還是搜索吧),問題自然是很簡(jiǎn)單的解決了,最后發(fā)現(xiàn)TBuf就很好用了,與C++中的string類型比較類似了,而彈出信息框這個(gè)功能在IDE生成的實(shí)例工程中就有,所以到這里,簡(jiǎn)單的調(diào)試手段就有了。接下來看代碼,把代碼大致的框架和相關(guān)文件作用了解后,像Help文檔就知道怎么改了,當(dāng)然,一開始也不知道,也是網(wǎng)上搜索的(真失敗呀,我老是在作弊,呵呵),然后菜單欄里的菜單項(xiàng)則是照葫蘆畫瓢的就知道怎么擴(kuò)展了,之后很快就把GUI引擎玩通過了(這其中有把畫直線的操作放在錯(cuò)誤的函數(shù)里導(dǎo)致程序退出的問題,后來才想到,具體的繪圖操作必須放在特定的地方,其它函數(shù)只能調(diào)用類似‘刷新’操作的函數(shù)),可以在手機(jī)的屏幕上畫畫了,再接著顯示字符串到屏幕上也搞定了(一開始也掛了,后來網(wǎng)上查到,是要設(shè)置字體類型,xx的,居然沒有默認(rèn)的),再接著把觸摸屏幕的消息也捕獲到了(這其中拖拽消息一開始沒有捕獲到,后來發(fā)現(xiàn)是要使能才有的),至此,先玩到一段落先。[!--empirenews.page--]

2011-11-08 23:59:21 [體驗(yàn)一個(gè)全新平臺(tái)的開發(fā),從新開始認(rèn)知計(jì)算機(jī)編程]

4、好久沒有寫筆記了,中間因?yàn)楣ぷ鞯年P(guān)系停止了一段時(shí)間,不過最近又開始繼續(xù)玩了,最近弄清楚了以下幾大塊的概念:“異常退出(leave)”、“清除棧(CleanupStack)”、“兩階段構(gòu)造(ConstructL())”、“Symbian的命名規(guī)則”。搞懂這些之后再看SDK中的那些Demo就沒有那么郁悶了,目前的進(jìn)度是搞定了內(nèi)存位圖(即:實(shí)現(xiàn)了雙緩沖繪圖機(jī)制)以及Sensor(傳感器)編程,至少把距離感應(yīng)器玩通了,其它的感應(yīng)器也類似的了,基本沒有什么問題了。

2012-01-21 21:11:47 [感受Symbian,學(xué)習(xí)一個(gè)OS的思想]

5、半年沒有更新這部筆記了,看來堅(jiān)持確實(shí)是件難事,我一向就不喜歡寫日記,寫寫隨記還行。半年時(shí)間,對(duì)于Symbian編程我又進(jìn)步了不少,首先是年后剛開始上班,不是太忙,業(yè)余時(shí)間里就把印象中童年時(shí)期第一個(gè)玩到的游戲(俄羅斯方塊)給實(shí)現(xiàn)了,當(dāng)然,也可能是紅白機(jī)的超級(jí)瑪麗,反正是記不太清楚了,不過至少我清楚的記得我擁有的第一臺(tái)游戲機(jī)就是俄羅斯方塊,這個(gè)俄羅斯方塊我首先是在Windows下把核心部分架構(gòu)并實(shí)現(xiàn)了,也可以稱為“引擎”吧,然后也在Windows上基于MFC寫了個(gè)Demo,把核心部分調(diào)通測(cè)通,接著就往Symbian上移植了,其中用到的技術(shù)主要有:屏幕繪圖、內(nèi)存位圖、傳感器、定時(shí)器、中文、程序圖標(biāo)以及一些極其簡(jiǎn)單的UI(主要就是菜單選項(xiàng)),最后還有操作手機(jī)的震動(dòng)器,消除四行或速度提升時(shí)會(huì)震動(dòng)提示,增加用戶體驗(yàn)而已,呵呵。大概斷斷續(xù)續(xù)寫了兩個(gè)多月這樣吧,期間包括一些簡(jiǎn)單的內(nèi)測(cè),然后沒有什么問題也就在互聯(lián)網(wǎng)上分享出來了(‘官方’地址:http://blog.csdn.net/leng_que/article/details/7505791),至此,感覺Symbian編程估計(jì)也就玩到這了,剩下的無非就是再增加技術(shù)種類以及提高技術(shù)細(xì)節(jié)了,這類事情如果不是工作需要,我是不會(huì)太花費(fèi)時(shí)間和精力去玩的,畢竟是‘玩玩’而已,點(diǎn)到即可,有了這些基礎(chǔ),想要提高也不會(huì)太難。

2012-07-11 01:01:09 [Symbian,我入門了]

6、本來估計(jì)Symbian編程也就到此為止了,后來卻機(jī)緣巧合的接了個(gè)Symbian的項(xiàng)目,于是就接著玩接著折騰了唄,其中主要涉及到了多視圖結(jié)構(gòu)、列表控件、輸入對(duì)話框、消息確認(rèn)對(duì)話框、文件讀寫、HTTP網(wǎng)絡(luò)通信、XML解析、瀏覽器控件等等,完成這個(gè)項(xiàng)目,中間也碰到了些許詭異的Bug,不過基本都一一解決了,看著穩(wěn)定的程序出爐上線,感覺還是不錯(cuò)的。在這段過程中,我更多且更清楚的了解了Symbian中的一些特性,比如其中的活動(dòng)對(duì)象、UI相關(guān)的資源定義文件(rss)、安裝包制作相關(guān)的文件(pkg)、以及mif圖像文件等等。嗯,差不多也就是這樣了,以后估計(jì)也沒什么太多需要筆記的了,或者以后有空可以再玩玩Android和iOS的開發(fā),呵呵。其實(shí)每個(gè)平臺(tái)的開發(fā)過程都是差不多的,就拿Symbian來說吧,首先是硬件:一臺(tái)Windows系統(tǒng)的PC、一部Symbian系統(tǒng)的手機(jī)、一個(gè)藍(lán)牙適配器(方便將程序傳輸?shù)绞謾C(jī)上進(jìn)行真機(jī)調(diào)試),然后是軟件:SymbianSDK、Carbide.c++,基本就可以了,軟件的話去Nokia的官方開發(fā)者社區(qū)去下載比較好,然后根據(jù)里面的說明把開發(fā)環(huán)境搭建好,剩下的事情就是通過SDK的文檔、百度谷歌以及自己的思考去一步步入門和前進(jìn)了。這部Symbian手機(jī)也用了快兩年了,兩年時(shí)間,斷斷續(xù)續(xù)的在折騰著這個(gè)系統(tǒng),從中也學(xué)到了許多,同時(shí)這兩年也是Symbian逐漸沒落的兩年,如今Andriod和IOS大放光芒,顯得Symbian是多么的黯淡無光,不過不管什么系統(tǒng)什么平臺(tái),終究是一種規(guī)則的集合,其中總是有好有壞的,只要我們能從中學(xué)到東西就好。

2012-07-11 21:15:26 [我在進(jìn)步著,Symbian卻在沒落著……]

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉