hola a todos estoy usando la pantalla de la placa hy-mini stm32 con el driver de anilandro y queria mostrar letras mas grandes e probado el programa "glcd fon creator" y trato de usar las letras generadas pero me pierdo a la ora de modificar las funciones encargadas de mostrar los caracteres
pongo un ejemplo
letra 23x33:
0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char cuadro blanco
0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0x3F, 0x07, 0x00, 0x80, 0xFF, 0x3F, 0x07, 0x00, 0x80, 0xFF, 0x3F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // Code for char !
funciones implicadas:
GUI_Text(30,30,"T",Blue,Red); //en el main
/******************************************************************************
* Function Name : GUI_Text
* Modified by : Anilandro
* Description :
* Input : - Xpos, Ypos, str, charColor, bkColor:
*******************************************************************************/
void GUI_Text(uint16_t Xpos, uint16_t Ypos, uint8_t *str, uint16_t Color, uint16_t bkColor)
{
uint8_t TempChar;
do
{
TempChar=*str++;
PutChar(Xpos,Ypos,TempChar,Color,bkColor);
if(PMode==0x01)
{
if (Xpos<232)
{
Xpos=Xpos+12;
}
else if (Ypos<287)
{
Xpos=0;
Ypos=Ypos+24;
}
else
{
Xpos=0;
Ypos=0;
}
}
if(PMode==0)
{
if (Xpos<311)
{
Xpos=Xpos+12;
}
else if (Ypos<208)
{
Ypos=Ypos+24;
Xpos=0;
}
else
{
Xpos=0;
Ypos=0;
}
}
}
while (*str!=0);
}
#endif
#if HZ_LIB > 0
#endif
/******************************************************************************
* Function Name : PutChar
* Description :
* Input : Xpos, Ypos, c, charColor, bkColor
*******************************************************************************/
void PutChar(unsigned short Xpos,unsigned short Ypos,unsigned char c,unsigned short charColor,unsigned short bkColor)
{
unsigned short i=0;
unsigned short j=0;
unsigned char buffer[24];
unsigned char tmp_char=0;
GetASCIICode(buffer,c);
for (i=0;i<8;i++)
{
tmp_char=buffer;
for (j=0;j<16;j++)
{
if ( (tmp_char >> 7-j) & 0x01 == 0x01)
{
LCD_SetPoint(Xpos+j,Ypos+i,charColor);
}
else
{
LCD_SetPoint(Xpos+j,Ypos+i,bkColor);
}
}
}
}
void GetASCIICode(unsigned char* pBuffer,unsigned char ASCII)
{
memcpy(pBuffer,AsciiLib[(ASCII - 32)] ,24);
}
espero su ayuda