niedziela, 29 stycznia 2017

[11] STM32F7 - Discovery - STemWin, Polska Czcionka

Ten post chciałbym poświęcić na opisanie generacji polskiej czcionki w bibliotece STemWin bardzo szybkim sposobem, bez konieczności zastosowania TTF. 

Na samym początku należy pobrać oprogramowanie FontCvtST. Można je znaleźć w paczce z wszystkimi sterownikami dla tego modelu dicovery. Są one do pobrania ze strony ST (link). 

Program wspomniany wcześniej znajduje się w lokalizacji:

en.stm32cubef7\STM32Cube_FW_F7_V1.5.0\Middlewares\ST\STemWin\Software

czwartek, 26 stycznia 2017

[10] STM32F7 - ADC

Ten dosyć krótki post chciałbym poświęcić na krótki opis sposobu inicjalizacji oraz przygotowania ADC do zbierania pomiarów z linii.

Na dostępne wyjścia układu wyprowadzono piny ADC o numerach:
  • PA0 - ADC kanał 0
  • PF10 - ADC kanał 1
  • PF9 - ADC kanał 2
  • PF8 - ADC kanał 3
  • PF7 - ADC kanał 4
  • PF6 - ADC kanał 5

poniedziałek, 23 stycznia 2017

[9] STM32F7 - Generacja PWM

Ten post chciałbym poświęcić na opis sposobu generacji sygnału PWM za pomocą układu STM32F746, który zamontowano na płytce Discovery.

Poniżej przejdę przez wszystkie niezbędne funkcje do jego wykonania dla włączenie TIM 2 oraz 3. 

PWM kanał 1 z TIM3 generowany jest na PB4. 
PWM kanał 1 z TIM2 generowany jest na PA15.

piątek, 20 stycznia 2017

[8,0] STM32F7 - LWIP, FreeRtos, Echo Serwer

W tym poście chciałbym przedstawić sposób konfiguracji oraz połączenia mikrokontrolera STM32F7 w konfiguracji echo serwer z komputerem.

Biblioteka LWIP (ang. lightweight IP)[1]:


Jest to biblioteka dzięki krórej w dosyć łatwy sposób można wykonać różne sposoby komunikacji sieciowej. Zawarto w niej protokoły IP, TCP, UDP, ICMP, ARP. W jej skład dodatkowo wchodzą takie moduły jak DHCP, DNS, AutoIP, SNMP, IGMP, SLIP, PPO. 

Jeśli chodzi o jej zaprogramowanie to do dyspozycji są trzy sposoby. Pierwszy z nich jest to interfejs surowy bez systemu operacyjnego, czyli podstawowy interfejs biblioteki. Drugi dotyczy jest to tzw interfejs sekwencyjny, który jest obsługiwane w trybie otwórz - czytaj - pisz - zamknij. Powoduje on, że wywołania tego systemu są blokujące, wobec czego musi on działać w wątkach. Dlatego często wykorzystuje się system operacyjny tzn. FreeRtos. Te dwa sposoby są właściwie najczęściej spotykane. Trzeci i ostatni z nich dotyczy interfejsu gniazd, czyli obudowywany jest interfejs sekwencyjny, który ma być zgodny z interfejsem gniazd stosownym w normalnych komputerach.

środa, 18 stycznia 2017

[10] STM32F4 - CubeMx - USB HID Mysz oraz Klawiatura

Tym razem chciałbym opisać w jaki sposób wygenerować i dostosować projekt w programie CubeMx tak aby była możliwość obsługi urządzenia zarówno jako myszy jak i klawiatury jednocześnie. Ten post jest rozszerzeniem wcześniejszego dotyczącego HID'a na wcześniejszych wersjach bibliotek.

Za pomocą tej klasy urządzenie można przygotować do pracy jako kontroler do gier, klawiatura, myszka, wirtualny port com bądź urządzenie dostosowywane (custom), które po przygotowaniu programu na komputerze będzie przesyłać i odbierać odpowiednie komendy. Taki program może być napisany np. w takich językach jak C#, C++ czy Delphi.

Dzięki temu, że wykorzystywana jest klasa HID, to urządzenie jest wykrywane po podłączeniu do komputera. Pozwala to w bardzo łatwy sposób rozpocząć pracę z podanym urządzeniem.

poniedziałek, 16 stycznia 2017

[7] STM32F7 - Watchdog

Ten post chciałbym poświęcić na opisanie niezależnego watchdoga (ang. Independent Watchdog) mikrokontrolera STM32F7.

Jest on taktowany zegarem LSI RC o częstotliwości 32 kHz.

czwartek, 12 stycznia 2017

[9] STM32F4 - CubeMx - Wyświetlacz HD44780 z konwerterem I2C PCF8574

Ten post chciałbym poświęcić na opisanie kontrolera I2C, za pomocą którego można poprzez tą magistralę sterować wyświetlaczem ze sterownikiem HD44780.

Opis konwertera:


Konwerter komunikuje się poprzez magistralę I2C. Na płytce z układem zawarto dodatkowo potencjometr do regulacji kontrastu oraz zworkę pozwalającą na wyłączenie podświetlenia.

Wyprowadzenia z układu są takie same: