inhoud ext. RAM zichtbaar maken.


trix

Golden Member

Op 26 februari 2021 21:01:18 schreef Arco:
Is het nu een matrix van 300x300, 300x240, of 120x240 bits? (alle drie zijn voorbijgekomen...)

120x240 (vert. x hor.)

de andere zijn gebaseerd op uitbreidingen.

eigenwijs = ook wijs

c code:

// pseudo-code

int y_size 120;
int x-size 240;

init_hardware;
init_serial tx;
serial_tx header;

for line in [ 0 - y_size ] {
 // collect_data for line y
 // serial_tx data for line y
}

serial_tx footer;
close_serial tx;
hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord
trix

Golden Member

dat moet ik morgen nog eens goed bekijken, voorlopig snap ik er nog niet veel van :)
bedankt in ieder geval voor de inzet _/-\o_

eigenwijs = ook wijs
trix

Golden Member

dit is het gedeelte wat in de AVR komt, om de bytes naar buiten te krijgen.
maar dat werkt al.
al is mij dit niet geheel duidelijk:
for line in [ 0 - y_size ]
hier word toch een array gevuld ?

eigenwijs = ook wijs

Nee, dat is pseudo-code, en lijkt eigenlijk meer op python dan op C, als ik het nog eens bekijk. In C wordt het iets in de trant van

c code:

for (line=0 ; line<y_size ; line++ ) {
 // gather data for one line
 // transmit data for one line
 }

Excuus voor de verwarring.

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord
trix

Golden Member

ja zo herken ik het wel, maar zoals ik al zei, het serieel naar buiten brengen v/d byte werkt al.
het gaat met name over het deel op de PC.

eigenwijs = ook wijs

Met 240 bytes per regel krijg je zoiets: (byte en bit staan in de titelbalk)

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
trix

Golden Member

dat is al veel, en dan te weten dat 120x240 nog maar een test matrix is. later kunnen ze gaan tot b.v. 300x450.

dus ik heb ook niet de ilusie dat ik dat in 1 scherm kan zien, dus dat word dan scrollen/schuiven, en ik vermoed (nergens op gebaseerd) dat dat met excel makkelijker gaat.

eigenwijs = ook wijs

Bestel dan maar een grote onderhoudsbeurt voor uw vermoedens :)

Trouwens waarom zou men een matrix van 300x450 elementen niet in 1 scherm kunnen bekijken? Ongeveer het minste dat men vandaag kan doen kwa schermresolutie is toch 1280x1024? Dan kan men voor ieder element 4 pixels horizontaal doen, en twee verticaal. Da's toch zat genoeg, voor blokjes die enkel egaal groen of egaal rood kunnen zijn?

@Arco: is er niet een ietsje verwarring? De vraag was naar 240 elementen horizontaal, voor mij zijn dat 240 bits, niet 240 bytes want dat zijn 240x8 elementen. Wel sluit ik me graag aan bij uw eerdere verzuchting: T/S maakt het ons helemaal niet gemakkelijk door keer op keer over andere resoluties te spreken, dan is het weer 120x240, dan weer 300x450... En het maakt zelfs niet echt uit, wat werkt voor de ene resolutie zal ook nog wel werken voor de andere. Als men nu afkomt met 16384x12791 dan wordt het al eens iets anders, maar daarvan is vooralsnog geen sprake.

[Bericht gewijzigd door big_fat_mama op 27 februari 2021 16:17:33 (27%)]

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord
trix

Golden Member

:)
120x300 is wat er nu fysiek in mijn werkplaats staat als test opstelling
300 x 450 is wat het ooit kan worden.
ik had al gezegd dat ik nu graag 120x300 wilde ;)

1 pixel van 4x2 (1280x1024 resolutie) zoals big_fat_mama zegt, is er dan nog wel een manier om af te lezen uit welke byte die komt ?

eigenwijs = ook wijs

Dat kan perfect in de hoofding, zoals @Arco heel fraai toont; of er kan ook een extra venstertje gemaakt worden met de basis info, zeg maar datum/uur/x/y. Er kan echt heel veel, het komt er maar op aan om te weten wat men nu eigenlijk wil.

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord

