Autor Wątek: Mjoy  (Przeczytany 169091 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

damos

  • Gość
Odp: Mjoy
« Odpowiedź #330 dnia: Lutego 27, 2009, 14:22:19 »
IMHO w rozwiązanie w technice dyskretnej nie ma sensu - tak jak już stwierdził vito_zm. Tydzień czasu spędzę teraz w domu z nową córą. Może uda mi się zaproponować rozwiązanie oparte na dodatkowym Atmega16 oraz 2 układach LTV847 (transoptory), zdolne do obsłużenia prawdopodobnie 8-miu enkoderów - będzie ktoś zainteresowany? Cenowo jest to bardziej uzasadnione niż jeden Attiny na jeden enkoder. Układ powinien być bardzo prosty. Nie trzeba nawet zewnętrznego rezonatora.

Odp: Mjoy
« Odpowiedź #331 dnia: Lutego 27, 2009, 18:26:52 »
Myślę,że chętni będą.Moim zdaniem jest to bardzo dobry pomysł optymalny pod kątem ceny,prostoty,możliwości oraz zasilania.Nie sprawdzałem wejść proponowanego uP pod kątem podłączenia transoptora ale myślę,że jego wyjście tzn.złącze kolektor emiter powinno być wysterowane przez uP oraz,że oporność złącza jest wystarczająco mała.Powodzenia Damos,jeśli to wypali to będą chętni z innych forum jestem pewien.Mnie się wydaje,że MJoy jest jednym z lepszych rozwiązań sterowników.

damos

  • Gość
Odp: Mjoy
« Odpowiedź #332 dnia: Marca 01, 2009, 13:05:18 »
OK - mam pierwszą wersję - część obsługująca enkodery działa. Nie wiem, jak z transoptorami i MJoy'em, bo ich po prostu nie mam :)

 Krótki opis:
  • Enkoder, to takie zwierzę, które ma jedno wejście (pin C) i dwa wyjścia (pin B oraz pin A). podajemy coś na wejście - i w miarę obracania ta wartość pojawia się na obu wyjściach. Jednak zależnie od kierunku obrotu na jednym z wyjść pojawia się wcześniej. Trywialny problem polega na detekcji, gdzie wartość pojawiła się wcześniej
  • W moim rozwiązaniu enkodery mają podawać masę (czyli pin "C" enkodera podłączamy do masy). Jest to spowodowane możliwością podciągnięcia stanów portów wejściowych do 1-ki logicznej - likwiduje to problem "pływających" portów i zmniejsza ilość potrzebnych elementów (brak zewnętrznych rezystorów) - jak na schemacie: http://www.damos.k11.pl/LO/encoder/schemat.JPG
  • Enkodery podłącza się z jednej strony a wyjścia na przyciski są z drugiej strony układu (za wyjątkiem nóżki nr 21: "PD7")
  • ATMega16 musi być takowany zegarem 8 MHz lub szybszym. Dlaczego?  Dla eliminacji drgań styków na wejściu dodałem prymitywne filtry cyfrowe, ale to dramatycznie zjada cykle zegarowe a impulsy wejściowe potrafią być wrednie krótkie - poniżej 3ms a przesunięcia między nimi na poziomie 800 mikrosekund:  Przy 8-miu enkoderach i 5-ciu próbkach na enkoder daje to 0.07 ms na próbkę i 0.02ms na detekcję fazy: http://www.damos.k11.pl/LO/encoder/timingi.JPG   1Mhz po prostu "nie wydala". Wewnętrzny oscylator RC 8 MHz w zupełności wystarcza.
  • Enkodery podłącza się do kolejnych, sąsiednich wejść mikrokontrolera (na portach B oraz D) - jak na schemacie: http://www.damos.k11.pl/LO/encoder/schemat.JPG
  • Zamiana "A" z "B" na wejściach spowoduje jedynie odwrócenie detektowanego kierunku
  • Wyjścia znajdują się na portach A oraz C
  • Wyjścia mogą sterować masą lub plusem (tzn. - w momencie symulowania wciśnięcia przycisku na wyjściu pojawia się "MINUS" lub "PLUS") są dwie wersje plików hex
  • Wyjścia można obciążyć prądem maksymalnie 20 mA! Nie wiem, jaką rezystancję mają transoptory więc radzę uważać. Sam testowałem na LED'ach z rezystorem ograniczającym prąd do 8 mA
  • Minimalny czas trwania impulsu (ochrona) symulującego wciśnięcie przycisku to ok. 40ms (1/25 sekundy) i mogę go spokojnie wydłużyć
  • Minimalny czas trwania stanu (ochrona) "zwolnienia przycisku" jest taki sam: 40 ms. Zablokowanie możliwości zbyt szybkiego, ponownego "wciśnięcia" jest spowodowane koniecznością zapewnienie MJoy'owi czasu na detekcję zwolnienia przycisku.
  • Zasilanie: teoretycznie sam mikrokontroler można zasilać z tego samego USB co MJoy, ale w zależności od obciążenia wyjść może okazać się konieczne doprowadzenie osobnego zasilania (inny slot USB) ze względu na przekroczenie dopuszczalnego poboru prądu. Ja korzystam z osobnego, zewnętrznego zasilania +5V
  • Opóźnienie pojawienia się stanu "wciśnięty" na wyjściu układu w stosunku do powstania sygnału na wejściu to ok. 1.2 ms: http://www.damos.k11.pl/LO/encoder/delay.JPG
  • Przebiegi przy kręceniu w lewo: http://www.damos.k11.pl/LO/encoder/przebieg_w_lewo.JPG  (sterowanie plusem, niebieski stan magistrali - wyzwolenie wykonane, czerwony stan magistrali - wyzwolenie zablokowane ze względu na wystąpienie w okresie "ochrony" stanu wciśnięcia/zwolnienia)
  • Przebiegi przy kręceniu w prawo: http://www.damos.k11.pl/LO/encoder/przebieg_w_prawo.JPG (sterowanie plusem)
  • HEX do sterowania wyjść plusem: http://www.damos.k11.pl/LO/encoder/sterowanie_plusem.hex
  • HEX do sterowania wyjść masą: http://www.damos.k11.pl/LO/encoder/sterowanie_minusem.hex
  • Odporność na zakłócenia: nieznana Po dodaniu filtrów cyfrowych nieco się poprawiła, ale przy szybkim kręceniu zdarzają się czasem błędy. Ten "pająk": http://www.damos.k11.pl/LO/encoder/IMG_1804.JPG nie stwarza problemów, ma jednak stosunkowo krótkie przewody
  • Zastosowałem te enkodery: http://www.laro.com.pl/index.php5/sklep/pot_obr/3692 można by jeszcze to: http://www.sklep.avt.com.pl/p/pl/71404/impulsator+katowy+bcd.html
Sorry za wielkość obrazków....
Jak widać z przebiegów - ze względu na sterowanie masą mam zanegowane stany z enkoderów i moment wyzwalania może wyglądać dziwnie, jednak nie przeszkadza to w działaniu  :118:
Schematu płytki nie mam - nie robiłem takich rzeczy od 12 lat i odpowiedniego softu też mi brak :) Do zrobienia schematu (i płytek) znalazłem opensource'a (KiCad), ale jego jakość i "wygoda" mnie przerażają...  :karpik

