關于液晶顯示的平滑移動的軟件實現(xiàn)方式
——
我們在設計MP3或其他的一些動態(tài)顯示時,需要作平滑移動的處理,如:向左移動或者向右移動!一般有硬件方式和軟件模擬方式,硬件方式需要LCD驅(qū)動芯片的支持,而軟件方式較為靈活,不依賴于驅(qū)動芯片,但耗費CPU的處理時間。
例如:MP3的LCD屏只有128*32,也就是:除去圖標只能顯示一行漢字。而MP3的歌名加上ID3信息超過8個中文字符(16*16)或者16個英文字符(16*8),這樣只能采取移動的方式了。通常的做法有兩種:一種是平滑移動方式,另一種是半個字符移動方式。
平滑移動需要占用CPU的時間比較多,一幀數(shù)據(jù):28*16/8 = 256 BYTES ,如果一秒鐘移動一個中文字符,就要送16次,共4K BYTES。如果LCD用并行口,還可以勉強接受,但是如果是串口,就有32K BITS的數(shù)據(jù)量。
半字符移動方式比較簡單,不需要緩沖區(qū),直接把中西文的點陣數(shù)據(jù)寫到屏就可以了,如果一秒鐘移動一個中文字符,就只要送2次,共512 BYTES。相對數(shù)據(jù)量較小。
TRACK001.MP3 When a man love woman Michael Bolton
如圖1所示:這是一首MP3的顯示內(nèi)容 dislay_buff[]。
圖1。
水平超過128,由于要實現(xiàn)移動所以我們的BUFFER必須大于128,由于空間的限制,?。?28+16)
評論