2012-05-16 27 views
5

Używam Visual Studio do pisania aplikacji na komputer i uważam, że jest bardzo przyjazny dla użytkownika i łatwy w użyciu.Rozwój kodu wbudowanego (szczególnie w przypadku PIC z C18) w Visual Studio

Jeśli to możliwe, chcę również napisać kod osadzony w Visual Studio. Na przykład, czy można wygenerować pliki .hex dla serii PIC18Fxxx za pomocą C18 lub innego podobnego języka opartego na C?

+0

Zobacz także http: // stackoverflow.com/questions/4762268/free-alternative-to-mplab-pic-development – Clifford

Odpowiedz

1

Niestety, nie ma oficjalnego wsparcia dla PIC przez Visual Studio. I, nigdy nie słyszałem, że ktoś zrobił to w "nieoficjalny" sposób. Zawsze istniały plotki i spekulacje na temat takiej cechy, ale nigdy nie mają szansy na realizację. Tak więc odpowiedź brzmi "nie", nie ma sposobu na skompilowanie pliku .hex za pomocą standardowego IDE Visual Studio.

+0

tak nie jest, IronRuby i IronPython i wiele innych rzeczy nie działają z "standardowym" VS, ale VS ma być rozszerzony na używane jako IDE do tego, co chcesz i ma wiele różnych sposobów wtyczki zewnętrznego narzędzia –

+0

To prawdopodobnie nie była najlepsza odpowiedź - nieoficjalna integracja z zewnętrznymi kompilatorami jest czymś więcej niż spekulacją, ludzie robili to od wieków. –

7

Dużo pracuję z systemami wbudowanymi, w tym z PIC, a do większości korzystam z Visual Studio, głównie dlatego, że lubię pracę VIsual Assist for C.

Co mogę zrobić, to cel wielu .... więc skompilować kod dla narzędzi testujących urządzenie do komputera i używać przetestować kod http://code.google.com/p/seatest/

Oznacza to oddanie odcinki w miejscu dla wszystkich PIC sprzętem

Następnie można wyzwolić narzędzia do kompilacji za pomocą menu TOOLS lub zamienić na macierzysty IDE (np. MPLAB) w celu debugowania na urządzeniu

+0

Zastanawiałem się również nad napisaniem małego programu, który uruchamia kompilator i konwertuje wszystkie jego dane wyjściowe (ostrzeżenia/błędy) do formatów kompatybilnych z wizualnymi studiami, tak aby można było kliknąć komunikaty o błędach i przeniesie Cię do wiersza kodu, o którym mowa: –

+0

Zrobiłem to dokładnie przez jakiś czas, aby poprowadzić gcc dla osadzonego kodu i uchwycić jego błędy, ale kiedy drugi inżynier dołączył do projektu i poczuł się bezradny bez debugowania na poziomie źródła, w końcu zamienił IDE na taki, który łatwiej łączyć się z gdb. Ostatecznie całkowicie przełączyłem platformy programistyczne ;-) –

+0

Widziałem już ten instynkt wcześniej, zwykle gdy ktoś wpuści kogoś do testów jednostkowych, może pobrać coś z poziomu źródłowego na komputerze, a co najważniejsze, wiele oprogramowania może działać bardzo szybko, a następnie od czasu do czasu, musisz upuścić do rodzimych narzędzi, aby debugować na chipie (szczególnie w PIC, ponieważ kompilator/s mają zwyczaj generowania złego kodu czasami *** face palm ***) –

2

Program Visual Studio (w szczególności Visual C++) może być używany jako edytor kodu dla dowolny kod dla dowolnego celu, ale jako kompletne IDE jest niewystarczające.

MPLAB ma możliwość wyprowadzenia pliku Makefile dla projektu. Możesz użyć tego w Visual Studio, tworząc "Makefile Project" i wprowadzając polecenie build. Plik Makefile MPLAB jest kompatybilny z GNU make zamiast MS nmake, musisz go również zainstalować. Aby w pełni wykorzystać funkcje nawigacyjne i funkcje intellisense Visual Studio, należy dodać do projektu Visual Studio wszystkie nagłówki i źródła projektu - nie mają one wpływu na kompilację, ale zostaną przeanalizowane pod kątem przeglądania źródła, automatycznego uzupełniania itp. Wstępnie zdefiniowane makra wiersza poleceń lub kompilatora, które używane są w projekcie, powinny również zostać dodane do ustawień kompilacji, a ścieżka do dowolnego kompilatora i dodatkowych folderów nagłówków biblioteki powinna również zostać dodana do zawartych w projekcie.

To działa dobrze i umożliwia edytowanie i kompilowanie kodu, ale prawdopodobnie warto robić to tylko w przypadku dużych projektów. Dane wyjściowe kompilatora mogą wymagać masowania w celu umieszczenia go w formacie, który VS rozumie, aby np. Kliknięcie komunikatu o błędzie prowadziło do odpowiedniego pliku/linii. Użyłem narzędzia GNU sed, aby to zrobić w przeszłości. Nadal musisz uruchomić MPLAB, aby załadować i debugować swój kod; jeśli jest otwarta, program Visual Studio automatycznie podejmie wszelkie zmiany wprowadzone w MPLAB (pamiętaj tylko, aby nie robić niezapisanych zmian w obu środowiskach!).

Problem z tym podejściem polega na tym, że nie można zsynchronizować projektu MPLAB z zestawem plików VS i ustawieniami - należy to zrobić ręcznie.

Innym problemem jest to, że z jakiegoś powodu plik Makefile generowany przez MPLAB nie zawiera kroków post/pre biuld w ustawieniach projektu. Możesz zmodyfikować plik Makefile ręcznie lub utworzyć plik wsadowy, który wykonuje pre/make/post steps i wywołuje go zamiast zwykłego make w twoim projekcie.