Znaleziono 7 wyników
Wróć do „STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami”
- 28 cze 2013, 09:51
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729
- 14 lis 2012, 10:59
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729
UWAGA - Ostrzeżenie dla wszystkich korzystających z CoIDE
W bibliotekach ściąganych przez CoIDE jest bug - funkcja SystemInit jest napisana (i poprawna), ale nie jest wywoływana w ResetHandler!!! W związku z tym procesor działa bez ustawionego mnożnika (w moim przypadku 20x wolniej niż powinien). Nie robiłem żadnych intensywnych obliczeń i zorientowałem się dopiero ostatnio, że coś jest grubo nie tak.
Wywołanie SystemInit powinno być gdzieś na początku ResetHandler. Test na włączenie mnożnika jest prosty:
Wywołanie Delay(n) na procesorze taktowanym n Hz trwa 1.5..2 s.
W bibliotekach ściąganych przez CoIDE jest bug - funkcja SystemInit jest napisana (i poprawna), ale nie jest wywoływana w ResetHandler!!! W związku z tym procesor działa bez ustawionego mnożnika (w moim przypadku 20x wolniej niż powinien). Nie robiłem żadnych intensywnych obliczeń i zorientowałem się dopiero ostatnio, że coś jest grubo nie tak.
Wywołanie SystemInit powinno być gdzieś na początku ResetHandler. Test na włączenie mnożnika jest prosty:
Kod: Zaznacz cały
inline void Delay(volatile int count) { while (count--); }
- 17 paź 2012, 15:17
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729
Timer podpięty pod wyjścia jest w którejś demonstracji. Mnie interesuje timer podpięty pod przerwanie.
Zamierzam zrobić tak, że w głównej pętli programu będzie hulał PID (jakiś timer będzie mi odmierzał czas między przebiegami pętli, co zostanie uwzględnione w obliczeniach). Natomiast obliczanie aktualnej pozycji (interpolacja ruchu) będzie się odbywać na jakimś przerwaniu zegarowym, z częstotliwością na poziomie 10 kHz.
Jeżeli się da, to jeszcze chętnie bym przerzucił USART na DMA - bo na przerwaniu to trochę słabo będzie obsługiwać 1Mbps.
Zamierzam zrobić tak, że w głównej pętli programu będzie hulał PID (jakiś timer będzie mi odmierzał czas między przebiegami pętli, co zostanie uwzględnione w obliczeniach). Natomiast obliczanie aktualnej pozycji (interpolacja ruchu) będzie się odbywać na jakimś przerwaniu zegarowym, z częstotliwością na poziomie 10 kHz.
Jeżeli się da, to jeszcze chętnie bym przerzucił USART na DMA - bo na przerwaniu to trochę słabo będzie obsługiwać 1Mbps.
- 17 paź 2012, 11:38
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729
- 15 paź 2012, 11:58
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729
Nie widzę tu jeszcze ustawienia prędkości GPIO - w CMSIS ustawia się prędkość GPIO od 2MHz do 50MHz.... Pewnie jest po prostu ustawione 50 na sztywno.
Mnie niestety libopencm3 nie udało się odpalić, bo Makefile intensywnie używa basha - a pod winxp siłą rzeczy mu to nie wychodzi
. Muszę przerobić tego makefila, ale na razie utknąłem na hardwarowych problemach ze sterownikiem silnika, więc STM32 czeka na lepsze czasy.
Mnie niestety libopencm3 nie udało się odpalić, bo Makefile intensywnie używa basha - a pod winxp siłą rzeczy mu to nie wychodzi

- 15 paź 2012, 11:05
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729
- 15 paź 2012, 10:42
- Forum: Elektronika CNC
- Temat: STM32F4DISCOVERY i COOCOX pierwsze kroki miganie ledami
- Odpowiedzi: 33
- Odsłony: 6729