dioda się wiadomości ..

D

Dani

Guest
hi all,

Mam szalony 12x8x8 doprowadziła się wyświetlać komunikat jest następujący kod, aby jako wiadomość już przechowywane w externall eeprom.Kod:Urządzenie 16f877a

xtal 20

ALL_DIGITAL PRAWDAsłabe dbuff [100] jako bajtowe bieżące bajtowy bufor, który będzie wyświetlany

DIM addr jak Word

słabe caddr jak słowo

DIM I As ByteDim col As słowo

słabe dcol jako bajtowe

słabe rrow jako bajtowe "rząd nie

DIM ROWDATA [8] As Byte

słabe full_length jak słowo

symbol zegara portC.0

Symbol cbit portC.1

SYMBOL WIERSZ PORTd

wyjście zegara

wyjście cbit

OUTPUT WIERSZwiersz = 255

DELAYMS 1000

ROWDATA [7] = 254

ROWDATA [6] = 253

ROWDATA [5] = 251

ROWDATA [4] = 247

ROWDATA [3] = 239

ROWDATA [2] = 223

ROWDATA [1] = 191

ROWDATA [0] = 127

RŚ = 255

addr = 0

full_length = 56 "całkowita długość wiadomości (bajty * 8)loop:rrow = 0

natomiast rrow <2

col = 0

natomiast col <95

dcol = dbuff [col]

połączenie czerwonego

inc col

wend

RŚ = rowdata [rrow]

delayus 700

inc rrow

wiersz = 255

wendnatomiast rrow <5

col = 0

natomiast col <95

dcol = dbuff [col]

połączenie zielonych

inc col

wend

RŚ = rowdata [rrow]

delayus 700

inc rrow

wiersz = 255

wend

natomiast rrow <8

col = 0

natomiast col <95

dcol = dbuff [col]

połączenie pomarańczowego

inc col

wend

RŚ = rowdata [rrow]

delayus 700

inc rrow

wiersz = 255

wendjeśli addr = full_length następnie

addr = 0

w przeciwnym razie

inc addr

połączenia shift_buffer

endifgoto loopczerwone: - "wszystkie czerwone na

cbit = 0

wysoki zegar

niski zegar

CBIT = GETBIT dcol, rrow

WYSOKIE CLOCK

LOW CLOCKpowrótzielony: - "zielonych na wszystkich

CBIT = GETBIT dcol, rrow

WYSOKIE CLOCK

LOW CLOCK

cbit = 0

wysoki zegar

niski zegarpowrótOrange: - "na wszystkich pomarańczowy

CBIT = GETBIT dcol, rrow

WYSOKIE CLOCK

LOW CLOCK

CBIT = GETBIT dcol, rrow

WYSOKIE CLOCK

LOW CLOCK

powrót''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;shift_buffer: - "przeczytać jeden nowy bajt z zewnętrznych eeprom i przesunięcie bufora lewodbuff [0] = dbuff [1]: dbuff [1] = dbuff [2]: dbuff [2] = dbuff [3]: dbuff [3] = dbuff [4]

dbuff [4] = dbuff [5]: dbuff [5] = dbuff [6]: dbuff [6] = dbuff [7]: dbuff [7] = dbuff [8]dbuff [8] = dbuff [9]: dbuff [9] = dbuff [10]: dbuff [10] = dbuff [11]: dbuff [11] = dbuff [12]

dbuff [12] = dbuff [13]: dbuff [13] = dbuff [14]: dbuff [14] = dbuff [15]: dbuff [15] = dbuff [16]dbuff [16] = dbuff [17]: dbuff [17] = dbuff [18]: dbuff [18] = dbuff [19]: dbuff [19] = dbuff [20]

dbuff [20] = dbuff [21]: dbuff [21] = dbuff [22]: dbuff [22] = dbuff [23]: dbuff [23] = dbuff [24]dbuff [24] = dbuff [25]: dbuff [25] = dbuff [26]: dbuff [26] = dbuff [27]: dbuff [27] = dbuff [28]