Jeśli ktoś byłby w stanie przetestować to z MJoy'em - byłbym zobowiązany :) .

Za wszelkie uwagi czy sugestie z góry dziękuję.

P.S.
Przed wysłaniem dłuższego posta radzę (jak mam to w zwyczaju) skopiować jego treść do schowka  :karpik - inaczej można stracić go w wyniku:
Cytuj
Podczas wysyłania wiadomości, pojawiły się następujące błędy:
Twoja sesja dobiegła końca podczas pisania. Spróbuj ponownie wysłać wiadomość.
« Ostatnia zmiana: Marca 01, 2009, 13:18:43 wysłana przez damos »

Odp: Mjoy
« Odpowiedź #333 dnia: Marca 01, 2009, 18:17:28 »
Damos moje gratulacje.Bardzo mi się podoba Twoje rozwiązanie.Postaram się w tym tygodniu zaprogramować układ,połączyć transoptory oraz MJoy i zrobić testy.Trochę to potrwa.Dam znać jak wykonam testy.

damos

  • Gość
Odp: Mjoy
« Odpowiedź #334 dnia: Marca 01, 2009, 19:15:46 »
OK. Trzymam kciuki. Jedyne, czego się obawiam, to zbyt krótki czas trwania "wciśnięcia" i "zwolnienia" przycisku. Czas dobrałem "na oko" - aby układ nie gubił zbyt wielu impulsów. Jednak zmiana tego parametru jest trywialna. Zrobię jeszcze buildy z różnymi długościami (1/10 i 1/2 sekundy) i wrzucę na stronę - jakby co - nie będziesz musiał czekać na zmiany.


