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



Teraz jest 27 gru 2024, o 12:17


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
Autor Wiadomość
PostNapisane: 15 maja 2017, o 07:25 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Witam
"Odziedziczyłem" kilka programów napisanych dla MSP430 w IAR, chciałbym przerzucić je do np Code Composer Studio 7.0.0 z powodu, że jakoś przyjemniejszy, łatwiejszy dla mnie jest edytor oparty o Eclipse, ułatwienia w stylu Ctrl+Spacja, kolorowanie składni itp. No i to przywiązanie, przyzwyczajenie do AVR-ów. Niestety proste przekopiowanie kodu generuje wiele komunikatów o błędach. Mimo wszystko chciałbym to jakoś ujarzmić.
Zacznę może od podstaw czyli pytanie, co to jest IAR? W przypadku AVR edytorem kodu jest Eclipse a kompilator to GCC, Eclipse posiada wtyczkę czyli Toolchain do kompilatora? A jak to jest, że w Eclipse mam od razu podpięty programator w IAR również, a w np Notepad++ już nie. Przepraszam za może laickie pytania, ale tak jakoś wyszło, że złapałem się na takich brakach podstawowej wiedzy.
Więc czy dobrze rozumiem, że IAR to kompletne środowisko z edytorem i kompilatorem? Czy możliwie jest i w ogóle sensowne przenoszenie kodu z IAR do CCS?
Proszę o dużą wyrozumiałość i dystans, bo jakoś tak sam czuję, że chyba głupoty piszę. :oops:

Pozdrawiam :-)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2017, o 08:18 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

W Eclipse też nie masz "od razu" podpiętego programatora. Musisz pokazać z którego będziesz korzystał.
Eclipse tak jak NotePad++ to edytor tylko taki bardziej rozbudowany i zaawansowany z wieloma udogodnieniami.
Choć są i tacy którzy wolą NotePada i w nim piszą. Każdy wybiera co mu wygodnie.
IAR to kompletne środowisko tak jak AVRStudio.
Czy warto przenosić? To już tylko zależy od Ciebie. Pytanie tylko czy chcesz się tylko z tymi "odziedziczonymi" programami
zapoznać czy też masz je dalej konserwować i rozwijać?
I następne pytanie czy w firmie czy hobbystycznie?
Bo jeśli w firmie to trzeba się trzymać standardu. Trudno żeby firma po każdej zmianie personelu
przepisywała oprogramowanie od początku bo ktoś woli takie czy inne środowisko. To musi mieć uzasadnienie.

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2017, o 08:52 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Wiesz jak jest, gdy musisz ogarnąć program który dostałeś w spadku. Eclipse znakomicie ułatwia sprawę w poruszaniu się po programie. Analizując kod instrukcja po instrukcji "skaczę" sobie znakomitym ułatwieniem Ctrl+klik myszki do funkcji, zmiennej, stałej itd. W IAR muszę tego szukać niejako na piechotę kręcąc jak oszalały scroll-em myszki. Po kilku takich skokach już sam nie pamiętam co było na początku. :lol:
Tak jak napisałem, przyzwyczaiłem się do Eclipsa i wlałbym zostać przy tym co znam a IAR jakiś taki dla mnie jeżowaty z kolcami.

Cytuj:
Trudno żeby firma po każdej zmianie personelu
a to w cale nie jest takie złe, przynajmniej nie będą mieli głupich pomysłów :lol: :lol: :lol:



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2017, o 11:56 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Tom277 napisał(a):
Wiesz jak jest, gdy musisz ogarnąć program który dostałeś w spadku.

Czasem wcale nie trzeba dostawać w spadku :lol:
Tom277 napisał(a):
Eclipse znakomicie ułatwia sprawę w poruszaniu się po programie. Analizując kod instrukcja po instrukcji "skaczę" sobie znakomitym ułatwieniem Ctrl+klik myszki do funkcji, zmiennej, stałej itd. W IAR muszę tego szukać niejako na piechotę kręcąc jak oszalały scroll-em myszki. Po kilku takich skokach już sam nie pamiętam co było na początku. :lol:
Tak jak napisałem, przyzwyczaiłem się do Eclipsa i wlałbym zostać przy tym co znam a IAR jakiś taki dla mnie jeżowaty z kolcami.

To teraz trzeba tylko sprawdzić czy jest toolchain i wtyczka do MSP430 dla Eclipsa, a resztę na pewno da się ogarnąć ;)

Tom277 napisał(a):
Cytuj:
Trudno żeby firma po każdej zmianie personelu
a to w cale nie jest takie złe, przynajmniej nie będą mieli głupich pomysłów :lol: :lol: :lol:

