freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

優(yōu)秀畢業(yè)論文設(shè)計:基于linux下智能手機的設(shè)計-wenkub

2023-05-13 07:48:48 本頁面
 

【正文】 )體系結(jié)構(gòu) 。 基于 Linux 下智能手機的設(shè)計 5 (3)存儲器支持 、 、 、 。模塊化的架構(gòu)可以利用現(xiàn)有手機上的成 熟方案,對現(xiàn)有手機上的大部分代碼和電路只需稍加修改就可重復(fù)使用,工程師可以集中精力開發(fā)新的多媒體應(yīng)用功能,從而縮短整個開發(fā)時間,降低開發(fā)成本。 (5)支持中國移動和中國聯(lián)通兩個運營商 。 (2)觸摸屏輸入功能,可輸入數(shù)字,字母,漢子等信息。 (3)對手機硬件平臺的設(shè)計和構(gòu)建 ,并對其進(jìn)行深入的探討。 由于智能手機結(jié)合了強大的硬件運行能力以及開放的軟件操作系統(tǒng),因此無論是娛樂還是商務(wù)應(yīng)用,智能手機的功能都能夠在強大的第三方軟件的支持下獲得無限的擴展。由于 Linux操作系統(tǒng)介入智能手機領(lǐng)域較晚,采用此操作系統(tǒng)的手機比較少,所以專為這些少量用戶所制作的第三方軟件還非常少,影響了 Linux操作系統(tǒng)在智能手機領(lǐng)域內(nèi)的勢力擴張。使用起來能帶來急速體驗,在同硬件配置上,能獲得其他智能手機操作系統(tǒng)得不到的快樂。 Linux操作系統(tǒng)在使用中的優(yōu)點是十分明顯的。 Linux開發(fā)起來最大的特 基于 Linux 下智能手機的設(shè)計 2 點是從根本上開放源代碼,與其他系統(tǒng)相比,采用開放源代碼的 Linux手機操作系統(tǒng)能夠大大降低成本。由 于很多公司在 Linux桌面應(yīng)用開發(fā)的經(jīng)驗而促成其轉(zhuǎn)向 [2]。通訊模 塊 SIM300,包含了基帶芯片、 RF 射頻芯片組、Combo Flash 芯片以及 GSM/GPRS 終端所需的全部軟件功能,支持標(biāo)準(zhǔn) AT 命令控制,具有語音功能、 SMS 信息、數(shù)據(jù)功能、 GSM 增值服務(wù)等功能。這就需要 手機不僅具有高性能的嵌入式處理器,更側(cè)重于系統(tǒng)軟件平臺的穩(wěn)定性、可移植性、可擴展性。通過對硬件的配置和軟件的設(shè)計實現(xiàn) 手機 信號強度檢測、運營商 檢測、發(fā)短信、接短信、打電話 、建立通訊錄和刪除通訊錄 接電話的功能。 基于 Linux 下智能手機的設(shè)計 I 基于 LINUX 下 智能 手機的設(shè)計 摘要 Linux 操作系統(tǒng)的 手機最根本的特點是具有一個開放性的操作系統(tǒng),并且能夠進(jìn)行功能擴展和可以安裝第三方應(yīng)用軟件。最后,建立硬件環(huán)境和交叉編譯環(huán)境,在 Linux 環(huán)境下,編譯代碼生成可執(zhí)行文件,由交叉編譯器在基于 GPRS 模組的 ARM9 開發(fā)板上運行可執(zhí)行程序,通過觸摸板上面的虛擬按鍵 進(jìn)行功能的檢測,根據(jù)檢測的結(jié)果優(yōu)化程序,使 系統(tǒng)更加完美和流暢。 本手機在硬件設(shè)計上采用 三星 公司的基于 ARM920T內(nèi) 核 的 S3C2440高 性能嵌入式處理器 、 凌陽 公司的 SIM300 通訊模塊、 flash、 LCD、觸摸屏等實現(xiàn)一個完整的手機硬件開發(fā)平臺。本智 能手機系統(tǒng)軟件就在此硬件開發(fā)平臺上實現(xiàn) [1]。 智能手機終端產(chǎn)品的開發(fā)中,國內(nèi)基于 Linux的嵌入式操作系統(tǒng)應(yīng)用開發(fā)商遠(yuǎn)多于桌面應(yīng)用開發(fā)商, Linux具有最大的自由開發(fā)群。而且開放源代碼還有一個好處是 允許手機制造商根據(jù)實際情況,有針對性地開發(fā)適合自己手機的 Linux操作系統(tǒng),這樣既能讓自己的產(chǎn)品有特色,又能避免受制于人,還能夠滿足用戶多方面的應(yīng)用。首先,對于消費來說,采用的應(yīng)用于智能手機上的 Linux操 作系統(tǒng)和我們常說的應(yīng)用于電腦上的 Linux操作系統(tǒng)是一個系統(tǒng),而且都是全免費操作系統(tǒng)。如果以 Linux平臺的系統(tǒng)資源占用程度同體積龐大的 Windows Mobile相比,其結(jié)果可想而知。在 Linux的平臺上進(jìn)行開發(fā),對廠商的要求比較高,業(yè)界需要更強大的軟件。因此,在未來的手機市場上,智能手機將引領(lǐng)整個手機發(fā)展的潮流,而不是局限于現(xiàn)在的高端手機。 (4)把程序在硬件平臺上面運行,測試手機性能,完善手機功能。 (3)短信息支持中英文接收和發(fā)送。 基于 Linux 下智能手機的設(shè)計 4 2 手機系統(tǒng)的整體設(shè)計 硬件平臺 本文設(shè)計的基于 ARM9平臺的 智能手機系統(tǒng)架構(gòu)為基帶處理器 ( S3C2440) +應(yīng)用處理器 ( SIM900) 的雙處理器架構(gòu)。 圖 21 ARM9試驗儀結(jié)構(gòu) S3C2440介紹 S3C2440A 是韓國三星公司推出的 16/32 位 RISC 微控制器,其 CPU 采用的是ARM920T 內(nèi)核。 (4)I/O 均支持 供電。 存儲器控制器特性: S3C2440 采用總線結(jié)構(gòu)管理片上外設(shè)及內(nèi)存。 bank0 可以作為引導(dǎo) ROM,其數(shù)據(jù)線寬只能是 16 位和 32 位,其它存儲器的數(shù)據(jù)線寬可以是 8 位、 16 位和 32 位。 NAND FLASH 啟動方式,即代碼燒到 NAND FLASH 中,借助片內(nèi) 4K 的 SRAM,將代碼由 NAND FLASH 烤到 SDRAM 中,在 SDRAM 中運行。 SIM900與S3C2440的通信通過 UART接口,可以由 AT命令來實現(xiàn)。模組帶有一個 10 針的接口,該接口可以直接和 MCU 相連接。 (3)無線網(wǎng)絡(luò)終端。 連接 GPRS 模組到實驗箱的 J8( GPRS)接口上,注意一定要按順序(實驗箱的12V 接模組的 VCC, IOB0 接 PWRKEY, GND 接 GND)插接,且不可插反或錯位;斷開 JP JP8 的所有跳線;斷開手柄接口與手柄的連接;如圖 23 配置 GPRS;如連接耳麥和天線。剪裁和優(yōu)化后的 Linux體積更小,性能更加穩(wěn)定,而且源代碼本身是免費的。內(nèi)核的 90%以上的代碼是用可移植性好的 c語言完成的,少部分的底層相關(guān)的代碼由匯編語言完成,并根據(jù)處理器類型分門別類的放在系統(tǒng)內(nèi)核源碼的 Linux/arch/目錄中。 (2)可裁減,性能優(yōu)異,應(yīng)用軟件豐富 Linux的動態(tài)模塊加載使 Linux的剪裁極為方便,高度模塊化的部件使添加非常容易。 Linux是一個全面的多任務(wù)和真正的 32位操作系統(tǒng)。 Linux下有許多同樣遵循 GPL規(guī)定的一系列的軟件工具開發(fā)包,它們均為自由 發(fā)布及使用的代碼,從功能上看并于亞于商用開發(fā)包,可以極大地降低開發(fā)成本。Linux內(nèi)核對網(wǎng)絡(luò)協(xié)議的設(shè)計是從簡潔高效的角度出發(fā)的。 (5)GUI開發(fā)支持 Linux本身有性能優(yōu)秀的 X Windows系統(tǒng),在 X Windows系統(tǒng)的支持下,能方便的進(jìn)行圖形用戶界面的開發(fā)。需要在內(nèi)核中添加相應(yīng)的串口驅(qū)動。 TXD、 RXD 數(shù)據(jù)線以 ―位 ‖為最小單位進(jìn)行數(shù)據(jù)傳輸,而信息的最小單位為幀 ,幀由規(guī)定好的若干位組成:開始位、數(shù)據(jù)位、 奇偶 校驗位、停止位等 如圖 26。通常采用 ASCII 碼。可以是 1 位、 位、 2 位的高電平。 空閑位 :處于邏輯 ―1‖狀態(tài),表示當(dāng)前線路上沒有資料傳送。 圖 25 UART數(shù)據(jù)傳輸方式 圖 26 數(shù)據(jù)幀的格式 開始位 數(shù)據(jù)位 校驗位 S3C2440 UART TXD RXD GND RXD UART TXD GND 停止位 GPRS 基于 Linux 下智能手機的設(shè)計 11 3 手機的軟件系統(tǒng)設(shè)計 通信系統(tǒng)設(shè)計 GPRS 模組和微處理器之間的連接時通過串口,對于微處理器而言, GPRS 模組就相當(dāng)于一個調(diào)制解調(diào)器,微處理器通過串口發(fā)送 AT 指令控制 GPRS 模塊工作情況和得到 GPRS 模塊相 關(guān)信息。 AT+CMIC=? AT+CMIC=channel,gain 設(shè)置 MIC 的通道及增益。 AT+CSCS=? AT+CSCS=[chset] 選擇 TE 字符集。 ATA ATA 呼叫應(yīng)答。 上位機通過 UART 發(fā)送 AT 命令到 GPRS 模組。應(yīng)答模式下的命令和響應(yīng)如表 2 所示。 手機的應(yīng)用程序設(shè)計 串口初始化 手機硬件平臺中的 GPRS 模組和微處理器之間通過 UART 串口連接和通信,在使用 UART 串口前要對串口的一下數(shù)據(jù)進(jìn)行初始化,包括波特率、數(shù)據(jù)位、停止位、奇偶校驗位等。 /*設(shè)置串口的波特率為 115200bps*/ amp。 /*設(shè)置奇偶校驗位為無奇偶校驗 */ amp。 |= CS8。 其函數(shù)原形如下: int write( int handel, void *buf, int nbyte); int read( int handel, void *buf, int nbyte); 然后初始化 GPRS,程序如下: GPRS_SendCommand(AT+CMIC=0,15\n)。 /*設(shè)置短信息格式 */ GPRS_SendCommand(AT+CLIP=1\r\n)。 DeleteQueue(Buf)。939。amp。) { sign= ((Buf[6] 0x30)*10+ Buf[7] 0x30)。i++) { TFT_Rectangle(Signbox,60+i*6,19i*3,63+i*6,22,1)。 DeleteQueue(Buf)。 TFT_Print(Msg, 無 SIM 卡 ...)。 DeleteQueue(Buf)。C39。 printf(注冊網(wǎng)絡(luò)中 ...\r)。 if(i=10) { printf(網(wǎng)絡(luò)注冊失敗 \n)。)amp。)) { memcpy(infoshow, 中國移動 ,strlen(中國移動 ))。 return 0。amp。 return 0。 GPRS_SendString(\r)。 while(PhoneBook_Show(Info_List, MaxNum) == ERROR) { printf(你們所指定的位置沒有信息 \n)。 while(PhoneBook_Show(Info_List, MaxNum) == ERROR) { printf(你們所指定的位置沒有信息 \n)。 短信發(fā)送的 程序 設(shè)計 首先選擇菜單項 ―發(fā)短信 ‖,進(jìn)入發(fā)送短信子程序。 Tel_Num[i] = 39。 Tel_Num 即為輸入的電話號碼,由于 GPRS只識別 uncode 碼,所以我們要把電話號碼和發(fā)送短信的內(nèi)容轉(zhuǎn)化為 uncode 碼后再發(fā)送,發(fā)送短信的命令的格式為: ―AT+CMGS=電話號碼 , 短信內(nèi)容 ―代碼如下: GPRS_SendString(AT+CMGS=)。 TFT_Msg_Print(請輸入短消息 :\n)。) { GPRS_SendString(\033\n)。 //將信息轉(zhuǎn)換為 UNICODE 碼 GPRS_SendString(Info_Uni)。\039。 break。 //把收到信息轉(zhuǎn)化我字符串的形式 sleep(2)。 TFT_Print(Msg, %s\n,UniToStr(Buf, Buf_GB))。 TFT_Print(Msg,回復(fù) )。 GPRS_SendString(\n)。 } 基于 Linux 下智能手機的設(shè)計 22 return Num。039。 TFT_Print(Callbox,%s,key_buf)。 } if(i==0) { flag=0。 GPRS_SendString(key_buf)。 TFT_SetTextPos(Callbox, 0, 15)。主要功能是提供主菜單的顯示和觸摸屏數(shù)據(jù)的讀取。 // 創(chuàng)建主窗口 1 TFT_File_Picture(MainFrame, 0, 0,1)。 // 創(chuàng)建信號顯示窗口 3 TFT_SetColor(Msg, COLOR_RED)。 MsgRecv_pthrea 線程:主要是對隊列里的數(shù)據(jù)進(jìn)行分析處理找出主要信息并進(jìn)行 基于 Linux 下智能手機的設(shè)計 24 相應(yīng)的操作。 char TEMRecvBuf[11]。 TFT_Print(Callbox, 來電話了 !!!)。i++) { TEMRecvBuf[i]= g_RecvBuf[i+8]。 TFT_Print(Callbox, TEMRecvBuf)。 TFT_ClearWindow(Callbox)。 memset(g_RecvBuf,0,300)。 TFT_Print(Callbox, 來消息了 !!!)。 代碼如下: void *UARTread_pthread(void *arg) { int size=0,i=0。 g_RecvBuf[size++]=ch。 } g_RecvBuf[size]=39。 InsertQueue(g_RecvBuf)。 代碼如下: void *main_pthread(void *arg) { int x,y。 Desk_Show()。 Touch_G
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1