teraz dostępnych jest 6 buildów:

40-ki: (1/25 sekundy)
http://www.damos.k11.pl/LO/encoder/sterowanie_minusem_40ms.hex
http://www.damos.k11.pl/LO/encoder/sterowanie_plusem_40ms.hex

100-ki: (1/10 sekundy)
http://www.damos.k11.pl/LO/encoder/sterowanie_minusem_100ms.hex
http://www.damos.k11.pl/LO/encoder/sterowanie_plusem_100ms.hex

500-ki: (1/2 sekundy)
http://www.damos.k11.pl/LO/encoder/sterowanie_minusem_500ms.hex
http://www.damos.k11.pl/LO/encoder/sterowanie_plusem_500ms.hex

Uwaga!
Timery dla każdego z kierunków każdego z enkoderów są osobne. Znaczy to, że przy długich czasach "wciśnięcia" - np. 0,5 sek. poprzez odpowiednio szybkie przekręcenie "w lewo" i następnie "w prawo" można otrzymać dwa "wciśnięte" przyciski w tym samym czasie. Jest to zamierzony efekt :)
« Ostatnia zmiana: Marca 01, 2009, 19:56:01 wysłana przez Sundowner »

Odp: Mjoy
« Odpowiedź #335 dnia: Marca 01, 2009, 22:20:28 »
Myślę,że będzie dobrze.Co do czasów w rozwiązaniu o którym była mowa w poprzednich post BU 0836 to autor ustawił tylko 20ms,to w Twoim przypadku nie powinno być problemu.Poza tym jeśli układ przy szybkim ruchu zgubi jakieś impulsy to użytkownik nawet tego nie zauważy,a symulator będzie działał prawidłowo.
Inna sprawa,że w MJoyu programista przewidział te dwie opcje tzn.szybki oraz wolny ruch gałką i jest to uwzględnione w mapie.Jest to tylko przydatne do szybkiej zmiany zakresów np.w odbiorniku radiowym,ale w innych sytuacjach nie ma znaczenia.
Co do mnie to na początek zrobię prosty test związany tylko z transoptorami oraz MJoyem.Chodzi o sprawdzenie czy złącze Kolektor emiter będzie działało prawidłowo po podłączeniu do portów uP.Muszę kupić transoptory i to sprawdzić.Później polutuję Twój układ i sprawdzę,trochę to potrwa.Swoją drogą byłem ciekawy jak rozwiązałeś problem detekcji kierunku obrotu.Moje rozwiązanie jest pokazane na grafie.Muszę przyznać,że trochę zapomniałem teorii i miałem problem jak to zrealizować.

damos

  • Gość
Odp: Mjoy
« Odpowiedź #336 dnia: Marca 02, 2009, 02:35:10 »
Zrobiłem kilka optymalizacji, wyłączyłem filtry cyfrowe i układ działa w takiej konfiguracji na zegarze 1 MHz :) (może być przydatne dla tych, którzy nie będą w stanie zmienić fabrycznego takowania mikrokontrolera: [1MHz wewnętrzny RC])
http://www.damos.k11.pl/LO/encoder/1MHZ_sterowanie_minusem_40ms.hex
http://www.damos.k11.pl/LO/encoder/1MHZ_sterowanie_plusem_40ms.hex

