niedziela, 26 lutego 2017

[12] STM32F4 - CubeMx - USB podłączenie pendriva

Ten post dotyczy obsługi pendriva za pomocą mikrokontrolera STM32F4 zamontowanego na płytce Discovery. Przygotowany program będzie tworzył na pendrivie plik tekstowy, do którego wprowadzone zostaną dane.

Aby tego dokonać należy jeszcze zakupić kabel USB OTG, który z jednej strony ma złącze microUSB, które można podłączyć do płytki Discovery, z drugiej natomiast jest wyposażone w złącze USB żeńskie do którego zostaje podłączony pendrive.

Poniżej przykładowy link do sklepu z takim kablem. Jest on w każdym sklepie z takimi akcesoriami w różnych wariantach cenowych, jakościowych jak i o różnym wyglądzie (w postaci kabla, bądź jednolitej wtyczki).

adapter Unitek Y-C438
Zdjęcie pobrane ze strony: www.euro.com.pl

[11] STM32F4 - CubeMx - USB VCP

W tym poście chciałbym przedstawić sposób wykonania Virtual Com Port z wykorzystanie układu Discovery.

[Źródło: http://www.st.com/en/evaluation-tools/stm32f4discovery.html]

piątek, 24 lutego 2017

[6] Atmega328p - USART

Ten post poświęcę na opisanie sposobu komunikacja za pośrednictwem USART-u w mikrokontrolerze ATmega328p. Zostaną przedstawione zarówno funkcje wysyłające jak i odbierające dane. Po drobnych przeróbkach powinna ona działać z większość procesorów z tej rodziny.

wtorek, 14 lutego 2017

C - Poprawne wykorzystywanie funkcji sizeof

W tym poście chciałbym krótko opisać poprawny sposób wykorzystywanie operatora sizeof w kontakcie z tablicami.

Funkcja sizeof określa wielkość danego argumentu, który jest prezentowany w bajtach. Wartość zwracana jest stała, może ona zostać przygotowana przez program na etapie kompilacji. 

piątek, 10 lutego 2017

[5] Atmega328p - Watchdog

Ten post chciałbym poświęcić na przedstawienie konfiguracji Watchdoga w mikrokontrolerze ATmega328p.

Watchdog taktowany jest oddzielnym zegarem 128kHz. Pozwala na generowanie przerwań czy reset mikrokontrolera. 

Rejestry konfiguracyjne zostały opisane w dokumentacji na stronie 54. 


 W rejestrze konfiguracyjnym można ustawić takie parametry jak:

poniedziałek, 6 lutego 2017

C - Wskaźniki - Jednowymiarowe tablice wskaźników

Ten bardzo krótki post chciałbym poświęcić na przedstawienie przykładu deklaracji tablicy wskaźników.

Poniższy przykład wykona dwie tablice wskaźników typu int, do każdego z tych elementów zostanie alokowana pamięć z zastosowanie adresowania pośredniego drugiego poziomu.

niedziela, 5 lutego 2017

[IV] STM32F4 - Projekt - HC-SR04, DS18B20, USART, RTC

Ten post chciałbym poświęcić na projekt realizujący pomiar odległości czujnikiem HC-SR04, wyposażony w dwa czujniki temperatury DS18B20, które pozwolą na dostosowanie wyników pomiarów do warunków zewnętrznych, komunikację poprzez USART z komputerem.

Dodatkowe funkcje jakie chciałbym wprowadzić to pomiar wielkości pomieszczenia czy pudła, wraz z mierzeniem jej zawartości.

Elementy oraz podłączenie:


  • HC-SR04 domyślnie PD0;
  • DS18B20 domyślnie PB8. Można go dowolnie modyfikować ponieważ procedura obsługi transmisji OneWire została oparta o funkcje opóźniające.
  • Konwerter USART USB - RX PC10; TX PC11;
  • Wyświetlacz Nokia5110 DC - GPIOC_14 | CE - GPIOC_13 | RST - GPIOC_15 | DIN - GPIOC_3 | CLK - GPIOB_10 ;

Programowanie:


Do projektu należy skonfigurować takie elementy jak:

Czujnik odległości HC-SR04, który działa na dwóch timerach generujących odpowiednie czasy oraz zliczający czas wystąpienia stanu wysokiego na pinie Echo. Jest on następnie zamieniany na czas, który zostaje przeliczony na odległość układu od przeszkody.