LGT8F328P

Dyskusje o programowaniu mikroprocesorów.
Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5312
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

LGT8F328P

#1

Post napisał: tuxcnc » 16 sie 2021, 19:03

Na Aliexpress pojawiły się relatywnie tanie płytki na układzie LGT8F328P.
Zamówiłem cały zestaw z aukcji https://www.aliexpress.com/item/4000162476603.html
Wziąłem z ekonomiczną dostawą, więc cholera wie kiedy paczka dojdzie...

Na razie zbieram informacje.
1. Układ nie jest 100% kompatybilny z ATmega328P.
Ma zegar do 32 MHz (co powinno się spodobać partaczom i druciarzom, którzy lubią robić programowo to, co niewiele droższe układy robią sprzętowo), ma inny sposób programowania (JTAG zamiast ISP, USBasp nie podejdzie) i jakieś dodatkowe peryferia. Natomiast reszta jest zgodna i większość kodu dla ATmegi da się skompilować dla LGT8F328P.
2. Z niewiadomych przyczyn dedykowany programator SWDICE mkII Pro jest nie do kupienia poza Chinami i co prawda są sposoby żeby go zdobyć, ale to droga przez mękę. Ktoś wykombinował program który zmienia Arduino Uno/Nano w programator obsługujący LGT8F328P. Podobno działa, ale nie wiadomo w jakim zakresie.
3. Układy są podobno dostarczane z wgranym bootloaderem Arduino, ale podobno zdarzają się wyjątki. Bootloader jest dostępny w necie i można go wgrać drugim Arduino.
4 Większa płytka ma konwerter USB Holtek HT42B534, do mniejszej można dokupić sam konwerter w postaci osobnej płytki. Ciężko wyczuć czy da się programować układ innym konwerterem (przez USB i bootloader), bo chyba DTR jest używane jako RESET. Na pewno do samej komunikacji już zaprogramowanej płytki wystarczy dowolny konwerter.

Na razie tyle, jak będą zainteresowani, to podam więcej informacji.

P.S. Tutaj jest po rosyjsku, ale naprawdę dużo informacji https://radiolis.pp.ua/arduino/67-xi-lgt-nano-lgt8f328p



Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5312
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LGT8F328P

#2

Post napisał: tuxcnc » 12 wrz 2021, 23:26

Na dzień dzisiejszy odpuszczam sobie temat.
Płytki przyszły, uruchomiłem programator na zwykłym Nano.
Płytki dają się programować, ale zasadniczo do niczego się nie nadają.
Najzwyczajniej różnic pomiędzy LGT8F328P a ATMega328p musi być dużo więcej niż producent przyznaje.
Programy w rodzaju Blink działają bez zarzutu, ale bardziej skomplikowane, odwołujące się bezpośrednio do sprzętu świrują. Dzieje się tak zarówno gdy program kompiluje się pod LGT8F328P, jak też gdy wgra się program skompilowany pod ATMega328p.
Czyli nie polecam, bo za dwa złote taniej nie warto mieć takich atrakcji.

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5312
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LGT8F328P

#3

Post napisał: tuxcnc » 14 wrz 2021, 06:35

Jednak podrążyłem jeszcze trochę temat...
Otóż ten programator zrobiony z Arduino nie obsługuje fusów.
Nie żaden błąd, tylko najzwyczajniej autor w ogóle nie napisał procedur i programator na żądanie operacji na fusach zwraca standardową pustą odpowiedź.
Czyli fuse-bitów nie daje się ani odczytać, ani tym bardziej zapisać.
Jak to połączymy z faktem, że na płytkach nie ma rezonatorów kwarcowych, to staje się jasne, że skazani jesteśmy na wewnętrzny generator z zegarem ustawionym tak, jak wyszło z fabryki.
W najlepszym razie będzie to 16 MHz kompatybilne ze standardowym Arduino, w gorszym przypadku ile się trafi, a w najgorszym procesor będzie napędzany nieistniejącym kwarcem....
Moim zdaniem taka sytuacja totalnie dyskwalifikuje ten układ, bo oryginalny programator od producenta jest drogi i trudno dostępny.
Gdybym miał wyprodukować milion sztuk, tobym ściągnął programator i cieszył się zyskiem dolara na sztuce, ale przy kilku układach rocznie, tylko na własny użytek, to jest kompletne nieporozumienie.
Cóż, miałem fajną zabawę za 30 PLN, ale teraz czas wyrzucić ten badziew do śmieci i o nim zapomnieć...