Odp: Mjoy
« Odpowiedź #337 dnia: Marca 03, 2009, 22:50:04 »
Witam,pierwszy test wypadł pozytywnie.Tak jak wspomniałem obawiałem się oporności złącza emiter kolektor w transoptorze.Próby wypadły pozytywnie.Zastosowałem transoptor PC 817 (1 kanał) ponieważ taki był dostępny.Docelowo należy zastosować 4 kanałowy PC 847 (16 pin).Jest bardzo tani.Prąd sterujący diodę ustawiłem na 7.5 mA.Transoptor zasilam z zew.źródła i wyzwalam statycznie.W rzeczywistym układzie będą impulsy.
Teraz muszę polutować układ Damosa i podłączyć do MJoya.Zrobię próby na 2 enkoderach oraz 2 transoptorach.Myślę,że jeżeli wypadną pozytywnie to nie powinno być problemów z pozostałymi portami.
Mam pytanie do Damosa:
1.Wspomniałeś o wew.generatorze 8MHz lub 1 MHz czy o wyborze decyduje opcja Twojego programu?
2.Enkoder nr 8 pin 20 oraz 21,możesz wyjaśnić jak to rozumieć (wyjście połączone z wejściem)?
Pytanie ogólne,ile można pobrać prądu z USB?
Próbuję oszacować ile prądu potrzebuje układ Damosa i czy USB MJoya wystarczy.
Mój poligon doświadczalny.


damos

  • Gość
Odp: Mjoy
« Odpowiedź #338 dnia: Marca 04, 2009, 14:26:00 »
Witam,pierwszy test wypadł pozytywnie.Tak jak wspomniałem obawiałem się oporności złącza emiter kolektor w transoptorze.Próby wypadły pozytywnie.
Świetnie ! :)
Zastosowałem transoptor PC 817 (1 kanał) ponieważ taki był dostępny.Docelowo należy zastosować 4 kanałowy PC 847 (16 pin).Jest bardzo tani.Prąd sterujący diodę ustawiłem na 7.5 mA.Transoptor zasilam z zew.źródła i wyzwalam statycznie.W rzeczywistym układzie będą impulsy.
Teraz muszę polutować układ Damosa i podłączyć do MJoya.Zrobię próby na 2 enkoderach oraz 2 transoptorach.Myślę,że jeżeli wypadną pozytywnie to nie powinno być problemów z pozostałymi portami.

Mam pytanie do Damosa:
1.Wspomniałeś o wew.generatorze 8MHz lub 1 MHz czy o wyborze decyduje opcja Twojego programu?
2.Enkoder nr 8 pin 20 oraz 21,możesz wyjaśnić jak to rozumieć (wyjście połączone z wejściem)?
3.Pytanie ogólne,ile można pobrać prądu z USB?
4.Próbuję oszacować ile prądu potrzebuje układ Damosa i czy USB MJoya wystarczy.

ad1 - częstotliwość i i rodzaj generatora ustala się za pomocą fuse-bitów. Nie robię tego programowo, tylko za pomocą programatora. Jest to o tyle wygodne, że częstotliwość programatora przy zapisywaniu programu na kość musi być przynajmniej 4 razy mniejsza od częstotliwości układu - więc ustawiam ją sobie PRZED zaprogramowaniem. Nawet nie zaglądałem do dokumentacji, jak zmienić taktowanie programowo. Fabryczne ustawienia dla ATmegi16 to wewnętrzny oscylator RC 1MHz. Jest build dostosowany do takiego układu.

ad 2 - piny 20 oraz 21 należą do portu wejściowego. Poprostu ATmega16 ma PortD na pinach 14-21 i ostatnia "nóżka" wypada po drugiej stronie układu scalonego :) Każdy port ma 8 pinów i należą do następujących wyprowadzeń:
PortA: 40-33
PortB: 1-8
PortC: 22-29
PortD: 14-21
jak na obrazku:


