HT66Fx0 共用I/O Pin 來驅動 LCD、LED、KEY 的使用方法

HT66Fx0 共用I/O Pin 來驅動 LCD、LED、KEY 的使用方法
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
HT66Fx0 共用 I/O Pin 來驅動
LCD、LED、KEY 的使用方法
文件編碼:HA0196T
簡介
HT66Fx0 內建有 R-Type LCD 功能,提供 1/2 bias、4 個 COM 的驅動能力,本文以 HT66F40
為母體,説明共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法。
Theory of Operation
我們知道在微觀上電子元件都是基於分時掃描的原理來驅動各個功能模塊的,那麼只要我
們分時來驅動 LCD、LED、掃描按鍵,就可以實現分時共用 I/O 的目的。
根據標準 1/2 bias、1/4 duty COM 的驅動波形,考慮下麵的分時時序:
在 T0~T7 時間片來驅動 LCD,在 T8 時間片掃描按鍵,在 T9 時間片驅動 LED。
首先來看 LCD,根據 LCD 的驅動原理可知,LCD 像素點上只能加上 AC 電壓,LCD 顯示器
的對比度由 COM 腳上的電壓值減去 SEG 腳上的電壓值決定,這個電壓差的大小也決定了
LCD 像素點的打開與關閉。LCD 型 MCU 已經由內建的 LCD 驅動電路自動產生 LCD 驅動信
號,因此只要 I/O 口能模擬輸出該驅動信號,就能完成 LCD 的驅動。
1
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
由於 LCD 工作的最佳頻率通常在 25Hz~250Hz,當 HT66F40 系統頻率為 IRC 4MHz 且 Time Base
輸入頻率等於 fSYS/4 時 Time Base 中設置溢出時間為 2.048ms,以此為時基,1/4 Duty 時的帖
週期為
2.048 ms * 10 = 20.48 ms,即 1000/ 20.48 =48.12Hz。
符合要求。
當然,也可以設置 Time Base 為其他的溢出時間,可根據具體應用設置,都能符合要求。但
需要注意,系統頻率不適宜為 FL,因系統頻率太慢,無法讓掃瞄達到視覺暫留的時間,從
而導致 LCD 出現閃爍現象。另外,當 Time Base 設置為其他溢出時間時,掃描頻率會更快,
可以增強 LED 的亮度。
HT66F40 內部提供了 4 COM 的輸出,通過設置 SCOMC 暫存器即可使 PC0、PC1、PC6 和 PC7
輸出 VDD/2 電位,外部不需要再連接分壓電阻元件,內部電路和設置方式如下:
V
D D
S C O M
V
D D
o p e r a tin g c u r r e n t
/2
S C O M 0 ~
S C O M 3
C O M n E N
S C O M E N
SCOM Circuit
Output Control
另外,不同的 LCD 面板需要的驅動電流可能不盡相同,為更好驅動不同的 LCD 面板,MCU
內部還提供有四種規格的驅動電流,用戶可通過軟體設置 ISEL1、ISEL0 (SCOMC.6/5) 位元
來選擇合適的 LCD 驅動電流,具體設置如下:
ISEL1、ISEL0 =
00: 25uA
01: 50uA
10: 100uA
11: 200uA
注意上述電流參數的條件是 VDD=5V,具體數據請參考 DataSheet。
2
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
因此在一個 COM 週期內,只要每隔 2.048ms 分時設置 COM0~COM3 輸出對應的電壓即可得
到 COM0~COM3 的波形。具體來説就是第一次 Time Base 溢出時設置 COM0 輸出 VDD,其
他 COM 輸出 VDD/2;第二 Time Base 溢出時設置 COM0 輸出 VSS,COM1~COM3 輸出 VDD/2,
第三次 Time Base 溢出時設置 COM1 輸出 VDD,其他 COM 輸出 VDD/2;第四次 Time Base
溢出時設置 COM1 輸出 VSS,其他 COM 輸出 VDD/2;……;第八次 Time Base 溢出時設置
COM3 輸出 VSS,其他 COM 輸出 VDD/2;第九次中斷時掃描按鍵,第十次中斷時設置 LED
輸出。
因爲點亮 LCD 像素點需要 COM 與 SEG 有大於飽和電壓的電壓差,也就是 COM 與 SEG 有
+VDD 或者-VDD 的電壓差,所以要點亮某個像素點只要將對應的 SEG 輸出與 COM 相反的
電壓即可,比如,當 COM0=VDD,只要 SEG=VSS 就可點亮對應像素點,當 COM0=VSS,
只要 SEG=VDD 就可點亮對應像素點。
另外我們由 Application Note HA0168T 知道,LCD 的驅動還可以採用一種相對更直接的方法,
這種情況下我們就可以採用如下的分時步驟:
(1) 第一次溢出時設置 COM0 輸出 High,其他 COM 輸出 VDD/2,再根據要顯示的數據設置
各個 SEG 的輸出。
(2) 第二次溢出時設置 COM1 輸出 High,其他 COM 輸出 VDD/2,再根據要顯示的數據設置
各個 SEG 的輸出。
(3) 第三次溢出時、第四次中斷時按照上面的方法依次設置 COM2、COM3 的輸出 High 並
設置要顯示的數據。
(4) 第五次溢出時設置 COM0 輸出 Low,其他 COM 輸出 VDD/2,再根據要顯示的數據
設置各個 SEG 的輸出。
(5) 第六次溢出、第七次溢出、第八次溢出參考步驟(4)的方法依次設置 COM1、COM2、COM3
輸出 Low 並設置要顯示的數據。
(6) 第九次溢出時掃描按鍵。
(7) 第十次溢出時點亮 LED。
3
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
這種方式下的 Timing 如下:
用戶可以根據上面的時序自行修改 Application Note HA0168T 所附的 Demo Code。
4
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
Application Circuit
電路説明
可以通過減小 LED 上的限流電阻或者 S/W 增大掃描頻率來控制 LED 的亮度,但限流電阻不
能小於 120Ω,否則會影響到按鍵的靈敏度,建議以 S/W 增大掃描頻率來控制 LED 亮度為
佳。
為盡量減少同時有多個 key 按下時對 LCD 顯示的影響,按鍵上串接的電阻不能小於 2.2kΩ,
但不能超過 4kΩ,否則將會降低按鍵的靈敏度。
5
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
S/W Flowchart
程式開始
初始化 RAM、SCOMC 等暫存器
設置 INTC2 打開 Time Base 中斷
設置 TBC 配置 Time Base 除頻
等待下一次中斷
Wait Time Base 中斷
設置 SCOMC 循環輸出 SCOM0~3
掃描按鍵
點亮 LED
設置 SEG 0~8 輸出
CLR TMRC、INTC
返回
程式説明
本範例程式採用 4 * 8 段式 LCD,循環顯示 000~999 的數字,間隔約 0.512 秒,有按鍵時 LCD
最右一個字元顯示按鍵的序列號,同時也通過點亮 LED 來顯示按鍵的序列號。程式中
display_num0、display_num1、display_num2 用於存放要顯示的數字,display_num3 存放按下按
鍵的序列號。用戶可以根據實際使用情況取捨 COM 和增減 SEG,比如 LCD 可以是 1/3 duty,
那麼只需要保留三個 COM 即可,SEG 同樣可以參照範例程式擴展。
根據上述説明,分 8 次依次設置 COM0~COM3 的輸出,SEG 是輸出 VDD 還是輸出 VSS 需
要根據要顯示的數字判斷,使用第一種驅動方式時 I/O 詳細電位設置請參考下表:
第一次中斷
第二次中斷
第三次中斷
第四次中斷
第五次中斷
第六次中斷
第七次中斷
第八次中斷
COM0
COM1
COM2
COM3
VDD
VSS
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD
VSS
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD
VSS
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD/2
VDD
VSS
6
SEGx
(點亮)
VSS
VDD
VSS
VDD
VSS
VDD
VSS
VDD
SEGx
(不點亮)
VDD
VSS
VDD
VSS
VDD
VSS
VDD
VSS
HT66Fx0 共用 I/O Pin 來驅動 LCD、LED、KEY 的使用方法
程式範例
程式代碼及說明:見附件。
結論
本範例驅動 4 * 8 LCD 顯示正常、按鍵掃描正常、LED 點亮正常,用戶只需要稍加改造即可
套用到所選用的 1/2 bias 規格的 LCD 上。
7
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement