C: reverzne cykly

Miroslav Šinko sinkomiro na gmail.com
Středa Červenec 31 00:02:04 CEST 2024


1. som rad, ze sa moje riesenie s otacanim indexu pacilo

2. asi je lepsie zacat vlakno tymto, citujem "najprv napisem o co sa jedna"

Ked ide o to, ze plosak je optimalizovany otocenim adresovania 
segmentov, tak v SW sa to niekde prejavit musi. Moze to byt na nizsej 
urovni (driver, HAL), kde do toho moj "aplikacny" kod nevidi. Alebo ak 
mam kod jednoduchy, tak si dam ten komentar a vobec si nevycitam, ze 
robim nieco zle. No a ked som odporca komentarov a za kazdu cenu chcem 
mam samopopisny kod, tak napr. takto.. Za zaklad pouzijem svoj priklad a 
este zmenim MAX na CNT, aby som v podmienke cyklu pouzil < namiesto <=

#define CNT_SEGMENTS   4

//tu moze byt uplne lubovolne mapovanie, nielen otocenie
unsigned char remapSegmentsDueToOptimizedPCB(unsigned char i)
{
     return CNT_SEGMENTS - 1 - i;
}

for(unsigned char i = 0; i < CNT_SEGMENTS; i++)
{
     unsigned char index = remapSegmentsDueToOptimizedPCB(i);
}

miro

On 30.7.2024 21:22, Jan Waclawek wrote:
> [preposielam]
> 
> Ahojte,
> 
> najprv napisem o co sa jedna. Ide o 7-segmentovy display, ktory ma DP_1000
> (3)  .... DP_1 (0). A ako na potvoru hardwarovo je to kvoli jednoduchemu
> plosaku navrhnute zprava dolava. Takze ked som napisal jednoduchy test
> displaja s pocitanim 0->3, ten isiel zprava dolava, dalo sa na to pozerat,
> ale je to pre nas europanov take neprirodzene, kedze mi citame zlava
> doprava. A tak zacala story okolo pocitania od 3 -> 0 a dolezite je, ze to
> musi prebehnut este aj v tej 0. Druhy faktor je ten ten, ze pocitadlo sa
> sucasne pouziva ako index v poli zobrazovanych znakov, takze by bolo dobre
> zostat pri unsigned char alebo unsigned int. Z tych rieseni, ktore tu
> zazneli sa mne najviac paci to s otocenim indexu (index=DP_1000 - i) a
> pocitanim od 0 -> 3 (DP_1....DP_1000). Druha moznost je pouzit index i-1 a
> pocitat od 4 do 1. V kazdom pripade je treba obetovat prehladnost na
> ukor poznamky v kode, o aky cyklus sa vlastne jedna.
> 
> Tymto by som rad este raz podakoval vsetkym za odpovede a inspirativne
> navrhy a aj za odpovede v predchadzajucom vlakne o statickych premennych.
> 
> Andrej
> 


Další informace o konferenci Hw-list