ad 3 - maksymalne obciążenie prądowe jednego portu USB to 500 mA

ad 4 - sam mikrokontroler ma znikomy apetyt na prąd - maksymalnie 16 ma, zależy od rodzaju oscylatora i częstotliwości:


Natomiast należy jeszcze wliczyć obciążenie portów wyjściowych transoptorami: 16*7,5 mA (120 mA) + obciążenie na podciągnięcie stanów wewnętrznymi rezystorami.. ??? W sumie przyjął bym, że całość nie powinna przekroczyć 200 mA.

Ostatecznie - w przypadku zastosowania transoptorów można zasilać mjoy'a z jednego portu USB a driver encoderów z drugiego.

Gratuluję postępów i trzymam kciuki :)
« Ostatnia zmiana: Marca 04, 2009, 14:33:27 wysłana przez damos »

Odp: Mjoy
« Odpowiedź #339 dnia: Marca 04, 2009, 16:45:33 »
Cytuj
częstotliwość i i rodzaj generatora ustala się za pomocą fuse-bitów.
Z tego rozumiem,że fabrycznie jest ustawiony na 1MHz,ale można to zmienić programatorem.W moim przypadku PonyProg 2000 chyba takiej możliwości nie ma.Przy okazji pytanie dotyczące tzn.bitów security.Dla MJoya każą odpowiednie bity zaznaczyć.Czy w Twoim projekcie jest to potrzebne?
Z prądem wygląda optymistycznie.Trzeba pomierzyć ile bierze MJoy i podjąć decyzję.Ponieważ mamy transoptory to niema problemu.
Teraz kilka słów o moich testach.
Zaprogramowałem kość i zrobiłem testy.Niestety natrafiłem na problemy,które prawdopodobnie są związane z zakupioną kością.Oznaczenie na scalaku jest następujące:AMTEL ATMEGA 16,16 PU,0833K.Kość dała się zaprogramować,ale układ nie działał.Dla testu obciążyłem wyjście uP transoptorem,później LED.Niestety dioda nie zapalała.W tym momencie zrobiłem próbę z nową kością ładując do niej program MJ16.hex dla MJoya.Niestety MJoy z nową kością nie był widziany przez WinXP,urządzenie nieznane.W PonyProg można kość czytać,mazać i zapisywać.Starą kość można także mazać i zapisywać a co najważniejsze jest widziane przez WinXP,nowa niestety nie jest widziana.Doszedłem do wniosku,że muszę kupić nową kość i rozpocząć testy.
W tym momencie mam pytania do Damosa.
1.Stosuję plik 1MHz_sterowanie_plusem_40ms.Rozumiem,że plus oznacza na wyjściu impuls dodatni?(potrzebuję dodatni,ponieważ steruję anodę diody)
2.40ms powino na moment zapalić LED,możesz to potwierdzić?(robiłeś podobne testy z LED)
3.Pobrałem plik z podanego przez Ciebie linku,załadowałem do uP i odczytałem.Od adresu 000000 do 000250 są informacje tego typu:from:<zapisane przez program Windows Internet Explorer 7 > Subject.....itd.
Czy jest to o.k.Czy nie powinien być czysty kod hex?Nie jestem specjalistą w tej dziedzinie,dlatego proszę o wyjaśnienie.
Myślałem,że już nic mnie nie zaskoczy w temacie MJoy,a jednak trafiłem na problem.Z drugiej strony problemy są po to aby je rozwiązywać.

damos

  • Gość
Odp: Mjoy
« Odpowiedź #340 dnia: Marca 04, 2009, 17:17:45 »
Z tego rozumiem,że fabrycznie jest ustawiony na 1MHz,ale można to zmienić programatorem.W moim przypadku PonyProg 2000 chyba takiej możliwości nie ma.Przy okazji pytanie dotyczące tzn.bitów security.Dla MJoya każą odpowiednie bity zaznaczyć.Czy w Twoim projekcie jest to potrzebne?
nie używam nic z security - ale rzucę okiem na defaulty z AVRDragona (bo tego używam)

