標(biāo)題: 求單片機(jī)課程設(shè)計(jì)led點(diǎn)陣廣告牌滾動(dòng)模式, [打印本頁]

作者: 792229113    時(shí)間: 2016-6-21 14:52
標(biāo)題: 求單片機(jī)課程設(shè)計(jì)led點(diǎn)陣廣告牌滾動(dòng)模式,
求單片機(jī)課程設(shè)計(jì)led點(diǎn)陣廣告牌滾動(dòng)模式,不要C語言程序,求匯編程序,

作者: yzwzfyz    時(shí)間: 2016-6-21 22:27
本帖最后由 yzwzfyz 于 2016-6-21 22:33 編輯

上下卷式滾動(dòng)方式,首行移動(dòng)屏后,回到末行
設(shè):
A1(A1由若干個(gè)字節(jié)組成,滿足一行的顯示內(nèi)容)是第1行的顯示內(nèi)容。
An是第n行的顯示內(nèi)容。
做一個(gè)時(shí)間中斷,用以計(jì)時(shí)滾動(dòng)的時(shí)間,比如,每0.5秒滾一行,就做個(gè)0.5秒計(jì)時(shí)器S5。
做一個(gè)滾動(dòng)指針PS,PS=1-n。用以指示哪一行放至首行顯示。
當(dāng)S5計(jì)滿時(shí)(0.5秒到),做下列5個(gè)事項(xiàng):
1,PS=PS+1,當(dāng)PS=n+1時(shí),置PS=1,即使得PS=1至n。
2,關(guān)所有顯示。
3,做兩個(gè)臨時(shí)計(jì)數(shù)單元,比R1,R2,令R1=n(用以計(jì)數(shù)刷新了多少行),R2=PS(復(fù)制PS)。
4,從R2行開始取顯示數(shù)據(jù),并從第一行開始顯示,然后R1-1,為0則結(jié)束(即顯示n行后結(jié)束,也就是刷一次屏),R2+1,當(dāng)R2=n+1時(shí),置R2=1,(即從PS行開始滾行,PS行放到第一行去顯示,PS+1行放到第二行,PS-1行放到末行)。
例如PS=4,則將A4的數(shù)據(jù)放到第1行顯示,A5放到第2行顯示......,A3放到最后一行顯示。
5,復(fù)位S5,待下個(gè)S5計(jì)滿(做下次滾行的動(dòng)作)。
總結(jié):
顯示的內(nèi)容無需變動(dòng),無需考慮滾動(dòng)對(duì)其影響,即A1-An,按正常顯示值輸入內(nèi)容。
滾動(dòng)是將A1至An的顯示數(shù)據(jù),送至屏上的次序進(jìn)行變動(dòng)實(shí)現(xiàn)的,比如:首行第1次顯示A1,則第2次顯示A2,第3......
哪一行先送至首行,由PS指針決定。
每個(gè)滾動(dòng)的間隔時(shí)間,將PS調(diào)整一次(+1),就達(dá)到了滾行的目的了。每次先關(guān)屏,再逐行顯示(刷新全屏)。

豎滾同理。不述了。
不想卷滾,則首行移出屏后,不再顯示。即每次將PS前的行清空不顯示即可(清空指滅LED)。
作者: yzwzfyz    時(shí)間: 2016-6-21 22:35
你應(yīng)當(dāng)會(huì)寫了。
如想我寫好給你,付款,附圖。附顯示內(nèi)容。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1