To po prostu polityka firmy. Nikt nie powiedział, że to Ty masz ich uświadamiać :D

------------------------ [ Dodano po: 21 minutach ]

A masz przygotowanego Eclipsa pod MSP?
Jeśli nie to tu masz linka http://www.xpg.dk/projects/msp430/msp430-eclipse/ co pobrać i jak wstępnie skonfigurować. (Nie testowałem ;) )

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2017, o 12:58 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

MirkoT zerknę na twój link, chociaż już kiedyś podejmowałem walkę z zatrudnieniem Eclipsa do obsługi MSP, niestety poległem. Później przeglądając stronę TI pobrałem CCS. Okazało się, że to prawie Eclipse, CCS jest na bazie Eclipsa. CCS jest aktualizowane przez TI, ma wszystko co jest mi potrzebne (chyba :-) ) więc nie ma sensu walczyć z Eclipsem. Tak czy siak pozostaje nadal problem, że składnia IAR-a generuje błędy w CCS czy Eclipsie przy "zwykłym" przekopiowaniu kodu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2017, o 21:54 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Prawdopodobnie są jakieś różnice w bibliotekach, nazwach przerwań, definicjach rejestrów
A możesz podać jakiś konkretny przykład na te błędy?
Pewnie używają innego kompilatora - toolchaina i dlatego błędy.
Może nie da się przez proste kopiowanie, ale na pewno się da ;-)
W zasadzie to powinna być kosmetyka, ale kto to wie. Nie próbowałem.
Zresztą po przejściu z AVR-GCC na AtmelToolchain też były potrzebne
zmiany w kodzie.
Tak samo nie chciały się kompilować projekty pisane w NotePadzie++ czy
AVRStudio po wrzuceniu do Eclipsa. Ale różnice były niewielkie i ostatecznie
się dało.

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2017, o 05:36 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

No właśnie, poruszyłeś problem który pchnął mnie w kierunku napisania tego postu.
Cytuj:
przejściu z AVR-GCC na AtmelToolchain też

To co to jest w końcu AVR-GCC a czym jest AtmelToolchain, i jak ma się do tego IAR, Keil uVision? Przecież wszystko jest w C to czym się to różni? Mam też książkę na temat programowania w C 8051, niby to samo ale trochę inaczej. Oczywiście nie mówię o podstawowych rzeczach jak nazwy przerwań, rejestrów to cecha charakterystyczna każdego procesora(rodziny procesorów).
Spróbuję coś konkretnego wstawić co generuje błędy kompilacji.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2017, o 09:42 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Jak sama nazwa wskazuje Toochain.
jest to zestaw narzędzi tworzących łańcuch, którego efektem działania
jest na końcu plik wynikowy wgrywany do mikroprocesora.
Na pewno są tu bardziej obeznani koledzy, ale najważniejsze elementy (o których pamiętam) to:

Preprocesor,
Kompilator,
Linker.

Generalnie narzędzia są podobne, ale jak widać występują pewne różnice.
Podobnie jak z siekierą ;-) niby każda służy do rąbania, ale jednak nie są takie same.
I to pewnie właśnie z powodu tych niuansów są problemy.
Gdyby każdy pisał programy zgodnie ze standardem, a przecież te też się zmieniały
na przestrzeni lat, problemów byłoby mniej.
Zresztą nasz język (ludzki) też ewoluuje i się zmienia. Pojedziesz w inny region kraju i już są różnice.

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2017, o 10:19 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Dzięki, fajnie to wytłumaczyłeś.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2017, o 11:58 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Mam np takie coś:

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


kompilator zwraca błąd
Cytuj:
/main.c", line 191: error #20: identifier "Flaga" is undefined
"../main.c", line 239: error #20: identifier "Flaga_bit" is undefined
"../main.c", line 331: error #20: identifier "Flaga_bit" is undefined
"../main.c", line 335: error #20: identifier "Flaga_bit" is undefined
"../main.c", line 363: error #20: identifier "Flaga_bit" is undefined
...
... itd


i w ogóle gdy próbuję się odwołać do Flaga_bit.Klawisz1 lub Flaga_bit.Klawisz2..3...4 kompilator krzyczy o braku definicji.
W IAR kompilowało się bez problemu w powyższej postaci.
???



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2017, o 13:08 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

A czy nie powinno być tak?

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


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

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2017, o 13:19 
Offline
Użytkownik

Dołączył(a): 08 wrz 2012
Posty: 505
Pomógł: 6

Kurcze nie wiem, trochę to dla mnie zagmatwane. Tak czy inaczej przykład który podałem działa i kompiluje się w IAR a w CCS nie. :?:



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: 12 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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