No własnie o kmunikacji OBD2 i jej protokole znajdziesz dużo a o konkretnym protokole i adresach na przykład dla VAG juz niekoniecznie. Jak opanujesz sobie OBD2 to pogadasz z każdym sterownikiem silnika po 2003r. Co do podłaczeń to najcześciej w tych interfejsach USB tylko konwerter USB<>Serial jest z USB zasilany a wszystkie transceivery CAN...
Zapewne chodzi o sygnał Slave Select / Chip Select czy jakiś w tym guście. Cytat z datasheeta do FT311D: An SPI master interface transfer
STM32F10x Standard Peripherals Library - niestety ST wygenerowalo dokumentacje w formie pliku pomocy i nic z tym się nie zrobi - popprzednia wersja biblioteki (2.0) miała to w wersji pdf. Ale to właśnie w tym pliku dokładnie opisane są wszystkie funkcje bilbioteki związane z pracą peryferiów plik stm32f10x_it.c zawiera definicje wszysktich funkcji odnoścnie...
Jeśli np. Główny uC łączy się z uC slave po i2c,SPI, itp i chcę mu wyłączać zasilanie mosfetem, to może być problem? Oczywiście. Tylko jeśli zasilasz ten drugi procesor z tego samego zasilania co ten główny (3,3V) to powinieneś użyć samego tylko mosfeta P (na linii plus) bez układu przesuwającego. Dodatkowo jest wskazane by na czas wyłączenia zasilania,...
Chyba coś średnio, bo mówiłem, że mieszasz kontrolę software'ową z hardware'ową i dalej tak masz. Skoro sterujesz pinem SS ręcznie, to powinieneś bit SSM ustawić i do tego jeszcze ustawic bit SSI. U siebie mam ustawione tak jak poniżej, tyle że korzystam z DMA. [syntax=C]io_pin_cfg(GPIO_SPI_MISO, SPI_MISO_pin, m_GPIO_MODE_CNF_value(GPIO_CRx_MODE_IN_v...
Witam, potrzebuję skomunikować ze sobą 2 układy przy pomocy I2C. Master - mikrokontroler STM32. Slave - czujnik. Problem w tym, że STM32 jest zasilany napięciem 3V. Natomiast czujnik: 4-5V. Czy aby zapewnić prawidłową komunikacją tych układów muszę stosować dzielnik napięcia? Czy wystarczy, że zastosuję rezystory podciągające podłączone do +3V? Bo o...
(at)kubamiszkiewicz Do takich rzeczy potrzeba jakiś program do debugowanie ramki i symulacji mastera/slave modbus. Potrzebujesz konwertera RS485/USB i np. programu ModbusViewTCP. Tutaj może być masa nakładających się błędów np. niewłaściwe parametry komunikacyjne, błędnie zarobiony przewód komunikacyjny, zapis/odczyt nieprawidłowych rejestrów ( trzeba...
W module RCC masz rejestry odpowiedzialne za reset peryferiów (RCC_APBxRSTR)
"Sprzętowy" pin NSS w STM32 jest przydatny praktycznie jedynie w trybie SPI slave.
Po prostu jak przestajesz nadawać/odbierać jako master przechodzisz w tryb slave i zaczynasz nasluchiwać swojego adresu. ot i cała filozofia. PS jeszcze pamietaj o tym że możesz stracić arbitraż w multimaster - ale stm-y (przynajmniej te, ktore testowalem ładnie przechodzą w tryb slave bez zadnych problemów z magistralą)
Kilka zdań o tym jak taka oto aplikacja terminala bluetooth w telefonie z Androidem zastąpiła tradycyjnego pilota IR. https://obrazki.elektroda.pl/8212139000_... Kiedyś niestety przytrafiło się pilotowi do wieży, że „się zniszczył”. Wieża to JVC CA MX-J550R. Stary sprzęt ale jak dla mnie gra całkiem fajnie i 120 PLN, które...
Komunikacja bezprzewodowa dla urządzeń Internetu Rzeczy staje się coraz bardziej powszechna. Jednym z standardów, który można wykorzystać w IoT jest LoRa. Standard ten charakteryzuje się stosunkowo niskim zużyciem energii oraz bardzo dużym zasięgiem. https://obrazki.elektroda.pl/4539068700_... Powyżej możecie zobaczyć moduł SX1278 wraz...
Być może źle rozumiesz pojęcie "fullduplex", inaczej przecież nie zastosowałbyś I2C. Właśnie wszystko jest ok, chcę wykorzystać jakiś inny protokół, taki, żeby slave mógł dać znać nie tylko masterowi ale i innemu slave, pomysły co do tego narodziły się podczas wykorzystywania wersji v1. Pomyśl o lepszym zabezpieczeniu przed zakłóceniami niż pojedyncza...
https://obrazki.elektroda.pl/7157591100_... Wydawać się może, że na temat konwerterów USB napisano już wszystko i nic nowego się nie pojawi. Nic bardziej mylnego. Najczęściej stosowane są konwertery USB-UART. Mają one szereg wad odczuwalny zwłaszcza przy współpracy z AVR a co za tym idzie większością Arduino. Wykorzystanie UART stwarza...
Dac ma SCL kilka taktów zegara. Jest to logiczne jezeli reset mastera nastąpi w trakcie transmisji slave - po prostu slave musi dokonczyć.
Musze zaimplementować protokół w urządzeniu SLAVE (obsługa kilku najprostszych zapytań w protokole MODBUS). W sieci będzie podłączonych więcej niż jedno urządzenie SLAVE
Użyj UART zamiast SPI. Slave SPI na STM32 nie jest zbyt wdzięczny w implementacji.
Stary temat ale podepnę się bo mam podobny problem. Próbuję skomunikować STM32F429 (płytka discovery disco) z Atmegą8 (nie 88). STM Master Reviever <<>> Atmega Slave Transmiter. Wzorowałem sie trochę na kodzie kolegi i trochę na tym tutorialu: http://eliaselectronics.com/stm32f4-tuto... Problem kolegi kolegi...
Próbowałem na I2c1 oraz na I2c2. FSMC akurat ten co ja mam STM32 to 103RBT6 więc nie posiada tego układu. Zobacz na załącznik, to jest fragment bo tylko tak mi się teraz udało. Widać że po 9 bicie układ nie potwierdza adresu, jak podłączyłem pod AVRa to samo to po 9 bicie było 0 a tu jest 1. Adres tego układu był ustawiony na 0b1100000x (x to oczywiście...
Witam Uczę się mikrokontrolerów stm32 Nie mogę poradzić sobie z konfiguracją SPI Na początek dla testu chciałem skonfigurować tak aby SPI1 (master) wysyłało dane do SPI2 (slave) Chodzi mi tylko o komunikacje jednostronną po wysłaniu danych przez SPI1 SPI2 odbiera "coś" ale jest to albo 0xFF albo jakieś inneśmieci. Flaga odebrania danych przez SPI2 jest...
Witam Przygotowuję się do domowego projektu, w którym potrzebował bym wykorzystać komunikację master/slave do zbierania danych (z czujników) i sterowania (urządzenia wykonawcze). Zarówno urządzenie master jak i urządzenia slave chciałbym oprzeć na STM32 (dobry wybór?). Proszę o radę jaki najlepiej wykorzystać interfejs komunikacyjny, który w prosty...
(at)Piotrus - w zasadzie żadne (at)grko - tak, ma służyć tylko do testowania urządzeń typu slave (taki host ze snifferem)
Czyli polaczenia tak jak na rysunku ? http://obrazki.elektroda.pl/8190930600_1... sytuacja bez transmisji: STM32 oraz AVR: SS, CS-uC oraz CS-SD jako wejscia z zewnetrznymi rezystorami pull-up teraz moje 3 sytuacje: 1) STM32 master <-> AVR slave STM32: linia SS wyjscie stan niski, linia CS-uC wyjscie stan niski, AVR: na SS wykrywa...
// konfiguracja pinów dla SPI2 - Slave RCC->AHBENR |=RCC_AHBPeriph_GPIOB; gpio_pin_cfg(GPIOB, GPIO_Pin_12, GPIO_IN_FLOATING); // NSS gpio_pin_cfg(GPIOB, GPIO_Pin_13, GGPIO_IN_FLOATING); // SCK gpio_pin_cfg(GPIOB, GPIO_Pin_14, GPIO_AF6_PP_50MHz); // MISO gpio_pin_cfg(GPIOB, GPIO_Pin_15, GPIO_IN_FLOATING); // MOSI Piny w "nowych" STM32 do funkcji typu...
A wiec tak: Google potwierdza, ze I2S w procesorach STM32 jest tylko jednokierunkowe. A oto prawidlowa rozpiska pinow: Line Port Pin (100LQFP) I2S2_WS PB1251 I2S2_CK PB1352 I2S2_SD PB1554 I2S2_MCKPC6 63 I2S3_WS PA1577 I2S3_CK PC1078 I2S3_SD PC1280 I2S3_MCKPC7 64 Niestety nota katalogowa dla STM32F217 ma blad. Dzieki wszystkim za pomoc :P
Na zapas dodam, że timery w niektórych STM32 wymagają ustawienia bitu OPM przed CEN (a nie równocześnie, jak by na to wskazywał zdrowy rozsądek). Próby radziłbym zacząć od konfiguracji bez slave mode. Po uruchomieniu OPM, bierz się dopiero za slave.
Kod: [syntax=c] /************************* * stm32 uart main.c *************************/ #include "stm32f10x.h" #include "stm32f10x_flash.h" #include "stm32f10x_gpio.h" #include "stm32f10x_rcc.h" #include "stm32f10x_usart.h" #include "stdint.h" #include "misc.h" #define CLK_FREQ 36000000 /* User defined function prototypes */ void GPIOA_Init(void);...
Jak jest więc z tym problemem ACK ? Nie wiem o co Ci chodzi ale tak master informuje slave że nie chce już nic czytać (NACK). Inaczej slave bedzie dalej czekać na takty zegara i wysyłać coś co spowoduje blokadę magistrali.
Jeszcze pamiętaj o tym ze jak slave bedzie trzymać magistralę to samo wykrycie time-outu nie wystarczy, musisz recznie dokończyć transmisję.
Właśnie oglądam przebiegi na oscyloskopie i wychodzi na to, że na pinie MISO pojawia się stan wysokiej impedancji po odbiorze jednego bajtu. CS jest generowany tak jak powinien, zegar także jest ok. Jak odłączam przewód od układu slave i sprawdzam na pinach tegoż slave'a to przebieg wygląda ładnie więc wnioskuję, że to STM jest winowajcą. Może jakieś...
Nie mogę ogarnąć problemu swoim umysłem. Próbo odczytu rejestru WHO_AM_I = 0x0F na STM32G071RBTx daje zero https://obrazki.elektroda.pl/2872036300_... czyli źle. Na Arduino jest poprawnie https://obrazki.elektroda.pl/6309542200_... Przy odczycie rejestrów na STM32 mam zera, na Arduino ok. Sprawdzałem oscyloskopem efekty...
20MHz producenta (at)5V to jest gwarantowane 20MHz. Tyle i tylko tyle. Jedne MCU pójda na 25, inne na 21. Bandytyzm, nie bandytyzm zły zegar do peryferiów STM32 też można wybrać ręcznie (bez Cube) i często działa, a tam rzeczywiście pracuje się na limitach np. flasha. Bandytyzm to może nie jest, ale też nie jest to podejście poważne i profesjonalne....
To pRxMsg to chochlik przy kopiowaniu. Dobrze zajmę się teraz wyłącznie nadajnikiem. Po prostu czytałem, że na magistrali musi być przynajmniej jeden slave i dlatego robiłem oba jednocześnie. Nie doczytałem o trybie loopback. Moja konfiguracja w CubeMX: http://obrazki.elektroda.pl/4073573100_1... Zegar 72 MHz. I zauważyłem jeszcze dziwne...
Witam, szukam pomocy w odpowiedzi na kilka pytan oraz kilku wskazowek, jesli odpowiedz bedzie pozytywna odnosnie pewnego projektu. Za 2 lata musze oddac projet zaliczeniowy na jakby tytul czeladnika w Elektrotechnice. Nie chcialbym, zeby byl to typowy projekt typu: - Budowa siecii firmowej z kosztorysem - Praktyczne uzycie x w czyms tam Dlatego pomysalem,ze...
Jak chcesz wysyłać kilka zmiennych o różnych rozmiarach, to zrób strukturę. Ja mam np taką [syntax=c] struct CfgEEiic { uint32_t crc; // crc musi byc pierwszom zmienna w strukturze uint32_t CntWrite; uint32_t CntRst; uint16_t szt; uint32_t total; char txt[16]; }; struct CfgEEiic Cfg; [/syntax] Później wysyłasz tą strukturę przekazując adres i rozmiar...
Powiedzieć Ci w którym STM32 jest 10 UARTów czy sam znajdziesz? < Co z tego, że ma 10 uart, jak kilka będzie kolidowało z eth usb czy jakimś innym układem peryferyjnym. Dziś odżyła sprawa hosta USB, więc najlepiej gdybym miał: - ETH - USB slave - USB host - 4 SPI - 4 USART - 2 x I2C - 6 PWM - 2 DAC - jakieś 20 linii GPIO. Obudowa taka, którą bez...
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...
Urządzenie wykonuje pomiary co kilkanaście minut i w zależności czy jest połączenie GPRS wysyła dane po sieci. Jeżeli z jakiegoś powodu nie ma połączenia to zapisuje wyniki pomiaru do pamięci flash mikrokontrolera. Urządzenie pełni rolę SLAVE a ja komunikuję się w dowolnej chwili z wykorzystaniem Modbus RTU przez RS485 i odczytuję bieżące wyniki, które...
W efekcie wykonania kodu oczekiwałem zapalenia się na biało całego wyświetlacza. Wykorzystałem jedno wyprowadzenie testowe które ustawiam w ostatniej linii kodu celem sprawdzenia czy nie następuje zawieszenie na którejś z flag od I2C. Kod nie wykonuje się w całości wobec tego przypuszczam, że jest coś nie tak z konfiguracją samego I2C bądź sprawdzam...
Dołączę się do tematu ze swoim problemem z SPI. Przy pomocy tego i innych tematów udało mi się skonfigurować SPI do wysyłania danych. Podglądając przebiegi na liniach SCK i MOSI widzę, że wszystko ładnie się dzieje. Problemem jest natomiast odbiór danych. Z tego co zauważyłem na przebiegach poniższy kod nie generuje tylko sygnał SCK pozwalający na wysłanie...
Jeśli ktoś ma wiedzę na ten temat, to będzie miło jak coś napisze. No przecież napisałem... Nie wiem jakiej odpowiedzi oczekujesz - konkretnych liczb ("w ostatnich 12-tu miesiącach SPL zostało użyte w 14235 projektach prowadzonych przez 52463 programistów w 8234 firmach") czy procentów ("SPL jest używany obecnie w 64,4436% firm, przy czym najwięcej...
Piszę sobie prostą bibliotekę do obsługi magistrali i2c, narazie zacząłem od wysyłania danych. Ciężko mi odnieść jednak sposób działania tego w symulatorze do tego co jest napisane w Reference Manual... U mnie działa to tak: 1. Ustawiam bit START w rejestrze CR1 2. Po wysłaniu warunków startu wyzwalane jest przerwanie i ustawiony bit SB. Do DR wpisuję...
Próbuję ustawić kodek tak, aby przesyłał sygnał z portu PA.4 na wyjście słuchawkowe, niestety nie działa. Ktoś próbował w taki sposób korzystać z tego kodeka? Sygnał na PA.4 jest, ale na wyjściu słuchawkowym nic nie ma. Poniżej kod inicjalizujący: [syntax=c] /* Initialize audio ----------------------------------------... /* Initialize...
Bardzo fajne rozwiązanie. Systick i tak hula więc można się pod niego podpiąć. Patrzcie to: [syntax=c] HAL_StatusTypeDef HAL_I2C_Master_Receive(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint8_t *pData, uint16_t Size, uint32_t Timeout) { if(hi2c->State == HAL_I2C_STATE_READY) { if((pData == NULL) || (Size == 0)) { return HAL_ERROR; } if(__HAL_I2C_GET_FLAG(hi2c,...
np. baud rate nie ustawiam, bo domyślnie po resecie ma wartość 000, czyli fPCLK/2. U mnie też tak było do czasu aż skomplikowałem moją "pajęczynę" wtedy wyświetlacz miał tendencję do "zawieszenia się". prawdopodobnie to była za duża częstotliwość żeby sobie tak kabelkami 20cm "latać". Wystarczyło że częstotliwość zmniejszyłem i od razu ruszyło. Przy...
JarekC dzieki za link :) Freddie Chopin analizuję przykład odnośnie komunikacji I2C z akcelerometrem STM LIS35 Funkcja zapisująca do rejestru: Freddie Chopin wiem, że nie używasz tych bibliotek. Ja też nie używam. Chodzi mi tylko o idee. Dlaczego na rysunku nie ma znacznika Re-generate START, transmition from slave beginning ?? http://obrazki.elektroda.pl/1392690700_1...
Newsy – czemu nikt nie napisał że STM32 ma interfejs kamery DCMI? Piny idealnie pasują do wyjścia ADV7280. Jest też tryb "embedded synchro", bardzo ważny, bo ADV jest kompatybilny z ITU 656 i http://obrazki.elektroda.pl/5966179600_1... Także jest 8-bit embedded synchro, to czego potrzebuję – do podłączenia 8 pinów data i...
Witam wszystkich, na wstępie chciałem zasygnalizować, że jestem początkującym użytkownikiem True Studio. Mój problem polega na tym, że chciałem odebrać pomiar temperatury i wilgotności z czujnika SHT21 używając płytki STM32 Discovery z procesorem STM32F100RB z interfejsem I2C, ale do końca nie wiem jak to wykonać. Przeszukując internet (także elektrode)...
>kasia.p Policzmy: dla 115200bd, można przesłać 11520 bajtów na sekunde. Jeśli chcesz popchnąć ramkę z danymi 500 razy na sekundę, to 11520/500=23. Czyli możesz wysłać paczkę danych o wielkości 23 bajty 500 razy na sekundę. Ograniczmy się do łopatologii, zakładając: - enkodowanie base16, czyli potrzebujesz 3 bajty do popchnięcia 12 bitowej danej,...
Witam, Od razu przyznam ze jeśli chodzi o STM32 to jestem początkująca, także proszę o wyrozumiałość. Mój procesor to STM32F100RB – który mam na płytce ewaluacyjnej STM32-Discovery. main.c /* Includes ----------------------------------------... #include "stm32f10x_i2c.h" #include "stm32F10x.h" #include...
atmega slave slave output attiny2313 slave
pikanie radia citroen połączenie mikrofon realtek audio control
Cewka zapłonowa do kosiarki Sabo z magnetem i przerywaczem - diagnostyka i naprawa Seagate ST1000LM035 sudden death: firmware, head, PCB faults and data recovery