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.