Awatar użytkownika

pitsa
Moderator
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 3802
Rejestracja: 13 wrz 2008, 22:40
Lokalizacja: PL,OP

Re: LGT8F328P

#4

Post napisał: pitsa » 14 wrz 2021, 09:21

Taki już los pionierów. ;-)
"wszystko umieć, nic nie robić" - dziadek kamara
ostatni zawód świata - konsument


mineque
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 1
Posty: 527
Rejestracja: 12 wrz 2010, 01:59
Lokalizacja: Południe

Re: LGT8F328P

#5

Post napisał: mineque » 14 wrz 2021, 10:34

Jakbyś miał produkować milion to byś zrobił swoją płytkę pod wymiar i potrzeby

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5312
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LGT8F328P

#6

Post napisał: tuxcnc » 14 wrz 2021, 23:37

Postanowiłem wykonać jeszcze kilka prób.

Zakupiłem następujące płytki :
Obrazek
Obrazek

Ten czerwony Wemos na razie czeka. Jak się dobrze przyjrzycie, to złącze programowania to ten rząd miniaturowych dziureczek pomiędzy scalakiem i przyciskiem RESET, Na pewno coś tam przylutować się da, ale jakoś nie mogę się za to zabrać.

Ten mały zielony, który ma udawać Mini, to jakieś totalne nieporozumienie. Może czegoś nie wiem, ale uruchomić komunikacji przez Serial nie potrafię. Nawet oscyloskopem sprawdzałem, nie ma żadnego sygnału na pinie RX. To jest SSOP20, jakieś współdzielone piny tam wymyślili, może trzeba coś do jakiegoś rejestru wpisać... Blink działa, taki prosty program używający Timer0 do PWM też uruchomiłem, może jakieś zastosowanie znajdę, bo kupiłem dwa, bo tanie były...

Ten zielony wyglądający jak Nano wypadł najlepiej.
Okazało się że fusy ma zaprogramowane tak samo jak ATMega fabrycznie, czyli wewnętrzny oscylator na maksa i ustawionego fusa CKDIV8. Czyli daje to zegar 32/8=4 MHz.
To nie jest fabryczne ustawienie Arduino Nano/Uno ale daje się zegar przestawić we wgrywanym programie :

Kod: Zaznacz cały

 CLKPR = 1<<CLKPCE; // set cpu_clock prescaler
 CLKPR = B00000000; // set cpu_clock prescaler
Trzeba wykonać dwa wpisy jeden po drugim, bo to takie zabezpieczenie przed przypadkowym przestawieniem. Wartość wpisywana za drugim razem ustawia preskaler zegara, zero to bez podziału czyli 32 MHz, wartości 1-8 to podział 2-256. Tutaj akurat działa to tak samo jak w Atmedze.
Nie wiem jakim cudem, ale w ArduinoIDE Serial działa i jest komunikacja po USB.
Pobawiłem się też DAC, którego w Atmedze nie ma. Piękną sinusoidę 1,2 kHz przy 256 próbek na okres wygenerowałem, co by dawało jakieś 3 µs na próbkę. Szybciej się da, ale sinus jest już kopnięty, bo przetwornik nie wyrabia. Tutaj bym się nie czepiał.

Nadal nie polecam, ale jak ktoś potrzebuje dwa razy szybsze Nano z DAC, to jest szansa że mu ten zielony MiniEVB może podpasować...

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5312
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LGT8F328P

#7

Post napisał: tuxcnc » 15 wrz 2021, 18:19

Zmusiłem tego małego zielonego sk***iela do współpracy. (ssop-20, "niby-mini")
To nie jest żadne rozwiązanie problemu, ale już wiadomo jaka jest przyczyna.
Otóż żonglując ustawieniami uzyskałem komunikację na porcie szeregowym, ale ustawiając inną prędkość portu znowu ją traciłem.
Nie wdając się w szczegóły, zegar jest daleki od ideału, port potrafi wystartować normalnie, ale po sekundzie czy dwóch traci synchronizację, tylko kilka ustawień jest stabilne.
Na przykład ustawiając w ArduinoIDE <Clock:"2MHz"> a wprogramie dając:

Kod: Zaznacz cały

 CLKPR = 1<<CLKPCE; // set cpu_clock prescaler
 CLKPR = B00000000; // set cpu_clock prescaler 
 Serial.begin(1200);
