Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 12 gru 2024, o 21:44


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 10 sie 2014, o 14:35 
Offline
Użytkownik

Dołączył(a): 24 lut 2013
Posty: 405
Pomógł: 0

Witam,

Czy można przerobić plik z rozszerzeniem ASM na plik z Bascoma , mam coś takiego
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 16:01 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Jeśli znasz asm to się da.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 16:39 
Offline
Użytkownik

Dołączył(a): 24 lut 2013
Posty: 405
Pomógł: 0

Hmm.. jak bym znał to już bym tłumaczył :-)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 17:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

A czemu akurat bascom? Nie może być C? :twisted:

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 17:58 
Offline
Użytkownik

Dołączył(a): 24 lut 2013
Posty: 405
Pomógł: 0

łatwiej mi go zrozumieć



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 18:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

To Ci nie pomogę :)

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 20:49 
Offline
Użytkownik

Dołączył(a): 29 lis 2012
Posty: 1074
Lokalizacja: Sochaczew
Pomógł: 21

Tak czy siak musisz znaleźć kogoś kto zna ASM i przynajmniej powie co ten program robi krok po kroku



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 sie 2014, o 23:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Jako, że mam chwilę czasu i mi się nudzi (nie mam weny twórczej) postanowiłem trochę pomóc i przetłumaczyć część programu. Nie będzie tego dużo bo oprócz nudzenia się to mam lenia ale na początek zawsze coś, a potem będę w miarę możliwości tłumaczył dalej :)

No to od początku

Na początku mamy ustawienie zmiennych, z których korzysta program. Instrukcja asemblera EQU to nic innego jak przypisanie danej cyfry/liczby do zmiennej

np

.EQU jasiu = 400
jest równoznaczne z C
int jasiu=4;


Czyli w tej części mamy przypisanie zmiennych

Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Następnie mamy segment danych .DSEG i segment danych EEPROM .ESEG

Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


To czas na segment kodu czyli miejsce gdzie znajduje się właściwy program. Na początek zgodnie z opisem datasheeta str 44 tablica wektorów przerwań czyli informacje co powinno się wykonać (w tym wypadku skok do odpowiedniej funkcji ale może też być instrukcja RETI - powrót z przerwania)

Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Czyli teraz czas na pierwszą funkcję wywoływaną zgodnie z opisem z PDF po resetowaniu procesora. W tym wypadku jest to funkcja nazwana RESET, a skok do niej mamy ustawiony w tablicy wektorów przerwań.

OBSŁUGA RESET. Czyli co ma się uruchamiać zaraz po resecie
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Ustawienie adresu stosu na koniec programu
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

USTAWIENIE Przerwań i tym podobnych. Zgodnie z opisem obok i na str 64
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Tego nie znalazlem w pdf
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Ustawienie przerwań zegara zgodnie z opisem na stronie 70 PDF'a
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Inicjalizacja Timera
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Inicjalizacja timera zgodnie z opisem w komentarzach i str 70 pdf
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Inicjalizacja UART str 130 pdf'a
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Ustawienie bitu 4 PORTD oraz bitu 4 DDRD na 1 patrz troche wyżej inicjalizacja zmeinnych
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Pozostałe funkcje obsługi przerwań. W tym wypadku tylko powrót bez robienia czegokolwiek (RETI)
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


No i przyszedł czas na opis pętli głównej main programu. Tym razem opisy daje jako komentarze żeby co chwila nie przerywać listingu.
Składnia: [ Pobierz ] [ Ukryj ]
język asm
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Na dzisiaj wystarczy. Mam nadzieje, że choć trochę pomogłem. Późno jest, a wczoraj byłem na weselu więc jak ktoś wyłapie jakiś błąd to nie krzyczeć tylko poprawić :twisted:

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 sie 2014, o 15:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

A jak się dzisiaj będę nudził to dopisze resztę!

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO