hej, mam problem z inicjalizacj± zewnêtrznej pamiêci, a w³asciwie urz±dzenia I/O które jest pod³±czone do ethernuta (atmel mega128). Ethernut ma gotowy interfejs Address/Data i dostaje A0-A15, D0-D7, /WR, /RD i w³asciwie tyle mnie interesuje w chwili obecnej. Z grubsza wygl±da to jak na schemacie - link poni¿ej (sorry za jako¶æ).
Chce zapalaæ linijkê LED ale chce zeby by³a ona adresowana jak normalna pamiêæ. Zdaje siê, ¿e na schemacie nie pope³ni³em ¿adnego logicznego b³êdu - je¿eli tak to proszê o poprawienie mnie.
procedura wys³ania czego¶ na adres 0xFFF8 jest u mnie taka: .org $0 jmp RESET .org $0046
RESET: ldi r16,0b10000000 sts MCUCR,r16 ldi r16,0b00001100 sts XMCRA,r16 ldi r16,0b10000000 sts XMCRB,r16
ldi r27,0xff ldi r26,0xf8 TEST: ldi r16,0b11111111 st X,r16 ; sts 0xfff8,r16 rcall TEST
niestety, efekt jest zawsze taki, ¿ê diodki sobie pomruguj± mniej lub bardziej periodycznie. Niby mo¿na siê w tym doszukaæ czego¶ regularnego ale nie mam najmniejszej mo¿liwo¶ci panowania nad tym. Jedynie je¿eli SRE jest 0 to jest ciemno¶æ. Pozatem co bym nie napisa³ lub napisa³ to efekt jest ten sam, chaotyczne mruganie/zatrzaskiwanie danych.
te LEDy to jest tak na pocz±tek, potem chce podpi±æ LCD i mo¿e jeszcze co¶, ale chcia³em móc co¶ wys³aæ na linijke, ¿eby sprawdziæ ze to dzia³a. Niestety nie posiadam ¿adnego oscyloskopu aby móc stwierdziæ co siê dzieje na poszczególnych liniach. Chce to koniecznie móc adresowaæ - taki kaprys ;-)
Ma kto¶ jakie¶ wskazówki ?
Pozdrawiam, Marcin