ik had al gezegd dat ik nu graag 120x300 wilde

Een paar posten hoger vertel je nog dat je 120x240 wilt... :(
(zoals al eerder gezegd: je kunt niet steeds blijven veranderen, dan wordt het nooit wat)

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
trix

Golden Member

duizend maal excuus 120x240, maar graag indien mogelijk uitbreidbaar.

ik denk dat dan ook belangrijk is te weten in welke volgorde ik de bytes naar buiten stuur ?

[Bericht gewijzigd door trix op 27 februari 2021 16:57:16 (29%)]

eigenwijs = ook wijs
trix

Golden Member

wat ook een mogelijk probleem is, dat wanneer ik moet/ga uitbreiden, dat ik dat niet zelf kan. en ik weer op juilie hulp ben aan gewezen (of iemand anders want die uitbreidingen komen mischien pas over 2 jaar)

eigenwijs = ook wijs

Kan dat wel uitbreidbaar maken hoor...
Bytes versturen gaat nog hetzelfde als voorheen, maar als je 't anders wilt versturen zeg je het maar...

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
trix

Golden Member

daar ging het vorige keer ook een beetje mis dacht ik. ik zal eens goed op schrijven hoe ik ze naar buiten stuur.

eigenwijs = ook wijs

graag indien mogelijk uitbreidbaar

Hoe vaak moet het nog gezegd worden :( ? Die afmetingen zijn echt het punt niet, leg die vast in het begin van de programmatekst en laat al de rest afhangen van die definities.

En aan de ontvangende kant hoeft het al helemaal niet vast te liggen; een beetje verstandig opzet van het verstuurde datapakket of bestand begint met een hoofding waarin de afmetingen x en y vermeld worden.

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord
trix

Golden Member

eigenwijs = ook wijs
trix

Golden Member

ik heb een plaatje gemaakt om aan te geven hoe de bytes naar buiten worden gestuurd:

eigenwijs = ook wijs

Heb het aangepast. Instellingen kun je wijzigen op de commandline. Diverse parameters met een spatie tussenruimte (hoeven niet allemaal)

Graphtest baud=19200 port=COM3 x=300 y=240 p=4

Waarbij:
- baud de baudrate is (default is 9600)
- port de COMpoort (default is COM1)
- x de horizontale breedte (default is 240)
- y de vertikale hoogte (default is 120)
- p de grootte van 1 vakje in pixels (default is 6, keuze tussen 3 t/m 6)

Y moet altijd een veelvoud van 8 zijn, omdat er nu eenmaal 8 bits in een byte zitten...

In de caption kun je baudrate, comport, window en vakjesgrootte zien, en byte en bit als je de cursor beweegt.

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
trix

Golden Member

ik ga het morgenvroeg testen, bedankt _/-\o_ _/-\o_ _/-\o_

eigenwijs = ook wijs

Zat nog iets van testdata in, even aangepast...

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
trix

Golden Member

arco, het lijkt te werken.
ik zit nog even te rommelen met de beginwaarde, (het begint op 0000, 1000, 2000 enz) en ik ergens anders, komt nog goed.

- voor de test heb ik byte 4000 afgeplakt, en een scan gemaakt.
- de horizontale lijn bij 8000 bit 1 is een defecte sensor
- de vertikale balk vooraan, moet ik nog naar kijken, dat gaat fout bij wegschrijven in de ext. RAM waarschijnlijk. is op zich geen probleem omdat ik die eenvoudig bij de verwerking van de data weg filter........maar hij hoort daar niet.

ik ga nog wat verder testen.
nogmaals: _/-\o_ _/-\o_ _/-\o_

edit: beginwaardes kloppen nu ook.

eigenwijs = ook wijs

Nog een kleine aanvulling: in deze versie kun je het scherm leeg (groen) maken door dubbelklikken met linker muistoets. Wellicht handig...

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
trix

Golden Member

eigenwijs = ook wijs