新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用單片機(jī)IO口直接驅(qū)動(dòng)段式LCD的方法

用單片機(jī)IO口直接驅(qū)動(dòng)段式LCD的方法

作者: 時(shí)間:2016-11-18 來(lái)源:網(wǎng)絡(luò) 收藏
IO口驅(qū)動(dòng)段式LED(數(shù)碼管)的方法相信大家比較清楚,但用IO口直接驅(qū)動(dòng)段式LCD的方法相對(duì)復(fù)雜一些。在網(wǎng)上搜了一下單片機(jī)IO口驅(qū)動(dòng)段式LCD的方法,大部分資料講得不夠清晰、具體,而且簡(jiǎn)單問(wèn)題復(fù)雜化。后來(lái)查了LCD的顯示原理,結(jié)合網(wǎng)上的相關(guān)介紹,發(fā)現(xiàn)IO口直接驅(qū)動(dòng)段式LCD原理比較簡(jiǎn)單,用幾句話就可以描述清楚:

本文引用地址:http://m.butianyuan.cn/article/201611/315898.htm

1.LCD和LED的顯示原理不一樣:LED是加正向電壓發(fā)光,而LCD必須交替加正、反向電壓才會(huì)持續(xù)顯示(可以做個(gè)實(shí)驗(yàn),如果把恒定電壓加到LCD的一段上,該段會(huì)顯示一下,但馬上不能顯示,而且長(zhǎng)時(shí)間加恒定電壓,會(huì)加速LCD的老化和損壞)

2.常聽(tīng)說(shuō)1/2bias,1/3bias LCD,是什么意思呢?對(duì)于1/2bias LCD,假如LCD的顯示電壓是3V,則1/2bias是1.5V,也就是說(shuō)在±3V電壓作用時(shí),LCD有顯示;±1.5V及以下的電壓作用時(shí)沒(méi)有顯示

3.普通單片機(jī)IO口不能直接輸出半高電平(1.5V),但可以用相等的上下拉電阻實(shí)現(xiàn),當(dāng)IO口設(shè)置為輸入(高阻)時(shí),由于上下拉電阻的分壓作用,則產(chǎn)生一個(gè)半高電平(1.5V)

知道了以上3點(diǎn)后,動(dòng)態(tài)驅(qū)動(dòng)LCD就不是難事了,對(duì)于4*8段的LCD(4個(gè)COM,8個(gè)SEG,顯示電壓為3V,1/2bias),驅(qū)動(dòng)方法如下:

1、四個(gè)COM采用交替掃描的方式,每個(gè)COM在相鄰兩次掃描時(shí)又進(jìn)行電壓交變的方式。

2、若掃描到某一個(gè)COM時(shí),該COM輸出3V(0V):

與該COM相連的SEG輸出與COM相反,ΔV=±3V,則該相連點(diǎn)亮;

與該COM相連的SEG輸出與COM相同,ΔV=0,則該相連點(diǎn)不亮。

3、其他沒(méi)有掃描到的COM,單片機(jī)IO口為輸入,從而產(chǎn)生1/2 bias(1.5V),不管SEG為何值,ΔV<±1.5V,故該點(diǎn)不亮。

本人用4*8段的LCD自制了一個(gè)數(shù)字鐘表,驗(yàn)證了以上方法的可行性,現(xiàn)把制作過(guò)程羅列如下

1.原理圖

說(shuō)明:由于管腳不夠用,所以時(shí)鐘芯片DS1302的RST和LCD的一個(gè)SEG是復(fù)用的,只要在這個(gè)SEG無(wú)效的時(shí)候去讀取時(shí)間就可以了,另外,3PIN串口是ISP下載程序用的。

2.備料

3.焊接

4.實(shí)驗(yàn)結(jié)果

5.不足之處

通過(guò)實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),不顯示的SEG也有陰影

原因分析:紐扣電池電壓3.7V,1/2bias是1.85V,大于1.5V,所以會(huì)出現(xiàn)陰影。

解決辦法:選擇工作電壓小于3V的單片機(jī)和電壓等于3V的電池(如2節(jié)干電池)

6. 程序源代碼

點(diǎn)擊http://www.dzsj.net/dpjzhyy/clock.c下載



評(píng)論


技術(shù)專區(qū)

關(guān)閉