Eposas Napisano Luty 16, 2021 Udostępnij Napisano Luty 16, 2021 Znalazłem bibliotekę właśnie tą https://github.com/mberntsen/STM32-Libraries/blob/master/ST7565/src/ST7565.c i mam tam dwie funkcje inline void ST7565_spiwrite(uint8_t c) { //shiftOut(sid, sclk, MSBFIRST, c); while (SPI_GetFlagStatus(SPI2, SPI_FLAG_TXE) == RESET); SPI_SendData(SPI2, c); } Używam biblioteki HAL i tych funkcji tam nie ma i nie wiem jak rozwiązać ten problem. Kiedyś ten temat już był jednak bez odpowiedzi Cytuj Link do komentarza Share on other sites More sharing options...
Eposas Luty 16, 2021 Autor tematu Udostępnij Luty 16, 2021 Istnieje tez forma kupna gotowego rozwiązania czyli zaimplementowania biblioteki na procku Cytuj Link do komentarza Share on other sites More sharing options...
H1M4W4R1 Luty 16, 2021 Udostępnij Luty 16, 2021 (edytowany) Praktycznie wszystkie odpowiedzi znajdziesz w TYM wątku 🙂 A wersja alternatywna: potrzebujesz bibliotek StdPeriph, a nie HAL (projekt nie bazuje na HAL tylko StdPeriph, stąd brak tych funkcji w HAL). EDIT: (Wersja HAL, pisana na sucho) inline void ST7565_spiwrite(uint8_t c) { uint8_t buffer[1]; // Tak można zainicjować tablicę w tym miejscu, ale osobiście preferuję to rozdzielać :) buffer[0] = c; while(HAL_SPI_GetState(&spi) == HAL_SPI_STATE_RESET) // Jak będzie wysyłać kilka transakcji zamiast jednej usunąć tę linijkę HAL_SPI_Transmit(&spi, buffer, 1, HAL_MAX_DELAY); // Podmień &spi na swoją referencję do SPI ;) // Pisane na sucho, mogą być błędy } Edytowano Luty 16, 2021 przez H1M4W4R1 1 Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!