W tym samym rejestrze (AFIO->MAPR) znajduje sie bity konfiguracyjne JTAG/SWD. Dokumentacja mówi, że są one tylko do zapisu, a odczyt tych bitów daje wynik niezdefiniowany. Może warto sprawdzić bezpośredni zapis do rejestru [syntax=c]AFIO->MAPR = AFIO_MAPR_TIM4_REMAP; // bez |[/syntax] albo z maską na te bity [syntax=c]AFIO->MAPR |= AFIO_MAPR_TIM4_REMAP...
Procka powinno się dać ożywić przy uzyciu stosownej konfiguracji. Większość oprogramowania do debuggowania po zwolnienieniu resetów czeka chwilę (chodzi o stany nieustalone, zewnętrzne układy resetów, kondensatory itp.) i dopiero potem próbuje nawiązać połączenie przez JTAG. Oczekiwanie to zwykle jest tak długie, że jeśli w programie na początku jest...
Dysk całkowicie sprawny w 100% Bady miałes logiczne co usuneło zerowanie . Opis atrybutu : Spin Retry Count 10 Ilość ponowień prób rozpędzenia tależy. Atrybut ten przechowuje łączną ilość prób uruchomienia tależy przed osiągnięciem pełnej szybkości obrotowej (pod warunkiem, że pierwsza próba nie powiodła się. Spadek tego atrybutu jest oznaką problemów...
Napisałem program obsługujący komunikację RS232 dla płytki STM32 P103: - dokumentacja płytki https://www.olimex.com/dev/pdf/ARM/ST/ST... - schemat https://www.olimex.com/dev/images/ARM/ST... Niestety łącząc docelowo przez konwerter RS232 -> RS485 i podłączając do serwomechanizmu RS28 dynamixel podłączyłem raz zasilanie 15V,...
Wlasnie chodzi o peryferia itp. po prostu pisze kod z pamieci ;) ale jak wspominalem to sa tylko moje glupie nawyki. Po prostu czasem w firmie robie cos na jednym procku, a w domu jakis hobbystyczny projekt na innym... Remap nie jest dla mnie problemem, osobiscie nie uzywam gotowych modulow (czasem do testow - ale takie co maja wszystkie porty wyprowadzone...
Witam! Ja jeszcze chciałbym wrócić do kwestii konfiguracji OpenOCD. Posiadam programator Wiggler i moduł z lpc2368 oraz OpenOCD 0.2.0+Eclipse+CodeSourcery. Przerobiłem plik parport.cfg na #Daemon telnet_port 4444 gdb_port 2001 #JTAG interface parport jtag_speed 4 jtag_device 4 0x01 0x0f 0x0e parport_port 0x378 parport_cable wiggler oraz plik lpc2368.cfg...
Witam ponownie, rozwiązałem swój problem, błąd był banalny i polegał na tym, że ustawiałem stan wysoki w rejestrach instrukcją |= i to było ok, ale nie zerowałem bitów tam gdzie powinny być zera instukcją &= ~. Na dole działający kod: [syntax=c]//niezbędne pliki nagłówkowe #include <stddef.h> #include "stm32f10x.h" //DEFINICJE PREPROCESORA...
Inicjowanie UART to 2 lub trzy zapisy do rejestrów, przemieszczenie linii - po jednym zapisie na port (czyli jeśli zmieniasz z portu A na B to masz dwa zapisy). Czas tych operacji nie przekroczy ułamka mikrosekundy (kilkanaście cykli procesora), o ile nie będziesz korzystał z SPL ani HAL.
Jest jakiś sposób? Bootloader na UART, programik od ST i kasowanie całej pamięci. Ewentualnie można próbować połączyć się z wciśniętym przyciskiem RESET. 4\/3!!
Tak wlasnie jest o ile AF4 odpowiada I2Cx
Aby móc zmieniać remapowanie musisz włączyć zegar dla AFIO. [syntax=C]RCC_APB2PeriphClockCmd(RCC_APB... ENABLE);[/syntax]
Witajcie Problem stanowił wyłączony zegar dla peryferi odpowiedzialnych za reapowanie (przeoczyłem jedną z flag). Pozdrawiam Krzysztof
Remap powinien to właśnie załatwić. czy brakuje jeszcze czegoś?
(at)migol21 Jesteś geniuszem. Zastosowałem fsck i po tym już mogłem zamontować interesującą mnie partycję. Następnie zrobiłem backup danych i teraz pozostaje mi zgodnie z twoją sugestią zerowanie i remap dysku. Mam w związku z tym pytanie: Do zerowania dysku używam programu MHDD, ale on na standardowych ustawieniach w Biosie nie wykrywa dysków SATA....
u mnie to działa. Pomogło wykonanie instrukcji w tej kolejności: [syntax=c] SetSysClockTo24(); NVIC_SetVectorTable(NVIC_VectTab_FLASH,(... NVIC_PriorityGroupConfig(NVIC_PriorityGr... RCC_APB2PeriphClockCmd(RCC_APB2Periph_AF... ENABLE); GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disab... ENABLE);[/syntax] Przepraszam, jeśli odkopuję staroć,...
Co znaczy remap dla PB8 i PB9? Myślałem jak ustawię w Cube to pozostanie mi tylko pisanie obsługi CAN. Remap tych pinów masz już zrobiony przez CubeMX. W pliku "stm32f1xx_hal_msp.c". Tak że nie to. Przykładowe demo CAN na HAL masz w repozytorium CubeMX, co prawda dla nieco większego F103 i nie w konwencji Cube, ale podejrzyj ustawienia, może coś zobaczysz:...
Właśnie ja odpalałem go na F103. Z remapem... Może mój koszmar miał coś wspólnego z faktem remapnięcia CANa na portb...? W każdym razie pochłonęło to cenny czas, bo remapnięty wcześniej CAN nie chciał wyjść z trybu inicjalizacji. Szopki polegały na: - piny -> remap -> CANinit - wisi w while'u wyjscia z inicjalizacji - remap -> CANinit -> piny - wisi...
Witam, Kolego atom1477 z ciekawości uruchomiłem Twój projekt, z tym że zmodyfikowałem tak main-a, że najpierw wypełniam ALGO_TAB jakimiś tam danymi, a później jednorazowo kasuję sektor i te dane zapisuję do FLASH-a i u mnie działa zawsze ok, niezależnie od poziomu optymalizacji. Nie chciało mi się już robić jakiegoś porównywania danych, to co zapisuję...
Mam tylko parę doświadczeń, że peryferia są w jakiś sposób priorytetyzowane i włączenie dwóch dzielących ten sam pin i ustawienie tego pinu na alternate function zawsze skutkuje przydzieleniem tego pinu dla tego samego peryferium. Akurat timery mają możliwość konfiguracji (włączania) każdego kanału z osobna. 4\/3!!
Proponuję włączyć AFIO skoro używasz zarówno alternatywnych funkcji jak i remapowania pinów. 4\/3!!
Uwaga na newralgiczne REMAPY, PINY JTAGa i cfg portu!... Nie chcę teraz szukać po dokumentacjach, ale mogę doradzic, zeby jeszcze raz powoli i spokojnie posprawdzać: zegary peryferiow (AHBENR, APB1ENR, APB2ENR) ustawienia portu (GPIOx_CRH/CRL) piny domyslnie ustawione pod JTAGa (AFIO_MAPR) Jesli wykorzystany zostal interfejs SWD, to warto NAJPIERW wylaczyc...
Cześć, Od jakiegoś czasu borykam się z takim problemem: chciałbym odbierać po CANie ramki, wpisywać je w gotowy szablon i dalej wysyłać po USARCie na kompa w kodzie ASCII. Czegoś mi brakuje w tym kodzie i za każdą wskazówkę będę wdzięczny. Z góry dzięki:) To mój main: [syntax=c] unsigned char tx_uart[]=" ID: DL: F: T: DATA: ";//54 char ramka[55]; unsigned...
Nie. Jest jak w stm32. Uklad uart, timer czy twi można podłączyć do domyślnych lub alternatywnych pinów. I ot cały remap.
Ok, Myslałem ze liczy od ARR w dół, albo od ARR w górę do przepełnienia, a to byłoby zupełnie co innego. Uruchomiłem juz 3 timery, z czwartym mam problem bo muszę remapować TIM17 na PA7, a tego jaszcze nie robiłem. Mam coś takiego, ale nie działa: Dodano po 22 Remaping chyba jest ok, bo bez remapingu na PB9 też nie dziala, widać jest jakas róznica w...
Witam, trochę czasu spędziłem na przeglądaniu dokumentacji AFIO, GPIO ale niestety nie znalazłem niczego co mogłoby mi pomóc dlatego chciałem się zapytać Czy w STM32 jest możliwość takiego remapowania wyprowadzeń żeby np z wolnych pinów stworzyć np 8 bitową magistralę z możliwością zapisu, odczytu danej lub np takim przemapowaniu któregoś z portów żeby...
Freddie, A poradź amatorowi jak rozplanować ręcznie użycie peryferiów, bo biorąc pod uwagę jakość tego softu, to potem okaże się, że nie można zrobić takiego remapingu... Masz jakąś metodologię, żeby to szybko poszło, czy po prostu na wyczucie.... Pozdrawiam Krzysiek
Zainstaluj CubeMx. Wygeneruj sobie kod inicjalizujacy i będziesz wiedział jak to jest zrobione. Nie wiem dlaczego pb11 jest dla Ciebie złe, ale jak będziesz miał Cuba i ustawiesz peryferia to bedziesz widzał wszystkie konflikty i możliwe alternatywne konfigyracje. Tu masz dla przemapowanych: (dla AC6) (wyciągnąłem tez niektóre makra dla jasności) [syntax=c]...
Bzdury na kółkach!... ** Transceivery hi-speed bardzo dobrze chodzą na każdej prędkości CANa, poczynając od kilkudziesięciu bitów na sekunde do 1Mb/s. ** Transceivery automotive grade chodzą do 500kb/s ** Nie ma czegoś takiego jak CAN low-speed ** Transceiver nie ma wpływu na standard przesyłania ramek, tj. niezależnie od niego będzie chodzić każda...
dzięki za podpowiedź choć akurat dla STM32F107 jest to troszkę bardziej pogmatwane, konfiguracja z uwzględnieniem magistrali dla I2S wyszła tak, ale pytanie czy tak jest na prawdę pozostaje otwarte.... [syntax=c][/syntax]void RCC_traktowanie(void) { //reset ustawien do wartoci domylnych RCC_DeInit(); /*właczanie rezonatora zewnetrznego*/ RCC_HSEConfig(RCC_HSE_ON);...
Trochę to stare, ale dokumentacja podaje informację że domyślnie CAN jest na PA11 i PA12 więc trzeba zrobić remapowanie portu.
Masz "zalutowane" połączenie SB12 na płytce? HSE wyłączone? Przy remapowaniu ustawiasz "alternate mode"... nie wiem czy nie powinno zostać general i/o. Swoją drogą konfigurujesz PD0, a wcześniej pisałeś o PD1 - to nie pomyłka?
Cube dla tego procka standardowo robi partial remap ze wzgledu na i2c2. Jezeli użył plików z Cuba to ma pc10 i pc11. (zakładam że to F103RB)
Witam Może mi ktoś pomoże, bo siedzę nad tym już kilka godzin i nie mogę znaleźć rozwiązania. Otóż mam procek stm32f103ret6 na którym muszę mieć 12 wejść ADC i 12 wyjść PWM. Wymyśliłem sobie taką konfigurację: ADC - kanały 0-11, portA 0-7, PortB 0-1, PortC0-1. PWM - TIM4 Ch1-4 PortB6-9, TIM3 REMAP ch1-4 PortC6-9, i TIM2 REMAP ch3-4 PortB 10-11. Wyjście...
Sygnał REF_CLK powinien być generowany przez cały czas, gdy chcesz mieć aktywny interfejs Ethernet. Najpierw konfigurujesz układ MAC (zegary, typ interfejsu MII/RMII), następnie aktywujesz taktowanie PHY za pomocą REF_CLK. Gdy zamienisz kolejność (najpierw taktowanie PHY, później ustawiasz w STM interfejs MII/RMII) to program zawiesi się w pętli: [syntax=c]...
Ponieważ np. I2C komunikuje się z urządzeniem zewnętrznym przez piny GPIO ustawionymi jako alternatywna funkcja pinu AFIO i dlatego trzeba te bloki włączyć ..najoględniej mówiąc. Najogólniej mówiąc to AFIO służy jedynie do remapowania pinów i pierwsze słyszę, że należy je włączać dla I2C, ADC etc. Zegar należy włączyć dla GPIO i dla danego peryferium....
Mam TIM17 :] A więc problem rozwiązany. Dziwna sytuacja, bo zrobiłem full remaping linii sda scl(które jako alternatywne domyślnie są na pinach PB7 i PB6) na piny PB8 i PB9. Wyjscie negatywne Timera jest na pinie PB7 i ono działa ok. Natomiast wyjście pozytywne Tim17(przy ustawieniu alternatywnej roli tego wyjścia ) jest na pinie PB9(tym od SDA które...
Mógłby ktoś napisać obsługę tego timera ? Widzę przykłady w internecie ale bez zrozumienia. [syntax=c]//niezbędne pliki nagłówkowe #include <stddef.h> #include "stm32f10x.h" //DEFINICJE PREPROCESORA //CCMRx #define OC3M_0 (1<<4) #define OC3M_1 (1<<5) #define OC3M_2 (1<<6) #define OC4M_0 (1<<12) #define OC4M_1 (1<<13)...
/* disable SWJ debug port - comment if you are using JTAG */ GPIO_PinRemapConfig(GPIO_Remap_SWJ_D... ENABLE); czytałeś w ogóle ten kod?
AFIO->MAPR = 0x01000000; starczy, to drugie cudo podejrzewam, że odblokowuje NJTRST spowrotem. No właśnie to jest to samo. Jak się przyjrzysz to masz tam NoJTRST: [syntax=c]GPIO_PinRemapConfig(GPIO_Remap... ENABLE);[/syntax] Używałem obu i bez rezultatów...
A czy ja się upieram, że poprawną? Ale te przewidziane 'prawidłowe' też nie zawsze działają. Dajemy 'reset' a program nie uruchamia się z bootloader-a i co wtedy? A nie uruchamia się ponieważ: włączony jest remap, przeniesiona tablica wektorów, zawiera 'byle co', nieustawiona 'power domain' itp. Twardy jump na adres fizyczny w ROM bywa skuteczniejszy.
Witam. Po kilku godzinach z CAN postanowiłem napisać, może Wam przyjdzie do głowy co zmaściłem. Program jest prosty: Poprawiłem SYNTAX - staraj się proszę w kolejnych postach poprawnie go umieszczać wykorzystując pole wyboru w edytorze postów. Z auto powtarzaniem mam od razu zapchane trzy skrzynki i na każdej status CAN_TxStatus_Pending, a jak wyłączę...
Pod tymi pinami masz SPI1. Nie wiem tylko czy standardowo czy po re-mapowaniu. Kolego jesteś w błędzie. Są to piny SPI3 jeśli zrobie AF, jeżeli zrobię remap to bedzie spi1. Na SPI1 mam powieszone ethernet na enc28j60, które działa bezbłędnie. A tak jest zrobione wysyłanie. [syntax=c]static void xmit_spi (BYTE Data) // Wyslanie bajtu do SD { //u8 Temp...
Pobrałem standardowy przykład z DualCan za pomocą programu Atollic TrueStudio. CAN1 i CAN2 ma za zadanie wysyłać różne dane, ale przebiegi dla obu kreują się w ten sposób: http://obrazki.elektroda.pl/6582015600_1... Odnosząc się do tytułowego problemu HAL automatycznie remapuje piny.
Żeby przemapować w sposób jaki potrzebujesz musisz użyć full remap a nie partial. Edit: Pośpieszyłem się, te dwa kanały rzeczywiście i na tym partial i na full są przemapowane. W każdym bądź razie, kiedyś odpalałem wejście enkoderowe za pomocą SPL i wystarczyło tylko to (+wcześniej RCC od GPIO i AFIO): [syntax=c]RCC_APB1PeriphClockCmd(RCC_APB...
Witam, Próbuje uruchomić obsługę karty SD pod STM32f103ZET6. Wykorzystuje do tego bibliotekę, używaną wcześniej pod STM32f407. Zmodyfikowałem tylko inicjalizacje SPI i dorzuciłem testową funkcję zapisu do karty. Mimo to karta nie chce ruszyć. Przy próbie otwarcia jakiegokolwiek pliku dostaje: FR_NOT_READY. Próbowałem już na dwóch kartach SD, formatowałem...
AVR były na początku, najpierw Bascom tiny2313 i Mega8, z barku funduszy i sprzętu moje układy były marnej jakości, często nie działały co bardzo mnie wtedy ograniczało. Dopiero na studiach kupiłem Zl15AVR z Mega32 dzięki któremu poznałem możliwości i peryferia - choć nie wszystko jeszcze sprawdzone. XMegi opanowane mizernie głównie rodzina A4 mimo...
Witam, Mam problem z odbiorem danych na magistrali CAN. Program wysyła dane na CAN co 500ms i to działa, natomiast kiedy pojawi się ramka na RX, program przestaje już wysyłać dane i wygląda jakby zawisł. Poniżej kod. Może ktoś sprawdzić i podać przyczynę problemu? [syntax=c]#include "stm32f10x.h" #include "stm32f10x_can.h" #include "hdr_rcc.h" #include...
Poldi, przynajmniej raz w tygodniu pojawia się na Forum pytanie w stylu "co wybrać?", "jak zacząć?" albo "który jest najlepszy?" i za każdym razem temat jest rozwijany na 2 lub 3 strony. Spokojnie poczytaj i wnioski wyciągnij sam. I to nie jest tak, że ARM jest ok, a cała reszta do kosza. Jeżeli chcesz znać moje zdanie (na początek), to aktualnie najłatwiej...
Dobra, cos tam ruszyło po zmianie w SYS na SW Debug. Ale to mi nasunęło kolejne pytanie. Ponieważ ustawienie tego SW Debug powoduje wywołanie funkcji [syntax=c] /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled */ __HAL_AFIO_REMAP_SWJ_NOJTAG();[/syntax] Która wpisuje do rejestrów AFIO->MAPR 0b010 w [26:24] Jeśłi nie ustawię SW Debug to do tych rejestrów...
Witam. Od niedawna staram się zapoznać z uC STM32 i chciałbym skorzystać z pinów PD0,PD1 uC stm32f100. Mój kod wygląda następująco: [syntax=c] GPIO_PinRemapConfig(GPIO_Remap_PD01, ENABLE); GPIO_InitTypeDef GPIO_InitStruct; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GP... ENABLE); GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0; GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN_FLOATING;...
kabel remap remap zerować procedura remap
wymiana akumulatora centrala manta ładowanie głośnika corsa świece
interfejs delphi stabilizator obrotów
Facebook – jak sprawdzić czas spędzony w aplikacji i na stronie? iOS, Android, Windows, macOS Lokalizacja przekaźnika świec żarowych Volvo C30 2007 2.0 HDI