dbuff [28] = dbuff [29]: dbuff [29] = dbuff [30]: dbuff [30] = dbuff [31]: dbuff [31] = dbuff [32]dbuff [32] = dbuff [33]: dbuff [33] = dbuff [34]: dbuff [34] = dbuff [35]: dbuff [35] = dbuff [36]

dbuff [36] = dbuff [37]: dbuff [37] = dbuff [38]: dbuff [38] = dbuff [39]: dbuff [39] = dbuff [40]dbuff [40] = dbuff [41]: dbuff [41] = dbuff [42]: dbuff [42] = dbuff [43]: dbuff [43] = dbuff [44]

dbuff [44] = dbuff [45]: dbuff [45] = dbuff [46]: dbuff [46] = dbuff [47]: dbuff [47] = dbuff [48]dbuff [48] = dbuff [49]: dbuff [49] = dbuff [50]: dbuff [50] = dbuff [51]: dbuff [51] = dbuff [52]

dbuff [52] = dbuff [53]: dbuff [53] = dbuff [54]: dbuff [54] = dbuff [55]: dbuff [55] = dbuff [56]dbuff [56] = dbuff [57]: dbuff [57] = dbuff [58]: dbuff [58] = dbuff [59]: dbuff [59] = dbuff [60]

dbuff [60] = dbuff [61]: dbuff [61] = dbuff [62]: dbuff [62] = dbuff [63]: dbuff [63] = dbuff [64]dbuff [64] = dbuff [65]: dbuff [65] = dbuff [66]: dbuff [66] = dbuff [67]: dbuff [67] = dbuff [68]

dbuff [68] = dbuff [69]: dbuff [69] = dbuff [70]: dbuff [70] = dbuff [71]: dbuff [71] = dbuff [72]dbuff [72] = dbuff [73]: dbuff [73] = dbuff [74]: dbuff [74] = dbuff [75]: dbuff [75] = dbuff [76]

dbuff [76] = dbuff [77]: dbuff [77] = dbuff [78]: dbuff [78] = dbuff [79]: dbuff [79] = dbuff [80]dbuff [80] = dbuff [81]: dbuff [81] = dbuff [82]: dbuff [82] = dbuff [83]: dbuff [83] = dbuff [84]

dbuff [84] = dbuff [85]: dbuff [85] = dbuff [86]: dbuff [86] = dbuff [87]: dbuff [87] = dbuff [88]dbuff [88] = dbuff [89]: dbuff [89] = dbuff [90]: dbuff [90] = dbuff [91]: dbuff [91] = dbuff [92]

dbuff [92] = dbuff [93]: dbuff [93] = dbuff [94]: dbuff [94] = dbuff [95]caddr = 110 addr 95

hbusin $ A1, caddr [dbuff [95]]

powrót
 
Chciałbym spojrzeć na montażu.Myślę, bufor tych zmian są zestawiane w
movfw (Adres)
decfsz Adres
movwf (Adres)
...i tak dalej

i to biorąc zawsze wszystko co do zmiany czasu.Chciałbym umieścić tablicę w mojej pamięci,
a następnie przesuń wskaźnik, pozostawienie danych, gdzie on jest.Teraz możesz zaktualizować wskaźnik znacznie łatwiej się podoba.

incfsz wskaźnik
połączenia resetpointer
goto wyświetlacz

i skończysz w 5 zegary zamiast 4 * 95 zegarów.ale sprawdzić montaż, to wszystko zależy od tego, jak jest mądry kompilatora.

 
hello Dani

pls can u give me schematyczność i będzie starała się wysunąć

plsss

czeka na odpowiedź

 
pls can u give me schematyczność i będzie starała się wysunąć

 

Welcome to EDABoard.com

Sponsor

Back
Top