一、背景
本指南將詳細介紹啟明智顯的Model3C芯片電阻屏RTP配置、調試與測試指南。無論您是電子愛好者、開發者還是工程師,這份指南都能助您快速上手并充分利用這款觸摸屏的各項功能。
二、芯片介紹
Model3C是一款基于RISC-V的高性能、國產自主、工業級高清顯示與智能控制MCU,廣泛應用于工業自動化控制、串口屏等智慧工業和智慧家居領域。其內置的電阻觸摸屏接口(RTP)提供了便捷的交互途徑,簡化了系統設計和硬件布局。本指南將詳細介紹Model3C芯片電阻屏RTP的配置、調試與測試過程。
三、 RTP模塊特性:
-
支持4線RTP,即X+、X-、Y+、Y-
-
支持壓力感應
-
支持最多2點觸摸
-
支持采樣濾波,濾波參數可配置
-
支持觸摸檢測中斷
-
FIFO深度16
RTP需要依賴ADCIM模塊(統一管理硬件通路和處理信號校準),其關系如圖:
對于一次RTP的點擊動作,會有4個相關的采樣點:X+、X-、Y+、Y-(詳見下文), 這些采樣點的選擇和控制方式可以有不同的組合,分為兩大類采樣模式:
- 手動模式
手動去配置硬件4個采樣點的電路信號,來組合得到XN、YN、ZA、ZB等采樣數據。
- 自動模式
自動模式意味著硬件自動配置電路,直接輸出XN、YN、ZA、ZB等采樣結果。 在自動模式中,根據采樣數據是否連續進行又分為:
Period sample:周期采樣,硬件會按照配置的周期自動采集和上報數據
Single sample:為避免和“單個采樣點”混淆,稱作 非周期采樣,由軟件觸發完成一次采樣
四、 RTP參數配置
1. 驅動配置
RTP模塊依賴DE驅動和MPP
在 ZX-RTT 根目錄下執行 scons --menuconfig,進入menuconfig的功能配置界面,按如下選擇:
Board options --->[*] Using Graphics Engine (GE)Graphics Engine Parameter --->[*] Using Video Engine (VE)Drivers options --->Peripheral --->Touch Panel Support --->RTP touch panel options --->[*] Using touch panel RTP(18) The sample period of RTP(in cycle mode)(800) The pressure threshold of RTP(235) The x-plate value of RTP touchscreen(665) The Y-plate value of RTP touchscreen(0x4f00004f) The precharge delay of RTPLocal packages options--->ZX packages options--->[*]aic-mpp
若使用顯示模塊進行RTP校準,可參考Display使用配置 menuconfig
當使用 RT-Thread 內核的時候,RTP 驅動需要依賴RT-Thread的 Touch 設備驅動框架,也是在menuconfig界面中打開:
Rt-Thread options --->RT-Thread Components --->Device Drivers --->[*] Using Touch device drivers[ ] touch irq use pin irq
**> 小技巧
為了簡化使用,Using RTP 會自動打開 RT-Thread 的 Touch設備驅動框架。
touch irq use pin irq 不要進行勾選。由于RTP當前采用內部控制器,并不需要單獨引腳進行中斷控制。**
2.RTP 自定義參數
RTP驅動在menuconfig中提供了一些擴展參數,方便客戶根據板級硬件設計來進行調整。如下表: 如下表:
不同的參數組合,可以讓RTP工作在不同的采樣模式,對應關系如下:
備注
受限于RTOS的任務管理手段,目前只支持 Auto2周期 模式
對于Auto2模式,如果用戶配置了AIC_RTP_Y_PLATE,ZB數據將驅動被忽略,壓感計算 時采樣公式2
為了簡化描述,下文中會將AIC_RTP_X_PLATE、AIC_RTP_Y_PLATE分別簡稱為X_PLATE、Y_PLATE
3.觸摸屏的電阻實測方法
小技巧
原理圖中觸摸屏的四個引腳為PA11(YN)、PA10(XN)、PA09(YP)、PA08(XP)。
測量過程中需根據電路原理圖中RTP的引腳順序,確定XN、XP、YN、YP在屏幕的位置。
4.幾款RTP屏幕的參數
這里記錄測試過的幾款屏幕參數,主要是X、Y方向的電阻值,對應參數中的X_PLATE、Y_PLATE:
五、調試指南
- 調試開關
在 ZX-RTT 中 RTP 驅動的Log控制接口共用了全局的 ulog 接口。
- 查看控制器狀態
在 RTP 驅動初始化成功后,會在shell命令行中注冊生成一個 rtp_status 命令,其中打印了當前的配置及狀態信息:
aic /> rtp_status
In RTP controller V1.00:
Mode hw 2/ sw 2, RTP enale 1, Press detect enable 1
Pressure enable 1, max 800, x-plate 235, y-plate 0
Sample period: 15 ms, Fuzz: 0
六、測試指南
- 測試環境
- 帶觸屏功能的屏幕
- 帶RTP接口的開發板
- USB Type-C數據線,用于給開發板供電、燒寫
- USB 轉串口的線,用于連接開發板的調試串口
- 手寫筆,可以更方便精準的點擊RTP
2.軟件
-
PC端的串口終端軟件,用于PC和開發板進行串口通信
-
test_rtp_draw測試程序
3.軟件配置
- test_rtp_draw 配置
- 在 ZX-RTT 根目錄下執行 scons --menuconfig,進入menuconfig的功能配置界面,按如下選擇:
Drivers options --->Drivers examples --->[*] Enable RTP driver test command
4.test_rtp_draw 測試
在打開test_rtp_draw的編譯后,板子上可直接運行test_rtp_draw命令:
aic /> test_rtp_draw -h
Usage: test_rtp_draw [options]:-c, --calibrate Platform the screen calibration-p, --points Set the points for drawing, defalut is 1000-d, --draw Draw the shape-h, --helpExample: test_rtp_draw -c
- RTP校準測試
RTP校準測試可以使用shell命令 test_rtp_draw -c
aic /> test_rtp_draw -c
Top left : X = 50 Y = 50
Calibration: X = 958, Y = 90
Top right : X = 974 Y = 50
Calibration: X = 69, Y = 86
Bot right : X = 974 Y = 550
Calibration: X = 61, Y = 526
Bot left : X = 50 Y = 550
Calibration: X = 876, Y = 535
Center : X = 512 Y = 300
Calibration: X = 522, Y = 303
6.RTP畫點測試
RTP畫點測試可以使用shell命令 test_rtp_draw -d
aic /> test_rtp_draw -d
0: X 552/2146, Y 496/796, Press 201
1: X 551/2140, Y 494/802, Press 207
2: X 551/2142, Y 496/797, Press 242
七、結尾
經過對Model3C芯片電阻屏RTP配置、調試與測試指南實操探索,您已對該芯片調試RTP電阻屏有了全面的認識和初步的操作能力。為了進一步加深您的技術掌握,我們即將推出一系列技術實操指導章節,涵蓋CAN、RS485、串口、PWM等接口外設應用等關鍵內容。
在接下來的技術實操指導章節中,您將深入學習并實踐關于Model3C芯片及其相關接口外設的廣泛應用,這些內容將極大地擴展您對嵌入式系統、微控制器編程及硬件接口技術的理解和操作能力。以下是您即將學習的一些關鍵內容概覽:
- CAN總線接口應用
- RS485接口應用
- 串口(UART/USART)通信
- 串口調試工具使用
- PWM(脈沖寬度調制)控制
通過這一系列技術實操指導章節的學習,您將能夠全面掌握Model3C芯片及其接口外設的應用技術,為未來的嵌入式系統開發打下堅實的基礎。
我們誠摯地邀請您繼續關注我們的內容更新,與我們一起深入探索Model3C芯片的無限可能。期待您的持續關注與參與!
同時,如果您對Model3C芯片產生了濃厚的興趣,并希望親自體驗其帶來的創新與便利,歡迎前往【啟明智顯淘寶店鋪】進行選購。在店鋪中,您將找到豐富的產品線、專業的客服支持以及便捷的購買流程,確保您的需求得到快速響應與滿足。
再次感謝您對【啟明智顯技術分享】的關注與支持!讓我們攜手共進,在技術的道路上不斷探索與前行,共創輝煌未來!