Jeśli procek jest ok, to załącz na forum program, jaki probujesz uruchomić. Może tam jest jakiś błąd. Może coś z czasami jest nie tak i procek działa, tylko zbyt szybko. Może użyłeś funkcji $sim i kompilator zlikwidował opóżnienia czasowe?
http://www.iar.com/Products/?name=EW8051 Jest to wersja 30-dniowa
znajomość asemblera ZDECYDOWANIE i to bez DWÓCH zdań przyda ci się przy programowaniu w C. Chyba w celu utrwalania niskopoziomowych nawyków starając się przechytrzyć kompilator (; 4\/3!!
A wiec to jest tak: wszystko jest robione na kompilatorze raisonance.. I tam tez symuluje uklad 89c51 a putchar jest wziety ze zwyklego "stdio.h". I jak np dam "w = 65" to przy symulowaniu, na UART wuwala mi "AAAAAAAAA..." . Wiec jak nie bedzie dzilac? :( Pozdrawiam
W necie jest mnóstwo gotowych bibliotek do tego, dobrze poszukaj... A prościej to napisz program w C, deklarujesz unsigned int i resztą się martwi kompilator;-)
Witam. Posiadam programator z NE(zestaw 056) jest on oparty na zaprogramowanym 89C51 i podłączany do portu COM. Chciałem zapytać jak mogę przesłać program napisany w Bascom do tego mikrokontrolera? Czy program powinienem kompilować w Bascom czy konwertować w jakimś zewnętrznym kompilatorze? Czy jest jakiś darmowy język (najlepiej podobny do bascom)...
Jak masz jakiś kompilator C na 51 to podrzucę ci krótki program, ale chyba już na priv. OK?
ja miałem sklecony programator chyba z nowego elektronika do 89c51,52,55 - transmisja była przez rs232 z DOSa - napisałem sobie oprogramowanie pod windows z wykorzystaniem kompilatora asm51, transmisyjne i takie tam dodatki. Potem rozbudowałem programator do 89c1051 - 89c4051. Następnie zmieniłem kompa na laptopa w którym nie ma COM ani LPT więc wbudowałem...
Widocznie autor korzystał z ustawień w zakładce kompilatora. W źródle zrobisz to tak: CONFIG SDA = pin CONFIG SCL = pin Gdzie pin to np. p3.2 Czyli pin 2 portu 3.
Ma wbudowane 64kB. Wartosc kontrolna nie zmienia sumy bo sumuje zakres tylko do 0xEFD8 a zapisauje ja dalej, poza tym zakresem, w 0xFBFE. Odnosne dziur w kodzie: mikrokontroler jest wymazywany przed zapisem, wiec wszelkie "dziury" sa ustawione na 0xFF. Jezeli problem jest w kompilatorze to dlaczego ten sam hex liczy sume dobrze na Philipsie a zle na...
witam mam taki problem programuje procesor at89c52. program napisany w bascom, wielkosci 8kB. posiadam dwa liczniki softwarowe na liczbach typu LONG wylaczajac zasilanie zapisuje wartosci tych licznikow do pamieci EEPROM, dzielac na 4bajty Uruchamiajac urzadzenie odczytywane sa te 4 bajty z pamieci (napewno poprawnie). i bit po bicie (na zasanie A.i=B.j)...
void mine(void) <<<<<<<<<< !!!!!!!!! { while (1) { PortLED = 1; Delay(2); PortLED = 0; Delay(2); } } mine?? powinno być main. Miganie jakie opisujesz jest typowe do "latania" procesora po niezaprogramowanym obszarze pamięci (0xFF). Kompilator każe skoczyć programowi do...
Witam, czy podpowie mi ktoś jak deklaruje się poszczególne bity z obszaru 20h-2fh w mikrokontrolerze 89c51 posługując się oczywiście językiem asemblera (kompilator PASM51). Chodzi mi tu o szczegółową instrukcję gdzie co i jak wpisać aby zadeklarować przykładowo bit 0h który znajduje się pod 20h w obszarze adresowanym bitowo. Dziwi mnie fakt że nie mogę...
Witam, dostęp do zewnętrznych zasobów zawsze się realizowało przy pomocy takiej składni: xdata char tab[100]; lub char xdata tab[100]; itd. Mało danych podałeś jaki kompilator i daj jakiś kawałek kodu. Przyznam że nie znam tego procka. Mam jedynie doświadczenie z fizycznie podłączonymi urządzeniami do magistrali. Pozdrawiam
Mylisz pojęcia. 8051 i AVR to nazwy architektury procesorów. Wymagają przez to innych kompilatorów. Ale programować (czyli wgrywać hex-a do pamięci flash) można tymi samymi narzędziami. I tak. AT89 z literką "S" można programować ISP (zupełnie tak samo jak ATmega). Podłączasz programator STK-200/300 i luzik ;) Natomiast te z literką "C" dają się programować...
Widzę że roi się tutaj od znawców temetu, więc piszę z nadzieją że ktoś pomoże mi rozwiązać problem. Posiadam programator zakupiony w sklepie cyfroniki (do samodzielnego montażu, obsługuje AT89C51,52,55). Dopóki programowałem 89C51 sprawował się bez zarzutu, nie miałem też żadnych problemów ze softem. Zaprogramowany procesor działał bardzo dobrze zarówno...
Możliwe, że zadeklarowałeś za dużo lub za duże zmienne i kompilator nie ma ich gdzie upchnąć. W linii 58 nastąpiło przepełnienie "czary goryczy", tj. nie było już miejsca na nową zmienną. Spróbuj zmniejszyć ilość zmiennych (wprowadź takie uniwersalne a nie deklaruj nowej za każdym razem gdy ci jej potrzeba).
sprawdź plik AT89X51.h czy masz go na dysku bo go nie widzi kompilator możesz też spróbować #include <atmel/AT89X51.h> lub #include (atmel/AT89X51.h) lub podajac pełna ścieżkę
Spróbujmy po raz trzeci: Przy takim kodzie, jaki masz, jakikolwiek wpływ na stan wyjść ma tylko ostatnia instrukcja wyj = wej | coś To, co zrobiły wszystkie poprzednie - gubisz. To również dobrze wyjaśnia zachowanie debuggera. Kompilator zauważył, że wcześniejsze instrukcje if nie mają żadnego wpływu na wartość zmiennej wyj i po prostu je usunął, zostawiając...
Witam! Poradźcie mi co tu zrobić. Kończę właśnie pracę dyplomową. Buduję parę urządzeń z własnym protokołem dla PLC (Power Line Communication). Wszystko na '51. Było by już ok, gdyby nie fakt, że dla jednego urządzenia brakuje mi pamięci Flash. Wstępnie, miał on być zbudowany na 89C51 (4k). Niestety interfejs użytkownika zjada za wiele miejsca i zaczęły...
Witam Piszę program w Bascom avr dla microcontrolera AT89C51 araczej chciałbym napisać poniewaz jestem dopiero zaczynającym programistą mam problem z wyborem portów tzn. piszę polecenie Config Port1.1 = input a kompilator wywala błąd w tej lini że nieprawidłowy parametr, a gdy piszę Config PortB.1 = input kompilatorowi wszystko pasuje nie widzi problemów...
Ma ktoś z Was może jeszcze archaicznego Bascoma 8051 i mógłby potwierdzić problem występowaniem takiego błędu: https://obrazki.elektroda.pl/8482861200_... Dodatkowo w pliku bascom32.log znajduję: 05.02.2024 00:44:52 Access violation at address 0051AD31 in module 'Bascom.exe'. Read of address 30202C4E 05.02.2024 00:44:56...
jak można wgrać program i czy musi być jakiś program wsadowy do komunikacji w tym jestem zielony Do wgrania skompilowanego programu musisz mieć programator. Do modelu 89C51 musisz zakupić programator równoległy (takie pudełko podłączane do komputera z podstawką do której wstawiasz procesor). Ja kiedyś używałem taki ([url=http://www.progstar.com.pl/combo3/...
no właśnie przysiadłem i poczytałem. Niestety widzę że są znaczące różnice w przebiegach czasowych dla dostępu do zewnętrznej pamięci programu między poszczególnymi modelami i np. te z serii 89C51ED2 i 89C51RD2 w stosunku do pozostałych np. 89S8253 lub 89S52 mają bardzo skrócone czasy na poszczególnych zboczach sygnałów ALE i PSEN. Problemem który zauważyłem...
89S8252 to "zwykly" 8051 tyle tylko ze ma 8kB flash'a, programowany przez ISP, i ma 3 timery... Tak, prog napisany na 89c51 bedzie na nim chodzil, spieszy mi sie bo jutro musze zaprezentowac promotorowi dzialanie mojej pracy dyplomowej (programator ISP + stanowisko testowe do nauki programowania mikrokontrolerow serii mcs-51). Wszystko dziala ty lko...
Zwracam sie z zapytaniem do szanownych forumowiczów .. będę musiał zając się projektem układu na uP integrującego obsługe sieci CAN, i kilku pstryczków elektryczków z głowną płyta pewnego urządzenia. Wiem że będę stosował najprawdopodobniej 89c51cc03, i teraz zastanawiam sie jakiego środowiska uzyć do "ugryzienia tego" - programować chcę w C. Do wyboru...
programowanie 89c51 programator 89c51 89c51 programator
schemat licznika rowerowego konwerter opticum monoblock twarde lutowanie
max232 programator max232 programator
Sony Bravia – 6x miganie diody, trzaski, czarny ekran, awaria podświetlenia LED Bosch Sensixx D190 – demontaż stopy żelazka, odkręcanie od rączki i pojemnika na wodę