首页资源分类嵌入式系统 > 武汉中显STM32对接程序

武汉中显STM32对接程序

已有 445008个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:LCD

    分    享:

    文档简介

    STM32 开发液晶屏 程序

    文档预览

    #include "lcd_display.h" #include "stm32f10x_usart.h" void uart_send_string(int8_t *P,int8_t num) { int8_t i; for(i=0;i>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,FC&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(BC>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,BC&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } /**************************************************************************** * ? ?: VIEWTECH_41() * ? ?: ???????? * ????: D_X X???????(???) D_Y Y???????(???) * ????: ? ****************************************************************************/ void VIEWTECH_41 (int8_t D_X,int8_t D_Y) { USART_SendData(USART1,0xAA); USART_SendData(USART1,0x40); USART_SendData(USART1,D_X&0xff); USART_SendData(USART1,D_Y&0xff); USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } /**************************************************************************** * ? ?: VIEWTECH_42/43() * ? ?: ??????? 0x42???????????????; 0x43???????????????; * ????: ??????? * ????: ? ****************************************************************************/ void VIEWTECH_42 (int16_t X,int16_t Y) { USART_SendData(USART1,0xAA); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x42); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(X>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,X&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(Y>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,Y&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } void VIEWTECH_44(int8_t EN,int16_t X,int16_t Y,int8_t Width,int8_t Heigth) //void VIEWTECH_43 (int8_t EN,int16_t X,int16_t Y,int8_t Width,int8_t Heigth) { USART_SendData(USART1,0xAA); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x44); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,EN); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(X>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,X&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(Y>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,Y&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,Width); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,Heigth); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } void VIEWTECH_52(void) { USART_SendData(USART1,0xAA); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x52); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } /***************************************************************************** ?????? VIEWTECH_54/55/6E/6F/98 54 -??16X16??GBK?????? 55 -??32X32??GB2312????? 6E -??12X12??GBK?????? 6F -??24X24??GB2312????? 98 -????????,????????????,????????? *****************************************************************************/ void VIEWTECH_54(int16_t X,int16_t Y,int8_t *P,int8_t Size) //void VIEWTECH_54/55/6E/6F (int16_t X,int16_t Y,int8_t *strings,int8_t Size) { int8_t j; USART_SendData(USART1,0xAA); USART_SendData(USART1,0x54); USART_SendData(USART1,(X>>8)&0xff); USART_SendData(USART1,X&0xff); USART_SendData(USART1,(Y>>8)&0xff); USART_SendData(USART1,Y&0xff); for(j=0;j>8)&0xff); USART_SendData(USART1,X&0xff); USART_SendData(USART1,(Y>>8)&0xff); USART_SendData(USART1,Y&0xff); USART_SendData(USART1,Lib_ID); USART_SendData(USART1,C_Mode); USART_SendData(USART1,C_Dots); USART_SendData(USART1,(FC>>8)&0xff); USART_SendData(USART1,FC&0xff); USART_SendData(USART1,(BC>>8)&0xff); USART_SendData(USART1,BC&0xff); for(j=0;j>8)&0xff); USART_SendData(USART1,*(P+j)); } USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } void VIEWTECH_74 (int16_t X,int16_t YS,int16_t YE,int16_t BC,int16_t *P,int8_t Size) { int8_t j; USART_SendData(USART1,0xAA); USART_SendData(USART1,0x74); USART_SendData(USART1,(X>>8)&0xff); USART_SendData(USART1,X&0xff); USART_SendData(USART1,(YS>>8)&0xff); USART_SendData(USART1,YS&0xff); USART_SendData(USART1,(YE>>8)&0xff); USART_SendData(USART1,YE&0xff); USART_SendData(USART1,(BC>>8)&0xff); USART_SendData(USART1,BC&0xff); for(j=0;j>8)&0xff); USART_SendData(USART1,*(P+j)); } USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } /**************************************************************************** * ? ?: VIEWTECH_70/7B\E2() * ? ?: 70 -???????,?????? 7B -?????????????,???????????? E2 -???????????????ID??,?????/??????????? ****************************************************************************/ void VIEWTECH_70(int8_t cmd,int16_t ID) //cmd=70/7B /E2 { USART_SendData(USART1,0xAA); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,cmd); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(ID >>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,ID &0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } /**************************************************************************** * ? ?: VIEWTECH_70/7B\E2() * ? ?: 70 -???????,?????? 7B -?????????????,???????????? E2 -???????????????ID??,?????/??????????? ****************************************************************************/ void VIEWTECH_70_01(int8_t cmd,int16_t ID,int16_t X,int16_t Y) //cmd=70/7B /E2 { USART_SendData(USART1,0xAA); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,cmd); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x01); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(ID >>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,ID &0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(X>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,X&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,(Y>>8)&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,Y&0xff); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } /**************************************************************************** * ? ?: VIEWTECH_71/9C/9D() * ? ?: 71 -??????????????,??????????????,???????????????? 9C -??????,?????????????,????,????,?????????????????, 9D -??????,?????????????,????,????,?????????????????, ****************************************************************************/ void VIEWTECH_71(int8_t cmd,int16_t ID,int16_t XS,int16_t YS,int16_t XE,int16_t YE,int16_t X,int16_t Y) //cmd=71/9C/9D { USART_SendData(USART1,0xAA); USART_SendData(USART1,cmd); USART_SendData(USART1,(ID>>8)&0xff); USART_SendData(USART1,ID&0xff); USART_SendData(USART1,(XS>>8)&0xff); USART_SendData(USART1,XS&0xff); USART_SendData(USART1,(YS>>8)&0xff); USART_SendData(USART1,YS&0xff); USART_SendData(USART1,(XE>>8)&0xff); USART_SendData(USART1,XE&0xff); USART_SendData(USART1,(YE>>8)&0xff); USART_SendData(USART1,YE&0xff); USART_SendData(USART1,(X>>8)&0xff); USART_SendData(USART1,X&0xff); USART_SendData(USART1,(Y>>8)&0xff); USART_SendData(USART1,Y&0xff); USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } /**************************************************************************** * ? ?: VIEWTECH_99() * ? ?: ????????? ****************************************************************************/ void VIEWTECH_99 (int16_t *P,int8_t Size) { int8_t j; USART_SendData(USART1,0xAA); USART_SendData(USART1,0x99); for(j=0;j>8)&0xff); USART_SendData(USART1,*(P+3*j)); USART_SendData(USART1,(*(P+3*j+1)>>8)&0xff); USART_SendData(USART1,*(P+3*j+1)); USART_SendData(USART1,(*(P+3*j+2)>>8)&0xff); USART_SendData(USART1,*(P+3*j+2)); } USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } /**************************************************************************** * ? ?: VIEWTECH_5E() * ? ?: ???? ****************************************************************************/ void VIEWTECH_5E (void) { USART_SendData(USART1,0xAA); USART_SendData(USART1,0x5E); USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } /**************************************************************************** * ? ?: VIEWTECH_5F() * ? ?: ?????? ****************************************************************************/ void VIEWTECH_5F_P(int8_t PWM_T) { USART_SendData(USART1,0xAA); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x5F); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); if(PWM_T<0x63) USART_SendData(USART1,PWM_T); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xCC); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x33); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0xC3); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); USART_SendData(USART1,0x3C); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); } /**************************************************************************** * ? ?: VIEWTECH_5E() * ? ?: ?????? ****************************************************************************/ void VIEWTECH_5F(void) { USART_SendData(USART1,0xAA); USART_SendData(USART1,0x5F); USART_SendData(USART1,0xCC); USART_SendData(USART1,0x33); USART_SendData(USART1,0xC3); USART_SendData(USART1,0x3C); } /**************************************************************************** * ? ?: VIEWTECH_C79() * ? ?: ??????? ******************************************************************************/ void VIEWTECH_79 (int8_t On_Time) { int8_t txdata[256]; int8_t i=0; txdata[i++]=0xAA; txdata[i++]=0x79; txdata[i++]=On_Time; txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); } /**************************************************************************** * ? ?: VIEWTECH_9BFF() * ? ?: ?????? ******************************************************************************/ void VIEWTECH_9BFF(int8_t RTC_Mode,int8_t Text_Mode,int16_t Color,int16_t X,int16_t Y) { int8_t txdata[256]; int8_t i=0; txdata[i++]=0xAA; txdata[i++]=0x9B; txdata[i++]=0xFF; txdata[i++]=RTC_Mode; txdata[i++]=Text_Mode; txdata[i++]=(int8_t)(Color>>8); txdata[i++]=(int8_t)(Color); txdata[i++]=(int8_t)(X>>8); txdata[i++]=(int8_t)(X); txdata[i++]=(int8_t)(Y>>8); txdata[i++]=(int8_t)(Y); txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); } /**************************************************************************** * ? ?: VIEWTECH_9BFF() * ? ?: ?????? ******************************************************************************/ void VIEWTECH_9B00(void) { int8_t txdata[256]; int8_t i=0; txdata[i++]=0xAA; txdata[i++]=0x9B; txdata[i++]=0x00; txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); } /**************************************************************************** * ? ?: VIEWTECH_9B5A() * ? ?: ???????? ******************************************************************************/ void VIEWTECH_9B5A (void) { int8_t txdata[256]; int8_t i=0; txdata[i++]=0xAA; txdata[i++]=0x9B; txdata[i++]=0x5A; txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); } /**************************************************************************** * ? ?: VIEWTECH_9B5A() * ? ?: ???? ******************************************************************************/ void VIEWTECH_E7(int8_t YY,int8_t MM,int8_t DD,int8_t HH,int8_t MI,int8_t SS) { int8_t txdata[256]; int8_t i=0; txdata[i++]=0xAA; txdata[i++]=0xE7; txdata[i++]=0x55; txdata[i++]=0xAA; txdata[i++]=0x5A; txdata[i++]=0xA5; txdata[i++]=YY; txdata[i++]=MM; txdata[i++]=DD; txdata[i++]=HH; txdata[i++]=MI; txdata[i++]=SS; txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); } /**************************************************************************** * ? ?: VIEWTECH_1A01() * ? ?: ?????? ******************************************************************************/ //????:????val //????:4 ?????? bt,bt[0]????,bt[3]???? void int2byte(long int val, unsigned char *bt) //?????,?????? { unsigned long int *p; p = (unsigned long *)&val; *bt++ = ((*p) >> 24) & 0xff; *bt++ = ((*p) >> 16) & 0xff; *bt++ = ((*p) >> 8) & 0xff; *bt++ = (*p) & 0xff; } void VIEWTECH_A01 (int16_t X,int16_t Y,int16_t CMode,int16_t Fcolor,int16_t Bcolor,long int val) { int8_t txdata[21]; int8_t i=0,j; int8_t tab[4]; int2byte(val,tab); txdata[i++]=0xAA; txdata[i++]=0x1A; txdata[i++]=0x01; txdata[i++]=(int8_t)(X>>8); txdata[i++]=(int8_t)(X); txdata[i++]=(int8_t)(Y>>8); txdata[i++]=(int8_t)(Y); txdata[i++]=(int8_t)(CMode>>8); txdata[i++]=(int8_t)(CMode); txdata[i++]=(int8_t)( Fcolor >>8); txdata[i++]=(int8_t)( Fcolor); txdata[i++]=(int8_t)( Bcolor >>8); txdata[i++]=(int8_t)( Bcolor); for(j=0;j<4;j++) { txdata[i++]=*(tab+j); } txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); } /**************************************************************************** * ? ?: VIEWTECH_1A02() * ? ?: ??????? ******************************************************************************/ //????:????val //????:4 ?????? bt,bt[0]????,bt[3]???? void int2byte_f(float val, unsigned char *bt) { unsigned long *p; p = (unsigned long *)&val; *bt++ = ((*p) >> 24) & 0xff; *bt++ = ((*p) >> 16) & 0xff; *bt++ = ((*p) >> 8) & 0xff; *bt++ = (*p) & 0xff; } void VIEWTECH_A02 (int16_t X,int16_t Y,int16_t CMode,int16_t Fcolor,int16_t Bcolor,float val) { int8_t txdata[21]; int8_t i=0,j; int8_t tab[4]; int2byte_f(val,tab); txdata[i++]=0xAA; txdata[i++]=0x1A; txdata[i++]=0x02; txdata[i++]=(int8_t)(X>>8); txdata[i++]=(int8_t)(X); txdata[i++]=(int8_t)(Y>>8); txdata[i++]=(int8_t)(Y); txdata[i++]=(int8_t)(CMode>>8); txdata[i++]=(int8_t)(CMode); txdata[i++]=(int8_t)( Fcolor >>8); txdata[i++]=(int8_t)( Fcolor); txdata[i++]=(int8_t)( Bcolor >>8); txdata[i++]=(int8_t)( Bcolor); for(j=0;j<4;j++) { txdata[i++]=*(tab+j); } txdata[i++]=0xCC; txdata[i++]=0x33; txdata[i++]=0xC3; txdata[i++]=0x3C; uart_send_string(txdata,i); }

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高员外,我们会尽快处理。