W rozkaznie 0x10 podajesz adres poczatkowego zapisu rejstru (hi ,lo) potem ilosc zapisanych rejstrow (hi,lo) a nastepnie leca juz dane do "zapisu" rejestrow. Slave inkrementuje adres dla kazdej kolejnej danej. Wyglada to tak : Adres slave , adres rejestru hi , adres rejestru lo , lisoc rejestrow ustawianych hi , ilosc ustawianych rejestrow lo , dana...
W bloku COM Rung 17 jest wypełnianie struktury do użycia COMM_REQ. Odczytuje ze slave 69 rejestrów %R od adresu 7000 i w master przepisuje od adresu 101 (instrukcja GFK-0582 funkcja Read System Memory: 07202 (16#1C22)).
Witam Mam pytanie co do swojego programu w C obslugujacego transmisje danych. Jest to program ktory bedzie zaladowany do procesora pracujacego w trybie MAster (mikrokotroler maxim ds89c450 - obsluguje 2 porty szeregowe) Po pierwsze wybieram tryb pracy mikrokontrolera( wybieram tryb 2 w ktorym mam ustalona predkosc transmijsi jako stala bez ingerencji...
1. Sprawdź dokładnie ustawienia dysków MASTER/ SLAVE. 2. Uaktualnij firmware rejestratora.
Nie bardzo rozumiem o co chodzi z tym uaktualnianiem wartości rejestrów. Teraz to mało istotne bo już wiem, że chodziło Ci o coś innego ;). PS nie chodziło o wartości rejestrów - tylko o cały rejestr (jako zbiór danych) wszystkich nieaktualnych transmisji. Czysto teoretycznie rozważałem przypadek gdzie odbiorniki mogą być poza zasięgiem i nie posiadają...
Witam. Ostatnio zastanawiałem się nad możliwościami Modbusa w zakresie adresowania 16-bitowego urządzeń slave. Przeszukałem internet wzdłuż i wszerz i znalazłem kilka rozwiązań "extended modbus addressing". Okazało się, że coś takiego istnieje, że są urządzenia, które to obsługują, ale kilka spraw mi się nie spodobało: - urządzeń obsługujących rozszerzone...
Witam, zlecę napisanie lub kupię gotowy kod do obsługi protokołu modbus RTU AVR slave. Master również mile widziany ale głównie zależy mi na kodzie do modbus RTU slave. Kod asembler AVR nie precyzuję jaki procesor bo jak bedę miał gotowy kod to już sobie przystosuję do konkretnego mikrokontrolera. Chętnie z rozsądnym użyciem pamięci RAM zamiast nadużywania...
Zaobac zplik nagłówkowy TWI.h - tam masz opisane wszystkie błędy z podziałem na mastera i slave. Skąd wiesz, że program się nie wiesza? Nie dostajesz ACK? Ustawiłeś autoACK w rejestrze kontrolnym TWI? Co w tym czasie robi procesor? Jest w trybie uśpienia, czy w pętli czyta status?
Powiedzmy, że chcę coś zapisać do Slave w sieci modbus funkca 0x06 (Preset single register). Czy wystarczy, że zrobię to raz tj. wyślę jedną ramkę i wartość jest zatrzaskiwana, czy muszę cyklicznie zapisywać tą wartość tj. slave kontroluje stan komunikacji i w razie braku ponownego zapytania zeruje rejestr? Dodam jeszcze, że chodzi mi o optymalizację...
Napisz dokładnie, czego nie rozumiesz. Wszystkie niezbędne dane konieczne do prawidłowego podłączenia i skonfigurowania dysków masz na załączonych przez siebie zdjęciach. jak ustawić zworki??? Konfiguracja dysku (Master/Slave): odpowiednie założenie (lub usunięcie) zwory; szczegóły na etykiecie dysku. Jak dokładnie je podłączyć, w jakiej kolejności...
Używałeś kiedyś SPI w trybie Slave na tych uC? Pytam bo po dalszych walkach okazało się, że układ w trybie slave nadający wysyła tylko jeden bajt w jednym cyklu (gdy SSEL jest w stanie niskim). Dokładnie tak samo jak zachowuje się sygnał SSEL w trybie master (po każdym bajcie przełącza się na stan wysoki na długość jednego cyklu zegara). Dlatego raczej...
Mam jednak znowu problem:( Borykam się z jednym błędem i jednym warrningiem. Wygląda to tak: plik main.c [syntax=c] #include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h> #include "rejestr.h" int main(void) { InitSpi();/* inicjalizacja SPI */ /*bląd pojawia sie przy zmiennej diody: "Multiple...
Jeden masz z BCS drugi z DAHUA Pomieszały mi się pliki myślałem o jednym a pisałem o drugim. Oczywiście chodziło ci o plik który dostałeś i o ten z FTPa BCS już pomijając ten od DAHUA. U mnie wywala błędy nagłówka... Przy : General_31xxH_Eng_N_V2.608.0000.7.R.2017... mam błąd nagłówka Install.lua a przy CONFIG_NSS błąd nagłówka custom-x.cramfs.img...
...Innymi słowy czy w każdym przypadku jest mi potrzebna biblioteka do I2C slave. Tak , w każdym przypadku biblioteka jest nieodzowna i obie są komercyjne :( I2cslave.lbx - dla I2c programowe I2c_twi-slave.lbx - dla I2c sprzętowe Jesli nie to jak obudzic uP ze sprzetowym TWI do pracy w trybie slave? Można napisać samemu obsługę TWI , ale rejestry za...
Niestety procek robi tu za slave. Jeżeli DAC też będzie wymuszał pracę slave ( bo tak to musiało by być ) to będą konflikty. Poza tym prawdopodobnie nie zdążę wysunąć drugiego bajtu słowa w przeciągu 1/768000 sekundy. Zegar mam teraz 3,68MHz ale mogę dać wewnętrzny 8MHz. Pozdrawiam.
status narazie zostaw w spokoju zapis do układu: 1. start 2. wysylasz adres urządzenia do zapisu 3. wysylasz adres komórki 4. wysylasz dane ... 5. stop odczyt z układu: 1. start 2. wysyłasz adres układu do zapisu 3. adres komórki 4 ponowny start 5. odczytujesz wysyłając ACK ostatni bajt odczytujesz z nack. 6. stop w tym wszystkim masz tylko 4 różne...
W module RCC masz rejestry odpowiedzialne za reset peryferiów (RCC_APBxRSTR)
Adres IP DVR jest chyba stały bo odkąd go mam to zawsze był ten sam Nie wiem czy powinienem go zmieniać i do czego jest pole DHCP IP jest widoczne w internecie ale jak wpiszę to nic nie widzę Typ rejestratora to DVS-04 LEA, używa on portu http 80 Witam, Jak widzę po twoich odpowiedziach to bardzo długa droga przed nami. -mylisz adres wewnątrz sieci...
Zapis do rejestru: MASTER. - ustaw linię NSS(SS) w stan niski - (1-bajt) Wyślij adres rejestru. z najstarszy bitem=1. - (2-bajt) wartość rejestru. - moduł zapisuje wartość w rejestrze. SLAVE.(moduł) - Moduł wysyła wartość rejestru MASTER - Master kończy transmisję ustawiając NSS(SS) w stan wysoki. Odczyt. MASTER - ustaw linię NSS(SS) w stan niski -...
Co dokładnie chcesz odczytać ?. Odczyt pojedynczych rejestrów to funkcje 3 (holding register - zapis i odczyt) - 4 (input register - tylko odczyt). Funkcje 15 i 16 to odczyt i zapis "multiple register - wiele rejestrów". Spróbuj funkcją 3 od adresu "x" do adresu "y" , "z" rejestrów.
Cześć, Mam problem z odczytem rejestrów z falownika za pośrednictwem sterownika S7-1200. Ciągle blok jest w stanie BUSY. Prośba aby ktoś rzucił okiem czy dobrze mam to skonfigurowane. Za pomocą symulatorów jestem bez problemu w stanie odczytać rejestry z falownika. Myślę że problem może leżeć po stronie ID slave, bo na falowniku mam ID 1, a między falownikiem...
Praca panelu HMI w trybie Modbus Master jest korzystna i nawet wskazana. W tym momencie rezerwujesz w urządzeniu jedynie rejestry pamięci a HMI zajmuje się komunikacją. Nie zawracasz sobie głowy planowaniem komunikacji i pisaniem dodatkowych procedur po stronie urządzenia sterującego. Dodatkowo w PLC komunikacja odbywa sie w na zasadzie przerwań lub...
Witam, W ramach części pracy dyplomowej muszę skomunikować się z analizatorem parametrów sieci energetycznej który wyposażony jest w interfejs ethernet wraz z zaimplementowanym modbus'em tcp slave. Sczytywanie danych z rejestrów analizatora to już późniejsza bajka. Chciałbym w pierwszym kroku przetestować transmisję pomiędzy komputerem a analizatorem...
Hmm, a może Ty byś pokazał kawałek kodu, który napisałeś? Nie wiem czy korzystasz z rejestrów czy SPL'a, ale wrzucam kawałek kodu dla SPL - sprawdzony w realu. [syntax=c] /** ****************************************... * (at)file Project/STM32F4xx_StdPeriph_Templates/ma... * (at)author MCD Application Team * (at)version...
Masz w programie błąd - zanim ustawisz tryb master SPI, koniecznie linia SS jeśli jest wyjściem musi być w stanie wysokim, inaczej SPI przejdzie w tryb slave. Drugi "błąd", który nie pozwoli ci zaobserwować stablinych stanów, to wysyłanie w pętli danych. Ponieważ dane przechodzą przez wyjścia, które nie mają zatrzasków, więc na rejestrach tak naprawdę...
Pamiętaj, że zanim zaczniesz czytać przydałoby sie podać adres od jakiego chcesz zacząć odczyt. Inaczej przy każdym wywołaniu Twoja procedura będzie czytać dane z innego obszaru. Zwykle tak jest, ale chyba akurat tego układu to nie dotyczy ( tea_read_registers() po starcie powinieneś użyć TEA_READ_ADDRESS zamiast TEA_WRITE_ADDRESS. Jeśli chodzi o adresowanie,...
Witam. Chciałbym przedstawić moją nową konstrukcję - rejestrator temperatury z obsługą kart Secure Digital (SD). Projekt powstał oczywiście w celach naukowych. Podstawą układu jest moja płytka testowa z mikrokontrolerem ATMega32. Dołączyłem do niej termometr cyfrowy DS18B20, zegar RTC DS1307 oraz adapter wpinany w gniazdo ISP (Kanda; zamiast LED jest...
Witam To zależy jak dużo chcesz przesyłać danych, myślę że spokojnie wystarczy skonfigurować port w tryb Serial I/O i wysyłać odpowiednie dane lub ustawić w tryb ModBus Slave i odczytywać dane co będzie jeszcze łatwiejsze. Pozdrawiam
Niestety dalej nie mogę się połączyć pomiędzy ND10 a Easy. Przetestowałem zarówno rejestrator ND10 jak i kartę modbus RTU osobno, połączyłem się i przesłałem dane bez problemu zarówno do EasyE4 jak i z ND10 i tak: -Rejestrator ND10 przetestowałem symulatorem modbus RTU master na komputerze PC, poprzez konwerter rs485(ch340). Odczytałem zawartość rejestru...
Najpierw konfigurujesz piny (rejestry GPIO), potem włączasz zegar dla GPIO w RCC... No to jak to ma działać? 4\/3!!
Dziękuje za odpowiedź. Zdecydowałem się jednak na komunikację poprzez I2C. Jeśli prędkość nie będzie wystarczająca to spróbuje po tym SPI. Jednak niestety natrafiłem na następujący problem. Napisałem sobie kilka funkcji pomocnych przy obsłudze I2C. Chcę odczytać dane tylko z żyroskopu na razie z jednej osi. Podczas odczytywania cały czas wyświetla mi...
Witam. Poszukuję biblioteki Modbus master dla AVR. W sieci jest dużo przykładów ale dla slave. Chciałbym mikrokontrolerem czytać rejestry z falownika Sofar po RS485. Załączam kilka znalezionych bibliotek. Szukałem w tych bibliotekach funkcji odczytującej rejestry typu holding - ale moja znajomość języka C jest zbyt słaba. Mikrokontroler to Atmega32.
Dziękuję. Rejestr już jest odczytywany przed zapisem. Każde przerwanie w slave zapisuje coś do SPDR, więc jeśli slave ZDĄŻY obsłużyć przerwanie i wpisać to zawsze jeden bajt jest wpisany. Przed transmisją przy inicjacji nic nie wpisuję do spdr, pierwszy wpis jest w przerwaniu. Wygląda na to, że oba wyrabiają się z wpisywaniem danych do rejestrów bo...
a może ktoś mi jeszcze wyjaśni w jaki sposób zaadresować wewnętrzne rejestry slave'a ? w helpach zawsze kończy się na zmiennej " _a1" , która jest aliasem rejestru R16. to powinno działać, ale ja potrzebuję 3 bajty.
Wpisz na allegro "siłownik zamka centralnego" wystarczy typu slave - z dwoma przewodami Jak widzisz cena śmieszna, podłączasz napięcie w jednej polaryzacji siłownik wsuwa ramie, które opuszcza tablice na zasadzie prostej dźwigni, podłączasz zasilanie odwrotnie - wysuwa ramie i unosi tablice - żadnej większej elektroniki nawet nie ma tylko zwykły przełącznik...
Witajcie, staram się zdefiniować konwerter RS 232 ascii<> RS 485 MODBUS RTU. Sterownik ma pełnić rolę slave'a, odpytywany przez wyświetlacz LUMEL. Dopiero raczkuję w sterownikach... Stąd pytanie -odpytywany przez modbus ma być tajemniczy dla mnie port "4010". Jak w instrukcji MOV (sterownik sobie wcześniej obrabia dane przechwycone przez RS232...
Witam Chciałbym w swoim projekcie wykorzystać Timery 2,3 i 5 do generowania synchronizowanych impulsów. Timery mają pracować w trybie PWM generując impulsy. Aby zachować powtarzalne przesunięcia fazowe chciałbym wystartować timerami synchronicznie Timerem 1. Robiłem tak w stm32f1. Tutaj pojawia się kłopot: w dokumencie RM0090 przy opisie rejestru TIMx...
Zdecydowanie nie polecam tego typu sterowania magistralą I2C. Jest to magistrala typu "wired-and" i każdy nadajnik i odbiornik powinien mieć I/O typu "open collector". W przypadku zewnętrznego podciągnięcia pinów magistrali do Vcc sterowanie magistralą I2C lepiej jest rozwiązać w ten sposób, że bity SDA i SCL w rejestrze PORTx (w Twoim przypadku PORTB)...
Drogi kolego, Kolega myli VHDL z C/C++ i innymi jezykami wysokiego poziomu. VHDL opisuje sprzet. Tzn ze gdy pisze kolega np "process" to musi mniej wiecej wiedziec jak to ma wygladac, czy to ma byc przerzutnik, czy mux + przerzutnik, czy logika + przerzutnik. Kod ktory kolega napisał poniżej [syntax=vhdl]process (NSS) begin if (NSS'event and NSS = '1')...
Potrzebuję działający przykład programu Modbus slave napisany w BascomAVR współpracujący z DS18B20. Są przykłady dla Arduino, lecz to C, muszę mieć koniecznie w Bascomie. Zmierzona temperatura jest przechowywana (już po przeliczeniu) w zmiennych Temperatura_x. Procesor ma ją wysłać poprzez MAX485 na magistralę Modbus RTU. Zmienna Temperatura_x jest...
Witam, Opis zlecenia: Zlecę wykonanie termometru i higrometru w oparciu o DHT22 (może dotyczyć samego oprogramowania w C *) Wymagania: - musi działać jako I2C Slave, - działać pod kontrolą FreeRTOS, - mieć zapis do rejestru I2C parametru określającego częstotliwość próbkowania w zakresie Czas realizacji: Czas realizacji do indywidualnego ustalenia....
Z danych technicznych wynika, że bramka ma możliwość odczytu cewek. Tak, ale autor wątku wspomniał też niestety, że: Niestety producent urządzenia slave nie przewidział cewek 0x01. Wszystkie dane wysyła na zapytanie 0x03 w rejestrach. Zatem niestety nic z tego.
Jakiś czas temu zajmowałem się tym tematem, dla '51 z 12 MHz da się w bulach monitorować iic 100 kHz o 400 kHz można pomoażyć ponieważ zakładam, że procka wykorzystujemy tylko i wyłącznie do monitorowania iic więc czekaj: .....jb P1.1,czekaj.........;czekanie na opadające zbocze SCL .....jnb P1.2,no_start.....;czekaj na stan idle iic bo to nie start...
Będąc w trakcie realizacji programowego połączenia urządzeń poprzez interfejs SPI, po przestudiowaniu dokumentacji, zastanawiam sie nad poprawnością realizacji zadania, czyt. mojego myślenia nt. sposobu jego realizacji. Otóż schemat wygląda następująco: Gdzie master - jest sterownikiem głównym wykonującym program, natomiast slave - sterując czujnikami,...
Bit SM2 w rejestrze SCON jest flagą 'czy ignorować' przychodzące dane przez UART (tryb 2 i 3). Jesli 9 bit w transmisji jest '1' i SM2 mamy ustawiony również na '1' to UART odbiorcy akceptuje dane. Można to wykorzystać to adresowania slave'ów. 4 slave mają swój adres i ustawione bity SM2, master wysyła 8bit adres i 9bit jako '1'. Potem zaadresowany...
Kompletnie nie rozumiem tego programu (języka też). Zrób może najpierw prostą wymianę bajtów, żeby slave caly wysyłał bajt 0xAB. Jeśli nie będzie działać, to zrób to bezpośrednio odwołując się do rejestrów spcr i spdr.
- rozpoczyna się od bitu nr 1 (lub 0 jak kto woli) czy tez od tego zapamiętanego miejsca? Wydaje się, iż od początku ale dziwnie to wygląda z punktu widzenia optymalizacji procedury? Tak na wyczucie to ja bym rozpoczynał od ostatniego najgłębszego niesprawdzonego rozgałęzienia, aż do momentu kiedy okaże się że trzeba zmienić najstarszy bit i wtedy...
Witam serdecznie Czy wie ktoś z Was w jaki sposób mogę wydrukować Mapę Rejestru dla protokołu Modbus RTU Slave? Chodzi mi o wydruk na którym obok adresu w pamięci sterownika będzie również informacja o jego adresie w protokole Modbus. Przykład: Values ML1200 registerModbus register System runB9:1/0 10017 System stopB9:1/1 10018 Pytam ponieważ program...
może dzięki temu rysunkowi kolega lepiej zrozumie na czym polega istota komunikacji SPI czyli jeżeli z mastera chcemy odczytać slave'a to możemy to zrobić w taki sposób: wysyłamy do slave'a 8 jakichkolwiek bitów, zawartość slave'a przesunie się do rejestru mastera. Wtedy wystarczy już tylko odczytać rejestr mastera. Master od slave'a różni się tylko...
po pierwsze, sprawdz ustawienia zworki na dysku. Jako ze podlaczasz jeden dysk - niech bedzie w pozycji master (moze zmieniles na slave? i dlatego nie odpala?) odczyt w komputerze - niestety rejestratory avc nie oferuja takiej mozliwosci, podlaczenie do komputera i proby odczytu danych powoduja .... bardzo czesto bezpowrotne uszkodzenie danych na dysku,...
Witam 1-wire ma taki system nadawania bitów, że za pomocą komparatorów nic byś nie odczytał. Praktycznie w obrębie jednego bitu, zwiera i master i slave. W I2C jest bardzo prosto sczytać dane, wystarczy jak podłączysz obie linie do odpowiedniego portu w PC i będziesz miał program do odczytu I2C. Analiza transmisji jest banalnie prosta, jak wie się...
Niestety, ale nie miałem styczności z w/w rejestratorem, jednak po przejrzeniu "manuala" instrukcji obsługi, można wyczytać: Hard Drive Format (clear hard drive) After entered "HARD DRIVE SETUP" menu, press Note :When Kolego, czy na tym dysku nie ma przypadkiem założonego hasła? Proszę podać screen detekcji dysku z Victoria API pod Windows lub MHDD...
Witam, Jak w temacie potrzebny byłby mi jakiś modem GSM w miarę tani. Gdyby nie to, że potrzebna jest także równolegle możliwość korzystania z modemu GPRS przez komputer PC to wykorzystałbym modem serii SIM300 i po sprawie. A chcę właśnie także na tym modemie mieć komunikację po TCP lub UDP którą będzie obsługiwał jakiś procek AVR. Widziałem gdzieś...
Mam sterowni Schneider TSX3721 z kartą komunikacyjna TSXSCP114. Próbuje napisać program który będzie odczytywać wejścia a następnie przekazywał zawartość rejestrów do mastera (w tej roli PC + ModBus Tester). I tu moje pytanie Czy w programie dla PLC powinna występować jakaś procedura inicjalizująca komunikacje po Modbus ?
Witam, w linuxie na moduł MMnet1001 są drivery do obsługi SPI w trybie master. Potrzebuję jakieś rozwiązanie, które pozwoli mi obsłużyć port SPI1 jako slave np moduły które trzeba dołączyć do linuxa lub przekompilowanie jądra itp. Informację z zewnętrznego procesora pracującego w trybie Master sterującego również innymi urządzeniami na magistrali będą...
Przykład: 28 pin w opisie złącz Dodano po 1 dalej masz opisany rejestr Device Select
Osobom które zetkną się w przyszłości z podobnym problemem: W wypadku FX2N (i całej rodziny FX) komunikacja z programami komputerowymi, panelami HMI, czytnikami etc jest niemożliwa przy użyciu portu programowania, niezależnie od używanych przelotek, translatorów etc. Port programowania służy wyłącznie do programowania. Dla zapewnienia podstawowej komunikacji...
Rezystory muszą mieć wypadkową rezystancję około 120 Ω. Co daje 390Ω dla każdego rezystora. Nie jest konieczna masa, zegar RC procesora też może być. Należy zwracać uwagę na odczyt błędu ramki (rejestr UCSRA) przed odczytem z UDR. Oczywiście kod CRC jest niezbędny. Topologia gwiazdy, którą przedstawiłeś, raczej nie jest poprawna. Na początek...
Jeszcze jedno pytanie, w interfejsie SPI kiedy zaczyna się taktowanie SCLK [?] Po stronie procka SPI jest MASTER, a po stronie modułu SLAVE. Na NSS daje logiczne '0' w celu otwarcia magistrali, czekam na stan niski na SO (taka jast rekomendacja ze strony TI przy wpisie do SLAVE'a), wpisuje dane do DR, na koniec odłączam magistrale przez ustawienie NSS...
] Po co 3 mastery? Czy one pracują na jednym PC i każdy odpytuje inną grupę sterowników, czy one pracują na różnych komputerach i każdy pyta o wszystko? Ad. wiresharka - doskonale wiem. Tyle że nie chce mi się rozbierać pakietu na kawałki żeby wyciągać wartości danych rejestrów. Na razie wystarczy wiedza, że sterowniki piszą pomiędzy sobą. Wartości...
Albo wręcz zrobić naked i wykorzystać jakiś rejestr sprzętowy. Co prawda jest to 16 bitów. Ale można to zrobić albo w dwóch 8 bitowych- żeby było atomowo albo jako Atomic Block.
W SR1 mam teraz ustawiony bit AF. Mam zwarte piny PC9 z PB7 oraz PA8 z PB8 układ I2C3 nadaje jako master układ I2C1 odbiera jako slave. Hmm gdy próbuje się skomunikować z układem CS43L22 na płytce discovery mam to samo ustawia mi się bit AF. [syntax=c] RCC->AHB1ENR |=RCC_AHB1ENR_GPIODEN; RCC->APB1ENR |=RCC_APB1ENR_TIM2EN; GPIOD->MODER =0x55555555...
Witam, mam problem z utworzeniem Modbus Slave na RS232 ze sterownika OMRON SYSMAC CPM2A. Przyklad pobralem stad: , a dokladniej z tego linka: . Uzywam opcji z portem RS232. Wykonuje po kolei, nastepujace operacje: 1. Wgrywam pamiec zgodnie z (instrukcja w przykladowym zipie zawarta): Before executing the program it is necessary to load the Data Memory...
1. Sprawdź flagi statusowe I2C czy nie ma tam jakiegoś błędu 2. Jeśli jest, to po inicjalizacj I2C zresetuj programowo ten układ peryferyjny (jest gdzieś jakiś bit w rejestrach I2C do tego - I2Cx_CR1_SWRST). 4\/3!!
Ja polecam OMRON-a np. taka konfiguracja: CP1LEL20DT1D (12 wej/8 wyj, port Ethernet) NB3QTW01B (3,5" kolorowy panel dotykowy, porty: Ethernet, RS232C, USB Slave i Host). Akwizycja danych w formacie CSV (czyli wprost do Excel-a) poprzez Ethernet do PC-ta lub USB host na pendrive. Po cenach katalogowych netto bez upustu taki zestaw to 2 480,00 PLN. Można...
Ale myślałem że opóźnienie które czeka aż wyśle daje ta linia: Powyższy kod (w masterze) czeka na zakończenie pierwszej transmisji (wysyłanie). Ale przed rozpoczęciem drugiej transmisji (odbiór) trzeba dać slave-owi szansę na włożenie swoich danych do rejestru. Przeczytaj jeszcze raz, to co napisałem poprzednio. Opóźnienie trzeba by u Ciebie dodać...
- dziękuje bardzo za porady z zakresu gramatyki, interpunkcji i składni, wiele wniosły do tematu, brawo, brawo, brawo... 3.1.13. Publikowanie wpisów naruszających zasady pisowni języka polskiego, niedbałych i niezrozumiałych. Przypominam, że Kolega w momencie rejestracji swej osoby na Forum zobowiązał się przestrzegać Regulamin,a w nim też i powyższy...
Witam po raz pierwszy na forum :D Mam sterownik S7-1200 i potrzebuję czytać jego rejestry za pomocą Modbus RTU (po RS485) Podłączyłem zestaw CPU1212C+CM1241 oraz wgrałem program Modbus_slave do sterownika. Komunikacja działa - Bez problemu odczytuję I, Q, IW natomiast za nic nie mogę odczytać rejestrów MW (Holding Register). Zgłasza się w Masterze komunikat...
Witam. Mój mikrokontroler (atmega8) odbiera dane z czujnika analogowego poprzez pin ADC3, a następnie przetwarza je i wysyła przez RS232 do mojego komputera. Tu wszystko działa :) Pojawia się problem gdy do układu podłączam minIMU-9 v2. Składa się on między innymi z żyroskopu z którego chcę pobrać dane. Mam problem ze znalezieniem urządzenia slave(l3gd20)....
Mam proste urządzenie, które jako Master wysyła dane do Slave'a korzystając z magistrali I2C. Chciałbym zbudować kopię tego Slave'a posługując się interfejsem TWI AVR-ów. Jest jednak jedna niezgodność (w stosunku do I2C), która powoduje, że nie mam pewności, czy TWI da sobie z tym radę. Otóż Master wysyła adres układu Slave ustawiając ostatni bit tego...
Mam problem z odpaleniem komunikacji (master nadaje) na przerwaniach w STM32F103. W poolingu działa OK, natomiast na przerwaniach nie chce ruszyć, już kombinowałem na różne sposoby i bez efektu. Inicjalizacja I2C: [syntax=c]void I2C_Init(void) { // I2C GPIO CONFIG RCC->APB2ENR |= RCC_APB2ENR_IOPBEN; // Software reset I2C I2C1->CR1 |= I2C_CR1_SWRST;...
Asembler po to, żeby było widać co kompilator zoptymalizował, jakiego typu wstawił dostępy do rejestrów. Tak przynajmniej mi się wydaje. Ale skoro kolega twierdzi że nie musi znać opcji kompilacji/plików wynikowych żeby powiedzieć co sprzęt robi to gratuluję, ja niestety tak dużego doświadczenia w tej dziedzinie nie posiadam żeby znać wszystkie kompilatory...
Witam. Mam problem z połączeniem rejestrów 74HC595 w kaskadę. Niby robie tak jak opisano w książkach i jak podaje się na internecie ale nadal nie wychodzi. Może najpierw kod programu (kod zawiera sprzętową i programową obsługe SPI, korzystam ze sprzętowej) : Połączenia G,RCK,SCK,SCLR w dolnym rejestrze są takie same jak w górny tzn. np. RCK dolnego...
Siedzę na problemem od kilku dni i nie mogę się dopatrzeć błędu. Dla niecierpliwych - sam problem opisany jest na samym końcu. Próbuję odczytywać dane z czujnika AM2302 z użyciem timera (timerów). Czujnik posiada jedną linię danych typu OC (lub coś w pobliżu). Komunikacja polega na tym, że master (MCU) w celu wybudzenia czujnika generuje stan niski...
Cześć! Mam pytanie ponieważ nie potrafię skonfigurować transmisji Modbus Slave w sterowniku Carel PCO3. Mam dodatkową kartę RS485. W programie dorzuciłem zmienne: COM_PROTOCOL_BMS gdzie przypisałem wartość 3 oraz zmienną do adresu i prędkości. W konfiguracji zmiennych, które chciałbym udostępnić w zakładce Networks zaznaczyłem BMS, wybrałem index itd....
i zrobiłem to w C Ale kompilator C nie odkłada 20 rejestrow na stos w przerwaniu za każdym razem. Nie odkłada? Dziwne? Kod programu jest w pamięci falsh, w rozwinięciu asm, w prologu, mam 20 operacji na stosie, jakim cudem na stos może być odkładane jednym razem mniej innym więcej danych? Dynamiczna zmiana kodu programu? W 8051 tak można zrobić. Kod...
/mnt/mtd powinna być partycją rw u mnie jest jeszcze dużo miejca wolnego: /mnt/mtd/Config # df -h Filesystem Size Used Available Use% Mounted on /dev/root 3.7M 3.7M 0 100% / devtmpfs 42.1M 0 42.1M 0% /dev /dev/mtdblock2 10.8M 10.8M 0 100% /usr /dev/mtdblock3 1.7M 1.7M 0 100% /mnt/web /dev/mtdblock4 1.6M 1.6M 0 100% /slave /dev/mtdblock5 328.0K 328.0K...
Od pewnego czasu zmagam się z problemem uruchomienia SPI2 w trybie slave. Założenia komunikacji są następujące: - SPI pracuje w trybie slave - Transmisja jednokierunkowa - tylko odbiór - Zegar, dane oraz linia sterująca CS podawane są z innego układu master - SPI ma obsługiwać sprzętowo linię CS - SPI ma zapisywać odebrane dane za pomocą DMA do wybranego...
Ściągnąłem sobie dwa programy. Jeden Modbus Poll (czyli master) i Modbus slave. Jest bardzo dziwna sytuacja. Uruchamiam Modbus Poll, wpisuje do niego te same rejestry na które jest skonfigurowana tablica, podłączam do PLC i program czyta bez problemów te rejestry które powinien. Następnie uruchamiam Modbus slave , podłączam się do tablicy. Udostępniam...
W C dla AVR rzadko ktoś pisze biblioteki w taki sposób, by dało się to uruchomić na kilku/wszystkich uC AVR, trzeba otworzyć kartę katalogową obu (pierwotnego autora i docelowego), porównać i poprawić. W Arduino nie ma problemu by wgrać kod do nowego czystego uC np. na stykówce, nawet bootloadera nie trzeba używać, poza tym większość popularnych uC...
mogłeś nie przeczytac uwagi Te Callback to nie zawsze działają jak by się chciało. HAL lubi włączać przerwania wszystkie z możliwych. Najlepiej swoje funkcje umieszczać w pliku "stm32f4xx_it.c"" Przykładowo robię tak: [syntax=c] void TIM1_UP_TIM10_IRQHandler(void) { /* USER CODE BEGIN TIM1_UP_TIM10_IRQn 0 */ if (__HAL_TIM_GET_FLAG(&htim1, TIM_FLAG_UPDATE)...
Zgadza się, kwadratowy pin to Rx, wyżej Tx, wyżej GND. Rejestrator z tego co się orientuję to rebrand Dahua XVR5104C. Sprawa wygląda tak: - rejestrator ma adres IP 192.168.1.108. mam dostęp do Telneta, jednak z otwartych portów jest tylko 23 - ponoć na porcie 3800 powinien nasłuchiwać aktualizacji firmware z takich narzędzi jak ConfigTool. Przy łączeniu...
Witam, Chce połączyć HMI unitronics (środowisko unilogic) z wzmacniaczem/konewerterem belki tensometrycznej Scaime Enod4T. Komunikacja po modbus RTU - RS485. Scaime po RS z komputerem i natywną aplikacją producenta komunikuje się bez problemu. Po raz pierwszy mam do czynienie z Modbus RTU. Przejrzałem specyfikację scaime i nie specjalnie mogę zrozumieć...
(at)sebus504 W tabeli modbusa ustawiasz adres startowy jakoś 30073(Slave data start Address), rozmiar(Data Size) 2 i wpisujesz do rejestru 32 bitowego(Master data start Address).
a czy jest możliwość odzyskania keya z systemu, którego nie da się uruchomić? Jest oryginalny windows, orygin. CD jednak znajomy zagubił cdkeya, ponieważ system jest na tyle zepsuty, że nie da się go uruchomić oczywiste, że te wszystkie programy odpadają. Czy jest może jakiś program za pomocą móżnaby dowiedzieć się jaki był cdkey na tym systemie, jeśli...
Dzieki za wskazowke. Tylko, ze program ktory podaje producent w pdfie dla Slave tez nie dziala ;///.Moze cos zle robie. Mozesz to sprawdzic? Program wyglada tak: .include "tn26def.inc" init: ldi r16,(1<<USIWM0)+(1<... out USICR,r16 SlaveSPITransfer: out USIDR,r16 ldi r16,(1<<USIOIF) out...
Z tego co wiem przerwanie w Slave zostaje włączone po zakończeniu nadawania/obioru. Dlatego wpisując w przezwaniu w rejestr SPDR wartość zakładam że będzie ona wysłana jako następna, przy następnym nadawaniu/odbiorze (przed wywołaniem kolejnego przerwania). Mogę wstawić w while(1) coś takiego: [syntax=c]while(1) { if(!(PINB & (1 << SS))) {...
Cena jednak niebagatelna;) Taniej wyjdzie jak zawsze, dodatkowe ATmegi jako układy slave po SPI.
Tak musisz kupić moduł em277 (dla s7-200 jest tylko slave)
Witam DS3231 Slave address to 0xD0 Adres rejestru to 0x0E chcę w ten rejestr wpisać zera mam taki kod: [syntax=c] i2c_cmd_handle_t cmd = i2c_cmd_link_create(); i2c_master_start(cmd); i2c_master_write_byte(cmd, (0xD0 << 1) | I2C_MASTER_WRITE, 1 /* expect ack */); i2c_master_write_byte(cmd, 0, 1); i2c_master_stop(cmd); i2c_master_cmd_begin(I2C_NUM_0,...
Cześć, Kilka dni próbuję coś zapisać jak i odczytać z eeprom at24c256. Problem polega na tym że program zatrzymuję się na [syntax=c]while (!(I2C1->SR1 &(SR1_ADDR))){}[/syntax] w funkcji i2c1_burst_write. Sprawdzałem rejestr DR i adres jest dobry. Pamięć eeprom ma adres 0x50 sprawdzałem skanerem i2c. Dodałem nawet przerwy czasowe pomiędzy inicjalizacja,...
Wczoraj sobie poradziłem. Zrobiłem tak, że na panelu napisałem skrypt, który będzie wykonywał się cyklicznie co jakiś ustalony okres i przypisze wartość dla rejestru na falowniku na tętaką, którą odczyta z PLC. Coś na zasadzie: [syntax=c]slave2:6 = slave1:6;[/syntax] Dzięki za pomoc, temat można chyba zamknąć. Pozdrawiam.
O coś takiego chodziło? HAL_UART_IRQHandler(&huart3); HAL_UART_TxCpltCallback
W polach „data” widzę dane ale zupełnie nie wyglądają mi one na Modbus RTU. Korzystam z adaptera Simex SRS-U4A-001 żaby wpiąć się w sieć RS-485. W zał. 04 kompletna komunikacja mastera z 2 slave’ami a w 05 same zapytania mastera po wypięciu slave’ów.
W pierwszym etapie projektu protokołu bezprzewodowego tworzonego na elektroda.pl zbieramy proponowane wymagania. Zapraszamy do wypowiedzi w tym temacie. Jakie macie wymagania dla protokołu bezprzewodowego? Szczegóły o projekcie znajdziecie tutaj: maciej_333 Trzeba odpowiedzieć na początek na kilka pytań: 1. Komunikacja ma być punkt-punkt? Może punkt-wielopunkt?...
Witam, Potrzebuję zakupić moduł bluetooth do połączenia androida z arduino. Na deal extreme znalazłem taki moduł (). W komentarzach ludzie piszą, że działa on bezproblemowo z arduino. Chciałem się upewnić, czy nie ma może jakiejś innej lepszej alternatywy. Mam jeszcze pytanie laika. Czym tak na chłopski rozum różni się sam moduł slave od master/slave....
Jeśli na 19200 otrzymujesz odpowiedź po ok 1 min. to masz coś źle. Jeśli masz jakiś sterownik z MODBUS i RS485/RS232 to użyj go do testów jako slave. W poszczególne rejestry, które chcesz odczytywać wpisz konkretne wartości (np. rej 100 -> 100, rej 101 -> 101 itd.). Odczytaj te wartości na komputerze z poziomu programu np. Modbus Tester - będziesz mieć...
32 urządzenia to dla mnie stanowczo za mało ;( Trzeba poszukać czegoś "mocniejszego" ;) Tak 200 urządzeń to minimum. Co prawda niektóre czujniki będę łączył do jednego mikro, ale i tak może wyjść dużo. Z przekazywaniem głosu mam już obmyślone. Tzn dzielę urządzenia na 3 grupy: master,master/slave,slave. Odpytuję tylko te z opcją master ;) Każda grupa...
Funkcja, nie widzi tablicy deklarowanej w innym pliku. Co może być przyczyna ? Na co zwrócić uwagę. Poniżej wycinki z kodu. [syntax=c] /* ATmega 8 */ glowny.c //==================================== . #define REJESTR 50 int rejestr[REJESTR]; void main(void) . while(1) . wykonaj(&ramka,(ile_bajtow-1)); . .=======================================...
Witam, Tworzę projekt, który zawiera w sobie odczytywanie wartości akcelerometru (MPU 6050), który komunikuje się z atmega8, a ten z kolei wyświetla informacje na wyświetlaczu. Całość opiera się o I2C. Korzystam z tej inicjalizacji I2C: [syntax=cpp]#include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <util/delay.h>...