uzyskałem zegar procesora 32 MHz i stabilną komunikację 19200 baud.
Pojęcia nie mam czy trafiłem trefny egzemplarz, czy ten typ tak ma, czy też coś jest spieprzone w bibliotekach dla Arduino...
W każdym razie sprzęt w jakimś zakresie działa, do czegoś go użyję i z tym wyrzuceniem pieniędzy w błoto trochę przesadziłem.


tristar0
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1063
Rejestracja: 21 sty 2020, 17:48
Lokalizacja: Toruń miasto Tadeusza R

Re: LGT8F328P

#8

Post napisał: tristar0 » 15 wrz 2021, 20:45

tuxcnc pisze: z tym wyrzuceniem pieniędzy w błoto trochę przesadziłem.
A kto zabroni marnować czas i pieniądze ekscentrykowi .

Dodane 43 sekundy:
Zycie ci minie na pierdołach ale to twoje życie .

Awatar użytkownika

pitsa
Moderator
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 3802
Rejestracja: 13 wrz 2008, 22:40
Lokalizacja: PL,OP

Re: LGT8F328P

#9

Post napisał: pitsa » 15 wrz 2021, 22:03

tristar0 pisze:Zycie ci minie na pierdołach ale to twoje życie .
Nie sądzę, aby można było aż tak daleko ekstrapolować tą zabawę. Forum to tylko mała szparka przez którą widzimy jedynie mały i zniekształcony fragmencik czyjegoś życia. To my tracimy czas czytając innych zamiast też dobrze się bawić. ;-)
Ten wątek to o tyle jest ciekawy, że przypomina o trzymaniu się popularnych i sprawdzonych rozwiązań z dostępnymi wieloma przykładami.
"wszystko umieć, nic nie robić" - dziadek kamara
ostatni zawód świata - konsument

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5312
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LGT8F328P

#10

Post napisał: tuxcnc » 16 wrz 2021, 06:10

pitsa pisze:
15 wrz 2021, 22:03
Ten wątek to o tyle jest ciekawy, że przypomina o trzymaniu się popularnych i sprawdzonych rozwiązań z dostępnymi wieloma przykładami.
Nie.
Ten wątek jest dużo ciekawszy, i to z zupełnie innego powodu.
Otóż ludzie powszechnie wieszczą jak to Chińczycy zdobędą świat bo nikt nie jest w stanie z nimi konkurować.
A tu mamy konkretny przykład jak to "zdobywanie świata" wygląda.
Zaprojektowali całkiem przyzwoity układ za śmieszne pieniądze.
Owszem, ma poważną wadę w postaci EEPROM-u udawanego w pamięci flash, ale też dwa razy szybszy zegar, dokładniejszy ADC (12 bitów zamiast 10)szybsze wykonywanie niektórych instrukcji i dodatkowe funkcjonalności, jak choćby wspomniany DAC...
Przy różnicy w cenie 0,5 kontra 2 USD, ten układ powinien zepchnąć atmegę do kąta, albo i nawet całkiem wypchnąć z rynku...
A co mamy?
Mamy kwintesencję chińskiej cywilizacji i chińskiego sposobu myślenia.
Programatora nie kupisz, dokumentacji po angielsku nie zdobędziesz, ale to jeszcze mało.
Jak przystało na prawdziwie chiński produkt, LGT8F328P jest sprzedawany bez żadnych oznaczeń !!!
Żaden przypadek, celowa polityka producenta.
Każdy może sobie na nim wypalić co zechce, jak uczciwszy to własną markę, jak mniej uczciwy to logo Atmel...
Właśnie zakupiłem z czystej ciekawości takie cudo: https://www.aliexpress.com/item/32868170637.html.
W Internecie piszą, że nie istnieje procesor AVGA328P, że to tylko rebrand LGT8F328P zrobiony przez firmę Wawgat i tak naprawdę kupując "modified version" kupujesz kota w worku...
Za 14 PLN to ja sobie to sprawdzę i napiszę tutaj jak jest naprawdę.
Na pewno jest to tańsze i pożyteczniejsze hobby niż bycie trollem nie trzeźwiejącym w weekendy...
A wracając do Chińczyków, to oni się bogacą, już od dawna nie chcą pracować za przysłowiową miskę ryżu, więc już niedługo chińskie produkty nie będą wcale tanie, a z taką mentalnością producentów nie będą także dobre...

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Arduino, Raspberry pi i inne systemy mikroprocesorowe”