Nabend, Ich wollte nur mal fragen ob es Jemand schonmal geschafft hat, den ILI9320 display controller im landscape Modus zu benutzen? Ich kriegs leider nicht so ganz hin... ~ Cubec
die Ausrichtung wird durch die Schleifen
for( i=0; i<f_height; i++ ){...
for( j=0; j<f_width; j++ ){...
festgelegt. Durch ändern der Laufrichtung dieser Schleifen kann man
spiegeln oder drehen.
Bildschirm im Querformat:
//=============================================
void PutChar( uint8_t ASCI)
{ uint16_t i, j;
uint16_t tmp_char;
//Fontheader auswerten
//f_width= pgm_read_byte( &ptr_font[2]);
//f_height=pgm_read_byte( &ptr_font[3]);
//frame =pgm_read_byte( &ptr_font[4]);
//vertikal_zeichnen=pgm_read_byte( &ptr_font[5]);
//if (frame==1){f_width++;f_height+=2;}
if(ASCI<' '||ASCI>130)return;
u16 Xpos=curposx;
u16 Ypos=curposy;
if(frame){
// if(!vertikal_zeichnen)Xpos=curposx-1+f_height;
for(i=0;i<f_width +1;i++){
//Gui_DrawPoint(Xpos+f_height+1-frame_vert_versatz,Ypos+f_width-i-1,
backcolor );}
Gui_DrawPoint(Xpos-frame_vert_versatz+i,Ypos+1+frame_horz_versatz,
backcolor );}
for(i=0;i<f_width +1;i++){
Gui_DrawPoint( Xpos-frame_vert_versatz+i ,
Ypos-f_height+frame_horz_versatz, backcolor );}
for(i=0;i<f_height+1;i++){
Gui_DrawPoint( Xpos-frame_vert_versatz,Ypos-i+frame_horz_versatz,
backcolor );}
//pos 1nach unten:
Xpos++;//90°Bildschirm sonst ypos++
}
Xpos=curposx+1;
if(vertikal_zeichnen){
//Gui_DrawPoint(20,20,BLACK);
for( j=0; j<f_width; j++ ){
// tmp_char = buffer[i];
// tmp_char = pgm_read_byte(
&ptr_font[(ASCI-32)*f_width+j+7]);
tmp_char = ( ptr_font[(ASCI-32)*f_width+j+7]);
//lcd_int3(tmp_char);lw(" ");
for( i=0; i<f_height; i++ ){
if( (tmp_char >>((f_height-1) - i)) & (0x01 == 0x01) ){
Gui_DrawPoint( Xpos +j , Ypos -i , frontcolor ); //
Character color
// Gui_DrawPoint( Xpos +i , Ypos +j , frontcolor ); //
Character color
}else{
if(backcolor!=TRANSPARENT)
Gui_DrawPoint( Xpos +j, Ypos -i , backcolor ); // Background
color
//Gui_DrawPoint( Xpos + i, Ypos +j , backcolor ); // Background
color
}
}
}
}else{
//Xpos=curposx+2-f_height;
/**/
for( i=0; i<f_height; i++ ){
// tmp_char = buffer[i];
// tmp_char = pgm_read_byte(
&ptr_font[(ASCI-ascii_versatz)*f_height+i+7]);
tmp_char = ( ptr_font[(ASCI-ascii_versatz)*f_height+i+7]);
//tmp_char = ( f8x12[(ASCI-ascii_versatz)*f_height+i+7]);
//testx[i]=f8x12[7+i+(ASCI-ascii_versatz)*f_height];
//testy[i]=7+i+(ASCI-ascii_versatz)*f_height;
//lcd_int3(tmp_char);lw(" ");
for( j=0; j<f_width; j++ ){
if( (tmp_char >>((f_width-1) - j)) & (0x01 == 0x01) ){
Gui_DrawPoint( Xpos +j , Ypos +i , frontcolor ); // Character
color
// Gui_DrawPoint( Xpos -i , Ypos +j , frontcolor ); // Character
color
}else{
if(backcolor!=TRANSPARENT)
Gui_DrawPoint( Xpos + j, Ypos +i , backcolor );
// Gui_DrawPoint( Xpos - i, Ypos +j , backcolor ); // Background
color
}
}
}
}
}
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.