Witam,
Tym razem bardzo nietypowo - wpadłem bowiem na pomysł ciekawego konkursu, który mógłbym dla Was zorganizować, ale tym postem chciałbym pierwej sprawdzić czy pojawią się jacyś rycerze, chętni do udziału w zawodach. Uwaga! zwycięzców w konkursie może być maksymalnie DZIEWIĘĆ osób! Pewnie pojawia się pytanie - co czeka śmiałków, który okażą się zwycięzcami ? ... Otóż spośród nadesłanych prac (jakich? .. o tym za chwilę) ... zostanie wylosowanych 9 osób ale po 3 każdej z 3 kategorii ;) żeby nie było za łatwo. Naprzód zdradzę cóż każdy ze śmiałków stających w szranki wygrać może:
Jak widać, będzie to najbardziej "naszprycowana" PALZMIDAMI i najnowsza wersja atnelańskiego programatora ATB-USBasp ver 4.2 ;) ... a do tego pełen WOREK komponentów zwany "ATNEL USB PACK" pod Delphi. Krótko mówiąc aż DZIEWIĘĆ programatorów do wygrania zupełnie za FREE ;) ... oczywiście do każdego programatora także pełna licencja na MkAvrCalculator.
No dobrze na czym miałby polegać konkurs i jakie to TRZY kategorie ? ;) ....
ZAŁOŻENIA KONKURSU:
1. Udostępnię dane do funkcji bibliotecznych LibUSB.DLL,
2. Podam przykłady w oparciu o które zrealizowałem dostęp do pamięci EEPROM czy GLCD
3. Będę oczekiwał kodu z implementacją DOWOLNEJ komunikacji czy to po I2C czy po SPI przy użyciu udostępnionych komend interfejsu API programatora.
4. Spośród nadesłanych prac wylosowane zostaną po TRZY które zadziałają u mnie na komputrze, oczekuję przede wszystkim plików wykonywalnych aby szybko przetestować ale także kodów źródłowych z implementacją.
5. Oczekiwane kategorie:
2. Podam przykłady w oparciu o które zrealizowałem dostęp do pamięci EEPROM czy GLCD
3. Będę oczekiwał kodu z implementacją DOWOLNEJ komunikacji czy to po I2C czy po SPI przy użyciu udostępnionych komend interfejsu API programatora.
4. Spośród nadesłanych prac wylosowane zostaną po TRZY które zadziałają u mnie na komputrze, oczekuję przede wszystkim plików wykonywalnych aby szybko przetestować ale także kodów źródłowych z implementacją.
5. Oczekiwane kategorie:
a.) Przykład w C++
b.) Przykład w C# (C Sharp)
c.) Przykład w Java (o ile się da - bo tego nawet nie wiem) ... ale UWAGA! może być to aplikacja niekoniecznie w Java ale coś pod Linuxa, albo w Pythonie czy w dowolnym innym języku.
c.) Przykład w Java (o ile się da - bo tego nawet nie wiem) ... ale UWAGA! może być to aplikacja niekoniecznie w Java ale coś pod Linuxa, albo w Pythonie czy w dowolnym innym języku.
KOD będzie trzeba napisać niejako "na sucho" jeśli się nie posiada programatora w tej wersji - i to jest główne zadanie ;)
... i tak się zastanawiam.... czy założenia są zrozumiałe, i ile osób zgłosi tu na blogu pod tym postem chęć udziału w konkursie ... tylko tu w tym miejscu zliczam chętne osoby ;)
Oczywiście jeśli nie zbierze się odpowiednia ilość chętnych ... no to trudno - okaże się, że były to tylko zapowiedzi.
Oczywiście jeśli nie zbierze się odpowiednia ilość chętnych ... no to trudno - okaże się, że były to tylko zapowiedzi.
A można tak z Polskiego na nasze? :D Mam takie zaległości w poradnikach, że mam wrażenie jakbyś do mnie mówił w jakimś nowym języku... PLAZMIDAICZNYM chyba :D Trzymam kciuki za innych, ja idę migać diodą :D.
OdpowiedzUsuńTo może na początek odpowiem pytaniem na pytanie - zanim udzielę bardziej szczegółowych podpowiedzi:
Usuń1. czy władasz dobrze jednym z wymienionych języków C#, C++, Java, Python czy czymś na Linuxie ?
2. czy wiesz w ogóle co to znaczy API ? ... bo jeśli nie to rzeczywiście może być konkurs na razie nie dla ciebie ...
ale jeśli tylko czegoś drobnego nie rozumiesz to dopytaj, chętnie odpowiem
Na razie, dzięki Tobie, radzę sobie w C. Natomiast jeśli chodzi o inne znane mi języki programowania to bardziej związane z www (html, css, php, javascript itp.). Dlatego dziękuję za chęć podpowiadania, ale ja na razie nic z tych rzeczy nie rozumiem :D. Liczę na innych i życzę im sukcesów, a Tobie, powodzenia, by konkurs wypalił :D
UsuńNo tak w html, css, php i java script - to za chiny nie da rady z tym API podziałać - niestety - masz rację.
UsuńJavaScript - NodeJS, próbuj kolego z dll.
UsuńCzy ja dobrze rozumiem , że to ma być appka na PC np W C# obsługująca LibUSB.DLL aby komunikować się z programatorem i korzystać z jego API do obsługi EEPROM czy GLCD, tak by to miało być ?
OdpowiedzUsuńTak ale nie musi być to zaraz odczyt całej pamięci ;) wystarczy, że chociaż jedna komórka na żądanie będzie odczytywana - nawet bez zapisu do pamięci ... chodzi o to żeby pokazać, że w innych językach niż Delphi też się da ;)
UsuńW taki razie jak będę miał czas to spróbuje w C# wpf (graficzny interfejs).
UsuńZ chęcią wezmę udział, spróbuję się. Jednak byłbym za tym, aby termin nadesłania prac był no taki, dłuższy, ponieważ (nie tylko ja) w obecnym okresie nie ma czasu, a takie rzeczy może robić tylko wieczorami. (które czasami jakimś dziwnym trafem kończą się nad ranem)
OdpowiedzUsuńTo jest na razie tylko zapowiedź konkursu więc spokojnie ;) a termin też będzie mam nadzieję odpowiedni - to nie będzie konkurs na weekend ale może na miesiąc.
UsuńJeśli chodzi o Jave i Linuxa to z chęcią spróbuję. Dodatkowo mogę stworzyć GUI w JavaFX :)
OdpowiedzUsuńno ciekawe ;) ale takie rzeczy na linuxa to będę musiał dać innym do zweryfikowania bo sam nie mam pojęcia o linuxie - nie mniej jednak bardzo ciekawy pomysł ;)
UsuńKolega wyżej podsunął jeszcze lepszy pomysł, a mianowicie stworzenie pakietu w JS (node.js) a następnie można byłoby go wrzucić na npmjs.com i wtedy każdy mógłby w prosty sposób tworzyć web aplikacje bazując na tym API, bo rozumiem że taki rodzaj aplikacji też może brać udział w konkursie? :)
UsuńJa (sorki) kompletnie nie znam się na tym node.js ... i nie za bardzo mogę sobie nawet wyobrazić jak web aplikacja będzie działała z takim modułem elektronicznym (programatorem) ... ale mówię nie znam się na tym, więc może napiszesz dwa zdania bliżej jak ty to widzisz? Bo pomysł być może jest bardzo dobry ... i jeśli rzeczywiście tak się da współpracować z ATB-USBasp 4.2 - to jak najbardziej będzie mogła taka aplikacja brać udział w konkursie - zdecydowanie tak ;)
UsuńNode.js umożliwia uruchamianie kodu JS lokalnie na komputerze, co oznacza że mamy dostęp do plików systemowych, procesów itp., więc myślę że z pewnością można to zaimplementować. Tym bardziej, że obecnie dostępne są biblioteki I2C oraz SPI dla raspberry pi napisane właśnie w JS. Napisanie takiej aplikacji dla windowsa to nie będzie większy problem, gorzej z Linuxem bo nie wiem dokładnie jak ten programator komunikuje się z komputerem itp., ale na pewno można to wszystko ogarnąć i przepisać .dll na .so :)
Usuńaaa to o to chodzi ;) no bardzo ciekawy pomysł - jeśli zaś chodzi o programator to panie kochany USBasp powstało na linuxie ;) więc jakby miał nie działać w linuxie ;) to jest można powiedzieć jego natywne środowisko
UsuńW takim razie czekam na dalsze informację :)
UsuńJak czas i wena pozwoli, to jeden zabłąkany rycerz do walki z wiAPIkami stawi się na polu walki :)
OdpowiedzUsuń--
Pozdrawiam,
Robert
O proszę i kolejny rycerz ;)
UsuńZ windzianym .dll nie ma mowy o programie na linuksa.
OdpowiedzUsuńA co to ? nie ma dll'a czy jakiejś tam obsługi USBasp na linuxie ? ;) nie żartuj ... nie żartuj
UsuńPoza tym można to zrobić na każdy inny sposób niekoniecznie z tym DLL'em byleby móc zrobić DWIE PODSTAWOWE operacje (troszkę już zdradzę)
1. sprawdzić czy na magistrali USB jest urządzenie z numerem VID i PID odpowiednim dla USBASP
2. móc wysyłać do urządzenia krótkie wiadomości w postaci tzw "CONTROL MESSAGE"
... no może jeszcze trzeci punkt
3. umieć wysyłać i odbierać ciurkiem większe paczki bajtów
Skąd u Ciebie zainteresowanie mikrokontrolerami? Jak zaczęła się ta przygoda?
OdpowiedzUsuńoooj zaczęło to się już w czasach gdy byłem w liceum ;) ... czyli wiele wiele lat temu. Tyle że wtedy nie było takich frykasów jak dzisiaj czyli pamięci FLASH, języków C itp ... Wtedy były biedne gołe procki bez żadnego flasha - trzeba było brać EPROMY kasowane ultrafioletem albo robić sobie ich emulator na kostce RAM podłączany do LPT ;) .... a język był JEDEN czyli tylko asembler i co gorsza nie było internetu! strzępy wiedzy trzeba było wyrywać skąd się tylko dało.
Usuń