Skocz do zawartości

ethanak

Użytkownicy
  • Zawartość

    4356
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    196

ethanak zajął 1. miejsce w rankingu.
Data osiągnięcia: 19 września.

Treści użytkownika ethanak zdobyły tego dnia najwięcej polubień!

Reputacja

2288 Mistrz

4 obserwujących

O ethanak

  • Ranga
    8/10
  • Urodziny 05.02.1960

Informacje

  • Płeć
    Mężczyzna
  • Programuję w
    C, Python, C++

Ostatnio na profilu byli

3997 wyświetleń profilu
  1. Ech... właśnie się okazało, że syntezator i kompresja plików nie mogą działać razem - ESP nie może uruchomić tasku kompresora. Spróbowałem poszukać winnych - niestety, WiFi i AsyncWebServer na spółkę robią niezłą sieczkę w RAM-ie. No cóż, w czasie kompresowania pliku raczej nie muszę wysłuchiwać żadnych radosnych komunikatów
  2. Odpowiem nie wprost Swego czasu autorzy espeaka-ng (nie mylić z oryginalnym programem Duddingtona) założyli, że maksymalna prędkość będzie wynosiła (o ile pamiętam) 400 wpm (słów na minutę). Od razu pojawiły się protesty niewidomych, że smędzi, że za wolny, aż w końcu po długich dyskusjach z autorami (którzy byli bardzo pewni swoich racji i argumenty niespecjalnie docierały) ktoś wreszcie napisał patcha, pozwalającego zwiększyć prędkość do 700 wpm (co uznano za wystarczające). A weź pod uwagę to, że normalna prędkość to 150 do 200 wpm... Prędkość jest sprawą względną i najleps
  3. Spokojnie, to nie gryzie. ls /dev/tty* pokazuje wszystkie urządzenia których nazwy rozpoczynają się od tty. Jako że wszelakie porty serial mają nazwy typu "ttyS1" i tak dalej pokaże wszystkie urządzenia serial (no, nie tylko, ale nas interesują tylko USB i ACM) lsusb pokazuje co tam mamy podpiętego do usb. Na przykład moja płytka WROVER z konwerterem FTDI przedstawia się jako: Bus 003 Device 055: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
  4. ethanak

    Wielozadaniowość w C

    Można i tak, ale lepszym rozwiązaniem jest zastosowanie odpowiedniego serwa, np. takiego - wtedy przy starcie procek wie w jakiej pozycji naprawdę stoi serwo, a nie polega na wartości z EEPROM-u (która czasami może nie mieć nic wspólnego z rzeczywistą pozycją).
  5. ethanak

    Wielozadaniowość w C

    Aj, uderz w stół, a nożyce Cię opieprzą Ja też wolę pasta con cośtam:) @farmaceutaOczywista oczywistość. Tyle że atmega potrzebuje jakiegoś tam timera czy przerwania, a w takim np. Pico masz do dyspozycji licznik mikrosekund. Atmegi są fajne, attiny też (mam w domu parę urządzeń opartych właśnie na attiny13), ale to już dzisiaj jest historia. Można umieć, nawrt trzeba umieć, ale nigdy nie wolno polecać protez. Jak ktoś chce programować attiny to zaprogramuje. Jak będzie chciał coś innego to też. Ale nie traktuj swoich (całkiem zresztą sensownych) wywodów jako jedyne możliwe rozwiązania.
  6. ethanak

    Wielozadaniowość w C

    @_LM_ pewnie że korzysta. Na atmegach. Na ESP czy STM (mówię tu o frameworku Arduino) nie musi...
  7. ethanak

    Wielozadaniowość w C

    Oczywiście że można. Nie trzeba Timers, czy ukochanych przez jednego z interlokutorów tablic funkcji. Pamiętaj: obowiązuje zasada KISS. Jak się da coś zrobić prosto to nie trzeba komplikować. Tyle. Jak masz zrobić sobie kanapkę z kiełbasą to bierzesz chleb, masło, kiełbasę i nóż - nie musisz mieć super biblioteki przepisów.
  8. ethanak

    Wielozadaniowość w C

    A czemu bidusia? Co, ifa Ci ukradli czy co? Do migania diodą też stosujesz bibliotekę SetLed czy zwykły digitalWrite (czy setBit(PORTx, n))?
  9. ethanak

    Wielozadaniowość w C

    @_LM_ sprawdź co znaszy delay na atmegach, a czym jest ten sam delay w freeRTOS-ie.
  10. ethanak

    Wielozadaniowość w C

    Pisałem coś o implementowaniu wielowątkowości na atmegach? Da się, prawda? Uruchomienie pięciu diod na atmedze nie wymaga krzesania iskier czy używania SuperZajefajnejBibliotekiDoMiganiaDiodami. Rozumiem że zrobiłeś to na Timers? To teraz spróbuj bez tego.
  11. ethanak

    Wielozadaniowość w C

    Ja tak się zastanawiam... mówicie o wielozadaniowości w C, czy może o zmuszeniu atmegi do wykonywania kolejno wykonywania jakiejś funkcji kiedy akurat przyjdzie ba nią czas? C czy C++ nie wie nic o wielozadaniowości (czyli równoległym wykonywaniu niezależnych procesów) czy wielowątkowości (czyli w miarę równoległym wykonywaniu fragmmentów tego samego programu). Jedyny znany mi język który wspierał wielowątkowość to był Algol69 - a o ile wiem nie powstał nigdy pełny kompilator tego języka. Biblioteki typu Timers pozwalają na wykonanie jakiejś funkcji kiedy przyjdzie na nią czas. Probl
  12. Ściągnij najlepiej xubuntu 20.04 i wrzuć na pędraka. Odpal kompa z pendraka, otwórz terminal i wydaj polecenie przykładowo ls /dev/tty* Arduino oryginalne zgłosi się jako /dev/ttyACM0 Klon może zgłosić się jako /dev/ttyUSB0 Jeśli się nie zgłosi, to albo kabel jest do wyrzucenia, albo Arduino. Jeśli to będzie ACM, to Windows go powinien zobaczyć. Jeśli USB, potrzebny będzie sterownik CH340 Również polecenie lsusb (ew. sudo lsusb) powinno pokazać, co tam naprawdę jest podłączone. A Linux na pędraku zawsze się może przydać do sprawdzania, czego ten Wind
  13. Pytanie: masz dostęp do jakiegoś Linuxa (może być live na pendraku)? Jeśli tak, to pokaż wynik sudo lsusb Jeśli nie to ściągnij jakiegoś xubuntu czy debiana i wtedy sprawdź. Wyeliminujesz problemy z kablami i sterownikami.
  14. Ktoś tu kiedyś powiedział, że pisanie workloga jest pomocne nie tylko dla czytelników, ale również dla samego piszącego. Pisząc tę część musiałem zrobić parę poprawek w kodzie, który przed tymi poprawkami co prawda działał, ale nie nadawał się do pokazania Ale do rzeczy. Ponieważ zrezygowałem z karty microSD naturalne wydało mi się przechowywanie książek w postaci skompresowanej. Po przeanalizowaniu kilku bibliotek okazało się, że albo są jakieś wielgaśne (przy czym większość funkcji pozostałaby nieużywana), albo zbyt uproszczone. Okazało się jednak, że jakieś funkcje kompresji zna
  15. Ekhm... co ma wspólnego bycie sercem z wykorzystaniem kilku sprzętowych uartów? Mają sobie spać? BTW diody mają wiele zastosowań, ale demultiplexing urządzeń podłączonych do jednego uarta do nich nie należy.
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.