W tym momencie mam pytania do Damosa.
1.Stosuję plik 1MHz_sterowanie_plusem_40ms.Rozumiem,że plus oznacza na wyjściu impuls dodatni?(potrzebuję dodatni,ponieważ steruję anodę diody)
Dokładnie TAK.
2.40ms powino na moment zapalić LED,możesz to potwierdzić?(robiłeś podobne testy z LED)
Tak - zapala i to widać
3.Pobrałem plik z podanego przez Ciebie linku,załadowałem do uP i odczytałem.Od adresu 000000 do 000250 są informacje tego typu:from:<zapisane przez program Windows Internet Explorer 7 > Subject.....itd.
Czy jest to o.k.Czy nie powinien być czysty kod hex?
aaarrgghhh ...  :karpik :karpik :karpik :010: :011: :010: :011: :010: :011: To w żadnym wypadku nie jest poprawna zawartość pliku HEX  :010: :010: :010: :) Spróbuj Firefoxem... Prawdopodobnie w tym tkwi problem.
1MHZ_sterowanie_plusem_40ms.hex ma rozmiar dokładnie: 4096 bajtów i zaczyna się od:
Cytuj
:100000000C942A000C9447000C9447000C94470071
:100010000C9447000C9447000C9447000C94470044
:100020000C9447000C9447000C9447000C94470034
:100030000C9447000C9447000C9447000C94470024
:100040000C9447000C9447000C9447000C94470014
:100050000C94470011241FBECFE5D4E0DEBFCDBF16
:1000600010E0A0E6B0E0EAEAF5E002C005900D92EB
:10007000A036B107D9F710E0A0E6B0E001C01D92AC
:10008000A83FB107E1F70E94E9010C94D3020C9458

ew. zrób tak: kliknij prawym przyciskiem myszy na linku, wybierz "zapisz obiekt docelowy jako" i wskaż miejsce na dysku. U mnie zadziałało ok w IE. (wersja 7.0.5730.13). Może u ciebie IE ma specjalną obsługę dla plików .HEX ?
« Ostatnia zmiana: Marca 04, 2009, 17:24:36 wysłana przez damos »

damos

  • Gość
Odp: Mjoy
« Odpowiedź #341 dnia: Marca 04, 2009, 18:16:14 »
OK. Udało mi się odtworzyć proces błędnego zapisu hex'a:

- klikasz na link i pokazuje ci się zawartość pliku spod linku (wczytana, przetworzone i prezentowana przez przeglądarkę)
- wybierasz z menu "zapisz stronę jako"
- wskazujesz na lokalizację na dysku

W efekcie jest dokładnie to, co opisałeś:

Cytuj
From: <Zapisane przez program Windows Internet Explorer 7>
Subject:
Date: Wed, 4 Mar 2009 17:59:45 +0100
MIME-Version: 1.0
Content-Type: text/html;
   charset="windows-1250"
Content-Transfer-Encoding: 7bit
Content-Location: http://www.damos.k11.pl/LO/encoder/1MHZ_sterowanie_plusem_40ms.hex
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=windows-1250">
<META content="MSHTML 6.00.6000.16809" name=GENERATOR></HEAD>
<BODY><PRE>:100000000C942A000C9447000C9447000C94470071
.
.
.
.
.
:00000001FF
</PRE></BODY></HTML>

 W tym wypadku mamy dwa problemy:
1 - zawartość została przez przeglądarkę zaadaptowana do wyświetlenia na stronie
2 - na dysku została zapisana strona WWW prezentująca zawartość pliku a nie sam plik

Kiedy tylko można - należy unikać takiego postępowania, ponieważ dochodzi do zmiany zawartości pliku i zapisywane jest coś innego, niż powinno.

Rozwiązanie: nie otwierać pliku, tylko kliknąć na linku prawym przyciskiem myszy i "zapisz element docelowy jako".

