Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

bit FOC0 a przerwanie (OCF0) w ATmega16 +

Awatar użytkownika
+5V
-
-
Posty:76
Rejestracja:20 maja 2005, o 23:36
Lokalizacja:3miasto
Kontaktowanie:
bit FOC0 a przerwanie (OCF0) w ATmega16 +

Postautor: +5V » 21 lip 2005, o 01:15

Witam.
Wstęp:
w dokumentacji mikrokontrolera atmega16 (jak rowniez sprawdziłem podobnie jest np. w atmega32) opisany jest sposób wymuszania zmiany stanu wyjścia pinu OC0 mikrokontrolera za pomocą wpisania bitu FOC0 w rejestrze TCCR0. Otóż atmel podaje, że wpisanie do FOC0 jedynki powoduje tą zmianę (co ma miejsce rzeczywiscie) oraz że flaga OCF0 nie jest zmieniana a tym samym układ nie wchodzi w przerwanie z tego powodu.
Problem:
Tak się składa że zarówno przy debugowaniu w avr studio 4.11 sp3 jak i w hardware widać że układ wchodzi w przerwanie, tz. pojawia sie nieszczesna flaga OCF0 ... czy jest na to jakiś sposób ? poza ręcznym kasowaniem flagi i np. blokadą przerwania ? czy może coś "wynalazłem" że tak sie dzieje....

pozdr
+5V

JAM
-
-
Posty:65
Rejestracja:1 kwie 2003, o 10:31
Lokalizacja:Warszawa

Postautor: JAM » 27 lip 2005, o 11:01

Masz w 100% rację. Przypuszczam, że jest to skucha symulatora w AVR Studio. Nie martw się jednak bo pakiet ten zawiera więcej takich błędów. Jest to jeszcze jeden z powodów, dla których warto korzystać z JTAGa.
Acha, aby rozpocząć emulację trzeba programatorem szeregowym przełączyć w procesorze flagę JTAGEN. Inaczej JTAG nie będzie widział procka.
Pozdrawiam.

Awatar użytkownika
+5V
-
-
Posty:76
Rejestracja:20 maja 2005, o 23:36
Lokalizacja:3miasto
Kontaktowanie:

Postautor: +5V » 27 lip 2005, o 13:04

dzieki za info, już zamówiłem JTAG'a na usb w propoxie, może jeszcze dziś dostane i powalcze.

pozdr.
+5V

ps.
w avt zamawiam jak gdzieś indziej sie nie da, i wszystkim to radze, bo na byle "gówno" czasem miesiąc trzeba czekać.

JAM
-
-
Posty:65
Rejestracja:1 kwie 2003, o 10:31
Lokalizacja:Warszawa

Postautor: JAM » 27 lip 2005, o 13:57

Cena nie jest wygórowana. Szkoda tylko, że uzyskasz za nią tylko trochę zmodyfikowaną, ale nadal starą wersję JTAGICE Atmela (mature product). Jak widać firma nie potrafi jeszcze zrobić podróbki aktualnego JTAGICEmkII. Cóż, pewnie znów czekają na artykuł w EP pozwalający im zrobić krok do przodu.
Pozdrawiam.
P.S. Jeśli kiedykolwiek odczytywałbyś zawartość flasha procesora umieszczonego w tym JTAGu to prosiłbym Ciebie o przesłanie mi tego kodu. W opublikowanym moim projekcie zrobiłem pewne zabezpieczenie softwareowe pozwalające odróżnić mój software od softwareu napisanego przez innych. Fajnie byłoby "złapać za rękę" firmę zżynającą cudze rozwiązania.

Awatar użytkownika
+5V
-
-
Posty:76
Rejestracja:20 maja 2005, o 23:36
Lokalizacja:3miasto
Kontaktowanie:

Postautor: +5V » 2 sie 2005, o 12:19

z tym odczytywaniem, to może być kłopot, mają zalane klejem silikonowym cześciowo, z dwóch stron płytki (SMT) spory glut kleju dolega do obudowy, jak działa to nie chce rozwalać. Ten klej to sposób montażu płytki do obudowy, bez niego by płytka wypadła na zewnątrz.
Poza tym odczyt z procka moze byc przecież zablokowany bitami bezpiecznikowymi ...
myslisz ze mimo fuse'ów to dało by sie jakoś odczytac układzik ?

Awatar użytkownika
pajaczek
Moderator
Moderator
Posty:2653
Rejestracja:24 sty 2005, o 00:39
Lokalizacja:Winny gród

Postautor: pajaczek » 2 sie 2005, o 14:41

Dac to by sie dalo, ale nie domowymi metodami, i nie tanio...

A napewno juz drozej niz zatrudnienie programistow do napisania tego od 0.

JAM
-
-
Posty:65
Rejestracja:1 kwie 2003, o 10:31
Lokalizacja:Warszawa

Postautor: JAM » 2 sie 2005, o 14:59

Eh, Panowie widzę, że jeszcze trochę musicie poczytać aby wiedzieć jak muszą być skonstruowane układy dające możliwość modyfikacji "wsadu".
Proszę jednak "bez obrazy" bo to nie jest jeszcze "wiedza powszechna".
Po kolei:
1. Nie wycieraj kleju bo szkoda tracić gwarancję. Bez problemu mogę poczekać aż ona minie. Ostatecznie program zawarty w procku nie zniknie, a nawet jeśli będzie modyfikowany przez AVR Studio to gwarantuję, że moje zabezpieczenie nie "wyparuje".
2. Układy dające możliwość modyfikacji "wsadu" nie mogą być zabezpieczone fuse bitami bo nie byłoby możliwości wpisania czegokolwiek do flasha bez jego skasowania. Kasowanie niszczyłoby bezpowrotnie program boot strap loadera, a to uniemożliwiałoby wpisanie nowego programu. Cóż, nie gniewajcie się za krótki wykład "belfra" bo warto o tym wiedzieć.
Na razie korespondencja ze mną będzie nieco utrudniona bo urlopuję się.
Pozdrawiam.

