a już wiem, jakby Ktoś chciał wiedzieć symulator wybiera się przy tworzeniu projektu... trzeba mi jeszcze informacji jak wygenerować plik z kodem asemblera z programu C?
- Vote on answer
- posted
14 years ago
a już wiem, jakby Ktoś chciał wiedzieć symulator wybiera się przy tworzeniu projektu... trzeba mi jeszcze informacji jak wygenerować plik z kodem asemblera z programu C?
identyfikator: 20040501 pisze:
Najprościej to odpalić ręcznie kompilator avr-gcc z opcją -S, spójrz do dokumentacji:
jasne, że to by było najlepsze, ale nie każdy umie pisać makefiles... kiedyś znalazłem opis make po polsku, ale teraz już nie mogę znaleźć, może Ktoś widział?
P.S. niestety katastrofa - pad dysku, muszę temat odłożyć
identyfikator: 20040501 pisze:
Pic polega na tym, że nie musisz zagłębiać się w konstrukcję makefile'i. Razem z winavr instalowany jest prosty edytor (mfile), w którym możesz wyklikać to co potrzebujesz.
mogę Was jeszcze trochę pognębić? można prosić o kilka słów o sposobie używania rejestrów w programach w C? ponoć kiedyś trzeba było używać makra outb czy portb (jakoś tak) ale to się zmieniło...
no i może już zupełnie przy okazji napisali byście coś o sposobie deklarowania przerwać - miałbym komplet informacji ;o)...
ale widzę, że w końcu Ktoś się wziął i poprawił opis avrlibc, warto poczytać? P.S. gdyby tak poprawili opis do madwifi to by dopiero było...
mogę Was jeszcze trochę pognębić? można prosić o kilka słów o sposobie używania rejestrów w programach w C? ponoć kiedyś trzeba było używać makra outb czy portb (jakoś tak) ale to się zmieniło...
no i może już zupełnie przy okazji napisali byście coś o sposobie deklarowania przerwać - miałbym komplet informacji ;o)...
ale widzę, że w końcu Ktoś się wziął i poprawił opis avrlibc, warto poczytać? P.S. gdyby tak poprawili opis do madwifi to by dopiero było...
P.S. WIELKIE dzięki!
identyfikator: 20040501 pisze:
Eee, ale jakich rejestrów? Procesora (np. r0, r1)?
Chodzi o rejestry SFR? Teraz wystarczy: #include <io.h>
i już można korzystać bezpośrednio podając makra "opakowujące" poszczególne rejestry, np: PORTB |= 1; albo: UCSR0A = 1 << U2X0;
Konkretnych nazw szukaj w plikach nagłówkowych w podkatalogu avr\include\avr tam gdzie zainstalowałeś WinAVR. Np. "iom16.h" w przypadku procesora ATmega16.
Jest w helpie do avrlibc. A na szybko to tak: #include <avr/interrupt.h>
ISR (USART_RX_vect) { // to jest przerwanie odbiornika UARTu }
Identyfikatorów przerwań (takich jak USART_RX_vect) też szukaj w pliku nagłówkowym dla danego procesora.
dzięki! a chciało by Ci się napisać coś na temat makefiles? może małe wprowadzenie z odnośnikami do ciekawszych (sprawdzonych przez doświadczonych programistów) stron na temat make? może jakaś książka?
identyfikator: 20040501 pisze:
Wszystkiego się dowiesz po wpisaniu magicznej komendy: info make
A tu masz wersję on-line:
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.