Nie próbuj używać tamtego pliku przez skasowanie początku i końca. Nie wiem, co IE robi ze znakami powrotu karetki i zejścia do następnej linii (unix.windows), jak zapisuje znaki specjalne - itd. Najlepiej tamten plik skasować z dysku i zapisać nowy.

Odp: Mjoy
« Odpowiedź #342 dnia: Marca 04, 2009, 19:06:09 »
Dzięki Damos,zrobiłem tak jak radziłeś i plik jest o.k.Jutro zrobię testy,jeśli będą problemy to kupię jednak nowy uP.Co do pliku "internet hex" to miałem podejrzenia,ale nie widziałem jak uzyskać właściwy format.Jeszcze raz dzięki za pomoc.

damos

  • Gość
Odp: Mjoy
« Odpowiedź #343 dnia: Marca 04, 2009, 19:31:43 »
Z tego rozumiem,że fabrycznie jest ustawiony na 1MHz,ale można to zmienić programatorem.W moim przypadku PonyProg 2000 chyba takiej możliwości nie ma.
Chyba jest. O ile masz taki screen:
Jeśli tak, to:
SUT1 = 1 (opóźnienie startu układu)
SUT0 = 0 (opóźnienie startu układu)

CKSEL3 = 0
CKSEL2 = 0
CKSEL1 = 0
CKSEL0 = 1

zgodnie ze specyfikacją:
Cytuj
The device is shipped with CKSEL = “0001” and SUT = “10”. The default clock source setting is
therefore the 1 MHz Internal RC Oscillator with longest startup time. This default setting ensures
that all users can make their desired clock source setting using an In-System or Parallel
Programmer.

tu masz pdf'a z dokumentacją do ATmega16: http://www.damos.k11.pl/LO/encoder/atmega16_new_doc8154.pdf
Fakt, całość ma 352 strony, ale na stronie 25 jest to info.

Wszystkie lock-bity powinny być ustawione na 1 - wtedy brak jest zabezpieczeń i "wszystko dozwolone". Nie wiem tylko, czy "1" w PonyProg to zaznaczony, czy odznaczony checkbox. A to jest ważne, bo jak zablokujesz lock-bitem możliwość zaprogramowania układu... to lipa. Do sklepu po następny. Najlepiej zaznacz lock-bity tak samo jak dla mjoy'a.

rzuć okiem tam - to pierwsza strona, jaka znalazłem w google:
http://www.scienceprog.com/programming-avr-fuse-bits-oscillator-settings/

A najbardziej polecam to:
http://www.engbedded.com/fusecalc/
Właśnie znalazłem i uważam, że REWELACJA dla kogoś, kto nie ma specjalizowanego programatora.


« Ostatnia zmiana: Marca 04, 2009, 19:40:38 wysłana przez damos »

Odp: Mjoy
« Odpowiedź #344 dnia: Marca 04, 2009, 22:43:12 »
O to mi chodziło,problem tylko w interpretacji.W MJoy jest zaznaczone tylko BOOTSZ1,BOOTSZ0,SUTO i to wszystko.Jest kwarc czyli zegar zewnętrzny.
U nas jest zegar wew.to jest zasadnicza różnica.
Z tego co przeczytałem w podanych przez Ciebie linkach.To puste pole ozn.niezaprogramowany czyli 1,zaznaczone pole (v) oznacza zaprogramowany czyli 0.
Dla wew.zegara powinno być CLK3,2,1,0  0001,czyli zaznaczone CLK3,2,1 oraz niezaznaczone CLK0.
Co do pozostałych to nie wiem.W PonyProg jest taka sama tabela bitów jak przedstawiłeś w swoim post.
Załóżmy,że oznaczenia są takie jak podałem powyżej to jak powinny być ustawione bity dla naszego przypadku?
Ustawię bity tak samo jak u Ciebie.
Jeszcze jedno pytanie.W manuale MJoy bity są ustawiane po komendzie write program (FLASH) a z tego co pisałeś wynika,że je ustawiasz przed zapisem FLASH.