Awatar użytkownika
pajaczek
Moderator
Moderator
Posty:2653
Rejestracja:24 sty 2005, o 00:39
Lokalizacja:Winny gród

Postautor: pajaczek » 3 sie 2005, o 00:33

Ech.. Jam:

Jesli o mnie idzie, to sie odnoslem tylko do 2 ostatnich linijek poprzedniej notki, brzmiacych
Poza tym odczyt z procka moze byc przecież zablokowany bitami bezpiecznikowymi ...
myslisz ze mimo fuse'ów to dało by sie jakoś odczytac układzik ?
A wlasciwie do tej ostatniej.

Co do bootloaderow... no fakt, nie widzialem do tej pory potrzeby ich pisania... no moze potrzeba byla, ale byly tez inne, wazniejsze.

Awatar użytkownika
+5V
-
-
Posty:76
Rejestracja:20 maja 2005, o 23:36
Lokalizacja:3miasto
Kontaktowanie:

Postautor: +5V » 3 sie 2005, o 13:07

Eh, Panowie widzę, że jeszcze trochę musicie poczytać aby wiedzieć jak muszą być skonstruowane układy dające możliwość modyfikacji "wsadu".
tzn przybliż co masz na myśli?
Zapytałem wcześniej czy widzisz możliwość odczytu a nie "wsadu". Skoro układ działa zgodnie z założeniami w 100%, to po co producent wyrobu miał by dawać mozliwość jego odczytu czy modyfikacji zawartości? Jeśli przez pomyłkę nie ustawili odpowiednich fuse'ów zabezpieczających to jednak całkiem powszechnie wiadomo że się da odczytać.
Chyba, że układ celowo jest tak skonstruwany aby był mozliwy dostęp do pamięci z zewnątrz. A jak to jest w tym interfejsie do avrów, to pojęcia nie mam.

Awatar użytkownika
pajaczek
Moderator
Moderator
Posty:2653
Rejestracja:24 sty 2005, o 00:39
Lokalizacja:Winny gród

Postautor: pajaczek » 3 sie 2005, o 15:23

tzn przybliż co masz na myśli?
Zapytałem wcześniej czy widzisz możliwość odczytu a nie "wsadu". Skoro układ działa zgodnie z założeniami w 100%, to po co producent wyrobu miał by dawać mozliwość jego odczytu czy modyfikacji zawartości? (...) Chyba, że układ celowo jest tak skonstruwany aby był mozliwy dostęp do pamięci z zewnątrz. A jak to jest w tym interfejsie do avrów, to pojęcia nie mam.
Coz... moze znowu niepotrzebnie sie wpinam, ale co mi tam :P

Po co ?? A chociazby poto by uzytkownik mogl sobie sam aktualizowac oprogramowanie.
Dziala w 100% dobrze... owszem bo ma nowy soft, ale w momencie wypuszczenia nowego uC, JTAG, ktory niemialby takiej mozliwosci, bylby ograniczony jedynie do jego zaprogramwania (a i to nie jestem pewny), a o debugowaniu moglbys sobie pomazyc. Pozostawalo by Ci wyslanie ukladu do producenta w celu aktualizacji (strasznie bylo by to popularne :573: ), albo kupowania nowego JTAG'a :mrgreen:


A wogole to otworz sobie pdf do dowolnego (no prawie) AVR'ka i poczytaj o Boot Loaderze.

Ps. Przez pojecie "wsadu" nie powinienes rozumiec czynnosci programowania, tylko zawartosc pamieci procesora - bo mam wrazenie ze tego nie rozrozniles.

Awatar użytkownika
+5V
-
-
Posty:76
Rejestracja:20 maja 2005, o 23:36
Lokalizacja:3miasto
Kontaktowanie:

Postautor: +5V » 4 sie 2005, o 01:06

otworzyłem sobie EP 6/2004 i poczytalem o co chodzi w tym jtagu, no i rzeczywiscie, programuje sie go przez bootloadera :) no więc zajarzyłem już ten "wsad" :)

za zakupione urządzonko dopiero sie zabieram, więc jak pisałem: nie mialem pojęcia, np. o tych aktualizacjach. jak coś to wybaczcie, mea culpa.
pozdro. :)

ps. jakieś szopki jak narazie mam z tym propoxowym usb'owym jtagiem ...

JAM
-
-
Posty:65
Rejestracja:1 kwie 2003, o 10:31
Lokalizacja:Warszawa

Postautor: JAM » 8 sie 2005, o 08:18

No to jestem już po urlopie. Fajnie, że problem rozwiązał się bez mojego udziału w oparciu o czytanie manuali AVRów. Niestety zagadnienie boot strap loaderów i zabezpieczeń oprogramowania wprowadzanego do procków z ich pomocą nie jest opisane do końca w literaturze. Wobec braku danych nie będę tutaj gdybał, ale warto zastanowić się jak to można zrobić.
Pozdrawiam.

Wróć do „Elektronika - tematy dowolne”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 75 gości