2313 bez rezonatora - można?
2313 bez rezonatora - można?
słuchajcie, mam mały problem. zaprojektowałem płytkę, ale zbrakło miejsca na kwarc i towarzyszące mu kondensatory. czy mogę jakoś programowo taktować uP?
nie mam miejsca już na poprowadzenie jakichkolwiek ścieżek.
nie mam miejsca już na poprowadzenie jakichkolwiek ścieżek.
Ten normalny attiny2313?
Czy stary 90s2313?
Attiny bez problemu zaprogramujesz bez kwarca, jeśli tylko nie zmienisz fusebitów na kwarc zewnętrzny (wtedy, żeby programator go zobaczył musisz podpiąć ustawiony w fusach kwarc zewnętrzny
Standardowo fusy są ustawione na rezonator wewnętrzny, dlatego jeśli nie ma specjalnych potrzeb, nie ma co dokładać elementów, zwiększać kosztów i rozmiaru płytki.
Czy stary 90s2313?
Attiny bez problemu zaprogramujesz bez kwarca, jeśli tylko nie zmienisz fusebitów na kwarc zewnętrzny (wtedy, żeby programator go zobaczył musisz podpiąć ustawiony w fusach kwarc zewnętrzny
Standardowo fusy są ustawione na rezonator wewnętrzny, dlatego jeśli nie ma specjalnych potrzeb, nie ma co dokładać elementów, zwiększać kosztów i rozmiaru płytki.
ten normalny.Kulpina pisze:Ten normalny attiny2313?
Czy stary 90s2313?
chodzi o to żeby on pracował w układzie docelowym bez kwarcu.Kulpina pisze:Attiny bez problemu zaprogramujesz bez kwarca
jak powinien wyglądać początek programu żeby układ śmigał bez kwarcu?Kulpina pisze:jeśli tylko nie zmienisz fusebitów na kwarc zewnętrzny
czy będę mógł go także programować przez ISP bez rezonatora?
jaka będzie częstotliwość pracy takiego procesora?
Attiny2313 ma fabrycznie włączony wewnętrzny generator taktujący o częstotliwości 1KHz, więc nie trzeba stosować zewnętrznego kwarcu, ani kondensatorów na końcówkach 4 i 5. Jeżeli natomiast chcemy taktować procesor wyższą częstotliwością, musimy podpiąć zewnętrzny kwarc wraz z kondensatorami oraz odpowiednio skonfigurować fusy. Z zaprogramowaniem bez kwarcu nie będzie problemu.
Nie prawda.Emil1991 pisze:wewnętrzny generator taktujący o częstotliwości 1KHz,
Kondensatorów też nie trzeba jeśli sie w fusebitach nie wyłączy wewnętrznych pojemności. Gdy ustawisz na zew. źródło sygnału zegarowego to nie dokonasz też bez niego programowania, nie ważne czy to kwarc czy generator RC zewnętrzny. Zatem kwarc i opcjonalnie kondensatory w przypadku gdy zmienisz w fusebitach na zewnętrzny zegar. Inaczej jest uaktywniony wew. generator to piny XTAL mogą służyć jako piny I/O i będziesz je tak mógł używać.
czyli co? jednym słowem, niczego nie ruszam w programie i początek piszę na przykład taki:
dalej program i nie muszę dawać ani kwarcu, ani kondensatorów i wszystko śmiga i programowanie też?
Kod: Zaznacz cały
'sterownik bramy na tiny 2313
$regfile = "2313def.dat"
spot Alias portb.0 'silnik prawy otwiera
spza Alias portb.1 'silnik prawy zamykla
cpot Alias pinb.2 'wejscie czujka prawa otwarta brama
cpza Alias pinb.3 'wejscie czujka prawa zamknieta brama
slot Alias portb.4 'silnik lewy otwiera
slza Alias portb.5 'silnik lewy zamyka
clot Alias pinb.6 'wejscie czujka prawa otwarta brama
clza Alias pinb.7 'wejscie czujka prawa zamknieta brama
licznik alias pind.0
czujnik alias pind.1
dim x as byte
dim wspza as Bit
dim wslza as Bit
dim wspot as Bit
dim wslot as Bit
declare Sub otwieram
declare Sub zamykam
declare sub stopuje
declare Sub wybor
config INT0 = FALLING
Enable Interrupts
Enable Int0
enable INT1
on int0 czujka
on int1 brama_stopTak. Jeśli masz możliwość to sprawdź sam
Płytka stykowa, attiny kabelek i zobacz jak to wygląda. W Bascomie fusy się ustawia łatwo. Jest tam lista rozwijana internal oscilator (i możesz wybrać jego częstotliwość) i chyba jakieś opcje external oscilator w których musisz wybrać w jakich przedziałach mieści się generowana częstotliwość 
Jeżeli chce się korzystać z funkcji opóźnień czasowych to trzeba, zresztą to jedna linia kodu więc to chyba nie jest wielkim problemem dopisywać. W końcu kompilator musi wiedzieć na jakim sprzęcie ma program pracować i jak go poprawnie skompilować.Kulpina pisze:Jeśli chodzi o Bascoma to chyba nie trzeba.
czyli do tego kodu co przedstawiłem trzeba dopisać jedną linię i kod będzie wyglądał tak:
Kod: Zaznacz cały
'sterownik bramy na tiny 2313
$regfile = "2313def.dat"
$crystal = 1000000
spot Alias portb.0 'silnik prawy otwiera
spza Alias portb.1 'silnik prawy zamykla
cpot Alias pinb.2 'wejscie czujka prawa otwarta brama
cpza Alias pinb.3 'wejscie czujka prawa zamknieta brama
slot Alias portb.4 'silnik lewy otwiera
slza Alias portb.5 'silnik lewy zamyka
clot Alias pinb.6 'wejscie czujka prawa otwarta brama
clza Alias pinb.7 'wejscie czujka prawa zamknieta brama
licznik alias pind.0
czujnik alias pind.1tego nie musisz pisać wystarczy że w opcjach kompilatora ustawisz, częstotliwość w zakładce "Komunikacja" a procek w zakładce "chip" - informacje te wpisują się do pliku z twoj_projekt.cfg. Niemniej dobrze nabrać nawyk wpisywania tych dyrektyw, czytając kod programu wiadomo jakiego procka dotyczy i jaka częstotliwość jest , wpisanie tych wartości do kodu programu powoduje zastapienie przez nie wpisów w pliku *.cfg. Jak wpiszesz sobie w wyszukiwarce pomocy hasła $regfile i $crystal to znajdziesz tam ładne wyjaśnienie twojego pytania.matrix pisze:$regfile = "2313def.dat"
$crystal = 1000000