Widzę, że na forum super pomocni i wnikliwi ludzie są :-) Nie tylko przejrzą schematy i kod, ale też zrobią profesjonalny profil psychologiczny na podstawie kodu źródłoweg ;-)
Jarecki napisał(a):
Albo Kolega bardzo lubi porządek albo jest skromny i wcale amatorem nie jest[...]
To trochę z lenistwa chyba mojego pochodzi. Zakładam, że mogę ten projekt odłożyć w którymś momencie na półkę, a potem wrócić do niego za parę tygodni, miesięcy, a może lat. Wtedy z czytelniejszym kodem będzie mi łatwiej. Poza tym udostępniając coś w Open Source, trochę byłoby wstyd nie przejrzeć go i nie "wyładnić", i tak już mam parę pomysłów na to co zrobić lepiej... ale z drugiej strony czasem trzeba uznać, że pewne rzeczy są już "wystarczająco dobre" :-)
Zealota napisał(a):
Wg mnie, ale mogę się mylić bo śpecem nie jestem, że Autor to chyba pisze ogólnie w C++, a teraz tak dla odchamienia wziął się za AVR i C
To "odchamienie", to chyba to słowo, którego mi brakowało ;-) Potrzebowałem trochę odskoczni od tego co robiłem na codzień :-D
Co do programowania mikrokontrolerów, to mimo kierunkowego wykształcenia, ostatni raz to robiłem na uczelni jako student... ale nie wiem, czy się to liczy bo to, jakby nie patrzyć, w poprzednim tysiącleciu było ;-) A płytkę drukowaną ostatnio przygotowałem sobie, o ile dobrze pamiętam, jeszcze w szkole podstawowej używając do tego lakieru do paznokci mamy... w czasach, kiedy ten kraj w którym żyjemy, trochę inaczej się nazywał jeszcze. Bbiorąc do tego pod uwagę, że na razie mam tylko lutownicę z lidla, to chyba na razie pozostanę przy nazywaniu się amatorem ... przynajmniej w kwestii elektroniki :-)
Fakt jest taki, że w dzisiejszych czasach technologia ta jest dużo bardziej dostępna. Jest Internet, można noty ściągnąć sobie w parę minut. Jest mnóstwo poradników. Same procki, programatory, analizatory stanów logicznych mogą kosztować praktycznie "grosze". Kiedyś tego wszystkiego nie było, albo było bardzo trudno dostępne. Jeszcze parę tygodni temu nawet nie wiedziałem o istnieniu procków AVR, ale fakt jest taki, że jak to zauważył kolega @Zealota i @Jarecki trochę jakiegoś doświadczenia w programowaniu by się uzbierało. Głównie C++ i Java, tyle tylko, że na tzw. desktopy i ew. do aplikacji sieciowych.
Niestety powoduje to pewnie trochę niepotrzebnych naleciałości. Rzeczy, które wydają się być oczywiste (np. gettery i settery) lub pisanie czegoś w taki sposób, żeby to było czytelniejsze (np. użycie sprintf), sprawia tutaj, że nagle kod się dość mocno i niepotrzebnie rozdmuchuje. No ale zakładam, ze nie święci garnki lepią, więc powoli może do czegość dojdę :-)
Zealota napisał(a):
moscow napisał(a):
Projekt powinien dać się otworzyć w Atmel Studio7 oraz Eclipse Photon (PS. Nad wersją Eclipse jeszcze jest trochę pracy. W porównaniu z AS7 - program po kompilacji zajmuje więcej niż jest pamięci w procesorze)
Zaglądnij zatem tutaj:
http:/ /mirekk36.blogspot.com/2019/05/eclipse-szybka-konfiguracja-najnowsze.html
w punkcie nr 7 masz informacje jak optymalnie skonfigurować opcje kompilacji i linkowania w Eclipse, tak by otrzymać optymalną zajętość FLASH.
Dzięki za hint, nie trafiłem wcześniej na ten artykuł. Niestety ta sztuczka nie pomogła. Kombinowałem w tą stronę na własną rękę patrząc jakie flagi gcc ustawia Atmel Studio i próbując je przenosić do Eclipse... udało mi się zejść ze zużyciem... ale ciągle jest to więcej niż na AS7 i w tej chwili brakuje 272 bajtów :-)
Jak się wyłączy jakąś funkcjonalność np. TWI za pomocą odpowiedniego #define w pliku config.h
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
To już zaczyna to banglać. Nie mam jeszcze skończonej tej części, wiec jak ktośby chciał eksperymentować z kodem takim jak jest w tej chwili, to można to spokojnie wyłączyć.
Zealota napisał(a):
Na nóżce Aref dobrze jest dać kondensator zgodnie z tym:
http:/ /mirekk36.blogspot.com/2012/04/mikrokontroler-prawidowe-zasilanie.html
nawet, gdy nie korzystasz z przetwornika AC, będzie to dobry nawyk
Co do zasilania, to właśnie skorzystałem z tego opisu i dlatego zostawiłem AREF wolne (na podstawie jednego obrazka wyżej), ale może i racja. Warto dodać pewnie i kondensator i dławik i pewnie parę złącz (albo przynajmniej miejsca na nie na płytce), bo podejrzewał, że będę czasem tego układu używał również jako mini zestawu uruchomieniowego. Może się to przydać. Dzięki za sugestię :-)
Zealota napisał(a):
[...]Niemniej jednak wydaje mi się, ze poprawniej byłoby te zmienne globalne stawiać jako "static" i już byłoby zupełnie po papiesku[...]
OK, faktycznie ma to sens, poprawię przy najbliższej okazji w branchu 'develop'. Jak uzbiera się tego więcej to włączy się to do 'master'a do wersji 1.0.2 :-)
Dziękuję raz jeszcze za ciepłe słowa o projekcie. To daje sporo energii i wiatr w żagle dla następnych pomysłów :-D