工程名稱:基于D133的智能手機
工程作者:lovelessing
前言
手搓了一臺觸屏手機(開發板)!
自己逐步實現——點亮屏幕、啟動UI、鎖屏UI、系統桌面UI、儀表盤、咖啡機、壓力測試、控件、GIF演示、鍵盤輸入、自定義列表/表格、相冊、相機、藍牙功能、音樂播放器……
實際效果類似這樣▼

自己的手機用著不香嗎?為什么要親自搓手機呢?
是這樣的,一次偶爾的機會,我找到了一個有資料的手機屏(XH8379A)并且成功的用D133單片機驅動了起來,包括顯示和觸摸!
我想著,既然屏都點亮了,那,就再順便搓一個手機吧,還能鍛煉一下嵌入式開發……
所以……怎么實現上述的手機功能?硬件怎么設計?外殼怎么設計?怎么開發的?下文一一為你解答!
01硬件設計”


LCD

POWER

AUDIO


D133手機主板-PCB圖
電路部分設計了兩個版本,最新版本是V2,是基于V1.0版本的優化版。
本章節主要分享V2.0版本的設計原理。想了解V1.0版本原理,可參考第4章指引,前往原文查看
V2版本(優化了4部分)
1.電源系統

電源拓撲十分復雜,需要實現:
USB通過充電芯片給鋰電池充電
電池給系統供電,不與USB供電沖突
USB給系統供電,不與電池供電沖突
電池通過升壓對外提供5V輸出到USB,不與充電功能沖突
無線充電功能
為了解決以上需求,初始方案是使用二極管防止電源沖突。但是!這樣會拉低電壓,并且小封裝二極管(為了手機主板體積)不能大電流工作……
于是我果斷使用PMOS分別控制各個電源的電流方向。

這時又有兩個方法。
第一,用邏輯門,根據電壓的有無情況,切換電流方向
例如:有鋰電池時,打開鋰電池供電;有USB時,打開USB供電;有鋰電池且有USB時,打開鋰電池供電,關閉USB供電,打開USB充電。但是,為了加上5V升壓輸出和無線充電功能,又要單獨考慮不同的電源情況……
另一種方法就是,用MCU來控制各處的MOS。

這里我用了第二種方法。
使用CH573實現系統電源流向控制、藍牙外設等功能。同時,其電源供給控制可以實現徹底斷電,從而降低功耗,延長手機續航。

2.調試系統
為了解決調試問題,我給手機板放了一個集線器。
正常情況下,手機USB口作為HUB輸入口,分出4個USB,分別連接——D133的USB、USB串口芯片、CH571的USB、串口。
特殊情況下,通過USB切換開關,可以將USB口直連D133作為OTG功能。


V2版本仍不是最終版本,因為我的終極目標是——做一個既精簡又多功能,還美觀的手機!
02外殼設計”
①外殼設計軟件:soildworks2022
②外殼使用3D打印,主要打印手機中框,注意預留USB-TYPE-C口、SD卡槽、電源、音量按鍵、紅外孔
③背板使用亞克力激光切割外形,扣除比較高的元件空間,類似CNC



④安裝步驟(4步)
1.首先需要用高溫膠帶固定手機的觸屏排線,便于安裝到PCB上

2.安裝按鍵到手機中框的按鍵孔中,由于結構整體對稱所以需要注意按鍵的方向,“+”在上,“-”在下,以及電源按鍵的方向
先放PCB的USB口,對齊手機中框的USB開孔,左上角注意觸摸PFC的元件位置,安裝4顆M1.2螺絲固定PCB

3.安裝鋰電池,按照PCB空擋位置安裝,接上插頭,從正面左側裝上SD卡

4.安裝手機后面板,對齊后置攝像頭挖孔,從下側螺絲孔安裝M1.2螺絲固定后蓋

03程序開發”
①D133基于VSCODE編譯,使用AiBurn通過USB接口連接電腦下載鏡像(固件)。


②程序使用luban-lite-SDK,使用RTT嵌入式操作系統編寫。界面采用極為炫酷的lvgl編寫。

③CH571藍牙開發-環境:MournRiver
④驅動移植步驟
1.顯示驅動移植:
新建xh8379a驅動,路徑:bsp/artinchip/drv/display/panel

按廠家提供的初始化序列及屏參數,參數對應到顯示面板結構體中。


屏幕初始化序列。

2.觸摸驅動移植
新建ft6306驅動,按照rtt驅動框架適配讀寫接口,IIC地址:0x38,即0x70右移1位

3.虛擬按鍵
屏幕下方虛擬按鍵隸屬于觸摸屏,手指按住虛擬按鍵時也會觸發中斷,固定上報一個坐標,這個坐標超出屏幕高度,所以需要特殊處理為按鍵信息。

然后通過輸入結構體的鍵值傳遞給UI。

04開源網址”
本項目已開源!
——想復刻?想給作者點贊?可復制開源網址前往原文。
開源網址:https://oshwhub.com/lovelessing/d133-mobile-phone-development-bo

-
單片機
+關注
關注
6076文章
45494瀏覽量
670260 -
智能手機
+關注
關注
66文章
18690瀏覽量
186044 -
觸屏手機
+關注
關注
0文章
4瀏覽量
7085
發布評論請先 登錄
多點觸控 S40首款全觸屏諾基亞306曝光
索愛720p高清全觸屏S60手機Vivaz發布
Nexus One手機觸摸屏存在嚴重多點觸控問題
顛覆觸屏時代,未來手機它才是主流
手機屏觸控原理為何,為什么戴手套則無法觸控
手搓了一個ESP32墨水屏閱讀器,蠻簡單的
我的破筆記本有救了!手搓雷電4顯卡塢!全開源了……
手搓觸屏手機,開源了!
評論