[$group] 元件库-显示器.$pname$ [$last_ver_update_time] 2021-04-03 [$min_need_ver] 1.23 [$p_list] [$short_show_UIname] [$code_area_type] codes,exe_per_1ms,init_code [$blocks_type] [$name] st7567屏幕的初始化积木 [$引脚占用列表,用于提示冲突] [($_xgm$reset),type=pin]|st7567积木里已占用引脚 [($_xgm$cs),type=pin]|st7567积木里已占用引脚 [($_xgm$a0),type=pin]|st7567积木里已占用引脚 [($_xgm$di),type=pin]|st7567积木里已占用引脚 [($_xgm$sck),type=pin]|st7567积木里已占用引脚 [$寄存器占用列表,用于提示冲突,但=>后的值没变则不提示冲突] [$中断函数号占用列表,用于提示冲突] [$thread_do] [$cs] [$shared_func_In_main_c] @@check_func_is_exist_ed=itoa_nouse_intrr #get_global_codes(group_xml,rand1,block_name,ref_complier,extinfo,"itoa_no_use_intreup","itoa_nouse_intrr",true,"","","","")% [$function_ref_define_in_headfile] @@file=lcd7567.h #include "protothread.h" #include "app_process.h" #include "sys/timer.h" #include "Extline_Lib.h" #include "Lib_base.h" //考虑PROCESS2_WAIT_UNTIL宏 extern unsigned char tempstr_$rnd_varname_pre$[]; #define uint8 unsigned char #define int8 signed char #define uint unsigned int #define int16 signed int #define int32 signed long #define uint32 unsigned long void ST7567_Init$rnd_varname_pre$();//屏幕初始化 void ST7567_Write_COM$rnd_varname_pre$(uint8 COMDADA_4SPI);//写命令 void ST7567_Write_DATA$rnd_varname_pre$(uint8 DADA_4SPI);//写数据 void ST7567_HDReset$rnd_varname_pre$();//复位 void clear_screen$rnd_varname_pre$(uint8 xx);//全屏填充 char ST7567_display$rnd_varname_pre$(struct pt *process_pt); //缓存显示 char ST7567_clear$rnd_varname_pre$(struct pt *process_pt); //清缓存 void ST7567_set_pixel$rnd_varname_pre$( uint8 x, uint8 y, uint8 pixel); //在指定位置显示一个点 //X 个像素点,y行 void ST7567_show_char$rnd_varname_pre$( int8 x, int8 y, uint8 chr, uint8 zhiti); //在指定位置显示一个字符 字符高8,宽5 char ST7567_show_string$rnd_varname_pre$(struct pt *process_pt,int8 x,int8 y,uint8 *chr,uint8 zhiti); //在指定位置显示字符串 字符高8,间距8 void ST7567_fill$rnd_varname_pre$(uint8 x0, uint8 y0, uint8 x1, uint8 y1, uint8 pixel); //填充 char write_cg$rnd_varname_pre$(struct pt *process_pt,u8 lcd_roms[],u8 zimo_width_height, unsigned char x, unsigned char y, unsigned char ch); [$replace_map] $_xgm$reset = $field$reset,mytype|pin, ptype|TIMES $_xgm$cs = $field$cs,mytype|pin, ptype|TIMES $_xgm$a0 = $field$a0,mytype|pin, ptype|TIMES $_xgm$di = $field$di,mytype|pin, ptype|TIMES $_xgm$sck = $field$sck,mytype|pin, ptype|TIMES [$init_code_for_define_area] @@file=lcd7567.c #include "lcd7567.h" char* itoa_nouse_intrr(long num,char* str, u8 base); unsigned char tempstr_$rnd_varname_pre$[12]; void delay_ms1$rnd_varname_pre$(u32 todelays ){ u16 delay_ccc2_; for(delay_ccc2_=0;delay_ccc2_<#get_10us_delay_num_stm32f10x(group_xml,rand1,block_name,ref_complier,extinfo)%;delay_ccc2_++){ } } #define ST7567_RST_$rnd_varname_pre$ [($_xgm$reset),type=pin] #define ST7567_CS_$rnd_varname_pre$ [($_xgm$cs),type=pin] #define ST7567_A0_$rnd_varname_pre$ [($_xgm$a0),type=pin] #define ST7567_SI_$rnd_varname_pre$ [($_xgm$di),type=pin] #define ST7567_SCL_$rnd_varname_pre$ [($_xgm$sck),type=pin] #define ST7567_MAX_COLUMN 132 //宽度最大像素 #define ST7567_MAX_ROW 64 //高度最大像素 void ST7567_Init$rnd_varname_pre$()//屏幕初始化 { ST7567_HDReset$rnd_varname_pre$();//复位 delay_ms1$rnd_varname_pre$(10); IO_Write(ST7567_CS_$rnd_varname_pre$ ,0) ; ST7567_Write_COM$rnd_varname_pre$(0xe2); //SOFT RESET//寄存器复位 ST7567_Write_COM$rnd_varname_pre$(0x22); //0x20-0x27为V5电压内部电阻调整设置小屏 ST7567_Write_COM$rnd_varname_pre$(0x2f); //0x2f升压电路,电压管理电路, //ST7567_Write_COM$rnd_varname_pre$(0x80); //起始行对应RAM ST7567_Write_COM$rnd_varname_pre$(0x81); // SET EV 对比度寄存器模式0x81 ST7567_Write_COM$rnd_varname_pre$(0x30); //0x01-0x3f//对比度调整小屏 ST7567_Write_COM$rnd_varname_pre$(0xa0); //列地址移动方向:(SEG1->SEG132)0xa0为正向,0xa1为反向 ST7567_Write_COM$rnd_varname_pre$(0xc8); //行扫描方向:SHL=1(COM64->COM1)0xc0正向扫描,0xc8反射扫描 ST7567_Write_COM$rnd_varname_pre$(0xa6); //0xa6正向显示,0xa7反向显示 ST7567_Write_COM$rnd_varname_pre$(0xa4); //0xa4正常显示,0xa5全屏点亮 ST7567_Write_COM$rnd_varname_pre$(0xf8); //背压比设置0xf8 ST7567_Write_COM$rnd_varname_pre$(0x02); //00--10 ST7567_Write_COM$rnd_varname_pre$(0xaf); //0xaf显示器开 } void ST7567_Write_COM$rnd_varname_pre$(uint8 COMDADA_4SPI)//写命令 { uint8 bit8; IO_Write(ST7567_A0_$rnd_varname_pre$ ,0) ; IO_Write(ST7567_CS_$rnd_varname_pre$ ,0) ; for(bit8=0;bit8<8;bit8++) { delay_ms1$rnd_varname_pre$(1); IO_Write(ST7567_SCL_$rnd_varname_pre$ ,0) ; delay_ms1$rnd_varname_pre$(1); if((COMDADA_4SPI&0x80)==0x80){ IO_Write(ST7567_SI_$rnd_varname_pre$ ,1) ; } else { IO_Write(ST7567_SI_$rnd_varname_pre$ ,0) ; } delay_ms1$rnd_varname_pre$(1); IO_Write(ST7567_SCL_$rnd_varname_pre$ ,1) ; delay_ms1$rnd_varname_pre$(1); COMDADA_4SPI=(COMDADA_4SPI<<1); } IO_Write(ST7567_CS_$rnd_varname_pre$ ,1) ; // ST7567_A0=1; } //*************************************************************************** void ST7567_Write_DATA$rnd_varname_pre$(uint8 DADA_4SPI)//写数据 { uint8 bit8; IO_Write(ST7567_A0_$rnd_varname_pre$ ,1) ; IO_Write(ST7567_CS_$rnd_varname_pre$ ,0) ; for(bit8=0;bit8<8;bit8++) { delay_ms1$rnd_varname_pre$(1); IO_Write(ST7567_SCL_$rnd_varname_pre$ ,0) ; delay_ms1$rnd_varname_pre$(1); if((DADA_4SPI&0x80)==0x80){ IO_Write(ST7567_SI_$rnd_varname_pre$ ,1) ; } else{ IO_Write(ST7567_SI_$rnd_varname_pre$ ,0) ; } delay_ms1$rnd_varname_pre$(1); IO_Write(ST7567_SCL_$rnd_varname_pre$ ,1) ; DADA_4SPI=(DADA_4SPI<<1); } IO_Write(ST7567_CS_$rnd_varname_pre$ ,1) ; // ST7567_A0=0; } //*************************************************************************** void ST7567_HDReset$rnd_varname_pre$()//复位 { IO_Write(ST7567_RST_$rnd_varname_pre$ ,0) ; delay_ms1$rnd_varname_pre$(2); IO_Write(ST7567_RST_$rnd_varname_pre$ ,1) ; delay_ms1$rnd_varname_pre$(4); } //======================================================================== // 描述: OLED模块写一个字节. // 参数: dat:要写入的字节 ; cmd:写入的字节是数据(1)还是命令(0) // 返回: none. //======================================================================== static void ST7567_wr_byte$rnd_varname_pre$(uint8 dat,uint8 cmd) { if(cmd) { ST7567_Write_DATA$rnd_varname_pre$(dat); }else{ ST7567_Write_COM$rnd_varname_pre$(dat); } } //*************************************************************************** void clear_screen$rnd_varname_pre$(uint8 xx)//全屏填充 { uint8 i,j; for(i=0;i<8;i++) { IO_Write(ST7567_CS_$rnd_varname_pre$ ,0) ; ST7567_Write_COM$rnd_varname_pre$(0xb0+i); //SET PAGE 0---8 ST7567_Write_COM$rnd_varname_pre$(0x10); //SET COLUMN MSB ST7567_Write_COM$rnd_varname_pre$(0x00); //SET CLUMN LSB for(j=0;j<128;j++) { ST7567_Write_DATA$rnd_varname_pre$(xx); } } } //======================================================================== // 描述: 清缓存 // 参数: none. // 返回: none. //======================================================================== char ST7567_clear$rnd_varname_pre$(struct pt *process_pt) { PT_BEGIN(process_pt); static uint8 x,y; static u8 isok=1; if(isok==1){ isok=0; x=0; y=0; } for(y=0;y<8;y++) { PT_YIELD(process_pt); for(x=0;x ST7567_MAX_COLUMN || y0 > ST7567_MAX_ROW) return; if (x1 > ST7567_MAX_COLUMN || y1 > ST7567_MAX_ROW) return; if(x0 > x1){ swap = x1; x1 = x0; x0 = swap; } if(y0 > y1){ swap = y1; y1 = y0; y0 = swap; } for(i=x0;i<=x1;i++) for(j=y0;j<=y1;j++) { ST7567_set_pixel$rnd_varname_pre$(i, j, pixel); } } //======================================================================== // 描述: 在指定位置显示一个点 // 参数: x,y:坐标; pixel:亮或灭 // 返回: none. //======================================================================== void ST7567_set_pixel$rnd_varname_pre$( uint8 x, uint8 y, uint8 pixel) { if (x > ST7567_MAX_COLUMN || y > ST7567_MAX_ROW) { return; } else { if (pixel) { _ST7567_disbuffer$rnd_varname_pre$[x][y / 8] |= (1 << (y % 8)); } else { _ST7567_disbuffer$rnd_varname_pre$[x][y / 8] &= ~(1 << (y % 8)); } } } uint8 j; uint8 i; int zs; uint8 jjj; uint8 dat11; uint8 shift1; uint8 ii; uint8 jj; u16 index1; char write_cg$rnd_varname_pre$(struct pt *process_pt, u8 lcd_roms[],u8 zimo_width_height, unsigned char x, unsigned char y, unsigned char ch) { PT_BEGIN(process_pt); static u8 isok=1; if(isok==1){ isok=0; i=0; j=0; index1=0; jjj=0; dat11=0; shift1=0; ii=0; jj=0; } for (i = 0; i < 16; i++) { for (j = 0; j < 16; j++) { PT_YIELD(process_pt); index1= ch * 32; index1 += i * 2; index1 += j / 8; jjj= j % 8; dat11=lcd_roms[ index1]; shift1=(0x80 >> jjj); jj=x + j; ii=y + i; if(dat11 &shift1) { _ST7567_disbuffer$rnd_varname_pre$[jj][ii / 8] |= (1 << (ii % 8)); } } } isok=1; PT_END(process_pt); } uint8 temp; //======================================================================== // 描述: 在指定位置显示一个字符 // 参数: x,y:起点坐标; chr:要显示的字符; // 返回: none. //======================================================================== void ST7567_show_char$rnd_varname_pre$( int8 x, int8 y, uint8 chr, uint8 zhiti) { chr=chr-' '; //得到偏移后的值 if(zhiti==8) { /* if(x < 0) { for(j=0;j<5;j++) { temp=asc2_0805[chr][j]; for(i=0;i<8;i++) { if(((x + i) >= 0)){ if(temp&0x01){ ST7567_set_pixel$rnd_varname_pre$(x+j,y+i,1); } } temp>>=1; } } } else */ for(j=0;j<5;j++) { temp=asc2_0805[chr][j]; for(i=0;i<8;i++) { if(temp&0x01) { ST7567_set_pixel$rnd_varname_pre$(x+j,y+i,1); } temp>>=1; } } } else if(zhiti==16) { /*if(x < 0) { for(j=0;j<8;j++) { temp=asc2_1608[chr][j]; for(i=0;i<8;i++) { if(((x + i) >= 0)){ if(temp&0x01){ ST7567_set_pixel$rnd_varname_pre$(x+j,y+i,1); } } temp>>=1; } } for(j=0;j<8;j++) { temp=asc2_1608[chr][j+8]; for(i=0;i<8;i++) { if(((x + i) >= 0)){ if(temp&0x01){ ST7567_set_pixel$rnd_varname_pre$(x+j,y+i+8,1); } } temp>>=1; } } } else */ for(j=0;j<8;j++) { temp=asc2_1608[chr][j]; for(i=0;i<8;i++) { if(temp&0x01) { ST7567_set_pixel$rnd_varname_pre$(x+j,y+i,1); } temp>>=1; } } for(j=0;j<8;j++) { temp=asc2_1608[chr][j+8]; for(i=0;i<8;i++) { if(temp&0x01) { ST7567_set_pixel$rnd_varname_pre$(x+j,y+i+8,1); } temp>>=1; } } } /* if(zhiti==24) { if(x < 0) { for(j=0;j<12;j++) { temp=asc2_2412[chr][j]; for(i=0;i<8;i++) { if(((x + i) >= 0)){ if(temp&0x01){ ST7567_set_pixel(x+j,y+i,1); } } temp>>=1; } } for(j=0;j<12;j++) { temp=asc2_2412[chr][j+8]; for(i=0;i<8;i++) { if(((x + i) >= 0)){ if(temp&0x01){ ST7567_set_pixel(x+j,y+i+8,1); } } temp>>=1; } } for(j=0;j<12;j++) { temp=asc2_2412[chr][j+16]; for(i=0;i<8;i++) { if(((x + i) >= 0)){ if(temp&0x01){ ST7567_set_pixel(x+j,y+i+16,1); } } temp>>=1; } } } else{ for(j=0;j<12;j++) { temp=asc2_2412[chr][j]; for(i=0;i<8;i++) { if(temp&0x01) { ST7567_set_pixel(x+j,y+i,1); } temp>>=1; } } for(j=0;j<12;j++) { temp=asc2_2412[chr][j+12]; for(i=0;i<8;i++) { if(temp&0x01) { ST7567_set_pixel(x+j,y+i+8,1); } temp>>=1; } } for(j=0;j<12;j++) { temp=asc2_2412[chr][j+24]; for(i=0;i<8;i++) { if(temp&0x01) { ST7567_set_pixel(x+j,y+i+16,1); } temp>>=1; } } } } */ } char ST7567_show_string$rnd_varname_pre$(struct pt *process_pt,int8 xx,int8 yy,uint8 *chr,uint8 zhiti) { PT_BEGIN(process_pt); static uint8 j=0; static int8 x,y; static u8 isok=1; if(isok==1){ isok=0; j=0; x=xx; y=yy; } while (chr[j]!='\0') { ST7567_show_char$rnd_varname_pre$(x,y,chr[j],zhiti); PT_YIELD(process_pt); if(zhiti==16){ x+=8; }else{ x+=zhiti; } if(x>120){ x=0; y+=zhiti/8; } j++; } isok=1; PT_END(process_pt); } [$init_code_for_define_area_once] @@file=lcd7567.c #define ST7567_MAX_COLUMN 132 //宽度最大像素 #define ST7567_MAX_ROW 64 //高度最大像素 #define uint8 unsigned char #define uchar unsigned char #define uint unsigned int uint8 _ST7567_disbuffer$rnd_varname_pre$[ST7567_MAX_COLUMN][ST7567_MAX_ROW/8]; //显示缓存 const uint8 asc2_0805[95][5]={ //字库 {0x00,0x00,0x00,0x00,0x00},/*" ",0*/ {0x00,0x00,0x5E,0x00,0x00},/*"!",1*/ {0x00,0x02,0x02,0x02,0x00},/*""",2*/ {0x20,0x3E,0x28,0x7C,0x20},/*"#",3*/ {0x00,0x6C,0xFE,0x74,0x00},/*"$",4*/ {0x0C,0x2C,0x38,0x54,0x70},/*"%",5*/ {0x60,0x5C,0x6C,0x70,0x40},/*"&",6*/ {0x00,0x02,0x00,0x00,0x00},/*"'",7*/ {0x00,0x00,0x3C,0x42,0x80},/*"(",8*/ {0x80,0x42,0x3C,0x00,0x00},/*")",9*/ {0x08,0x18,0x3C,0x18,0x08},/*"*",10*/ {0x00,0x10,0x3C,0x10,0x00},/*"+",11*/ {0x00,0x40,0x00,0x00,0x00},/*",",12*/ {0x08,0x08,0x08,0x08,0x08},/*"-",13*/ {0x00,0x40,0x00,0x00,0x00},/*".",14*/ {0x80,0x60,0x18,0x04,0x02},/*"/",15*/ {0x38,0x44,0x42,0x64,0x18},/*"0",16*/ {0x00,0x00,0x7C,0x00,0x00},/*"1",17*/ {0x00,0x64,0x52,0x4C,0x00},/*"2",18*/ {0x00,0x42,0x42,0x7C,0x00},/*"3",19*/ {0x10,0x28,0x24,0x7E,0x00},/*"4",20*/ {0x00,0x4C,0x4C,0x70,0x00},/*"5",21*/ {0x38,0x54,0x4A,0x4C,0x30},/*"6",22*/ {0x00,0x04,0x74,0x0C,0x00},/*"7",23*/ {0x24,0x5A,0x52,0x7C,0x00},/*"8",24*/ {0x0C,0x52,0x52,0x7C,0x00},/*"9",25*/ {0x00,0x00,0x48,0x00,0x00},/*":",26*/ {0x00,0x00,0xC8,0x00,0x00},/*";",27*/ {0x00,0x18,0x24,0x44,0x00},/*"<",28*/ {0x00,0x18,0x18,0x18,0x00},/*"=",29*/ {0x00,0x44,0x24,0x18,0x00},/*">",30*/ {0x00,0x02,0x72,0x0A,0x04},/*"?",31*/ {0x38,0x54,0x6A,0x7C,0x1C},/*"@",32*/ {0x40,0x38,0x16,0x78,0x00},/*"A",33*/ {0x00,0x7C,0x54,0x5C,0x20},/*"B",34*/ {0x38,0x44,0x42,0x42,0x24},/*"C",35*/ {0x00,0x7C,0x44,0x44,0x38},/*"D",36*/ {0x00,0x7C,0x54,0x5C,0x44},/*"E",37*/ {0x00,0x7C,0x14,0x1C,0x04},/*"F",38*/ {0x38,0x44,0x42,0x62,0x00},/*"G",39*/ {0x00,0x7C,0x10,0x7C,0x00},/*"H",40*/ {0x00,0x00,0x7C,0x00,0x00},/*"I",41*/ {0x80,0x80,0x80,0x7C,0x00},/*"J",42*/ {0x00,0x7C,0x18,0x64,0x00},/*"K",43*/ {0x00,0x7C,0x40,0x40,0x40},/*"L",44*/ {0x64,0x18,0x30,0x0C,0x70},/*"M",45*/ {0x78,0x04,0x18,0x20,0x1C},/*"N",46*/ {0x38,0x44,0x42,0x44,0x38},/*"O",47*/ {0x00,0x7C,0x14,0x14,0x0C},/*"P",48*/ {0x38,0x44,0x62,0xC4,0x38},/*"Q",49*/ {0x00,0x7C,0x14,0x6C,0x04},/*"R",50*/ {0x24,0x4A,0x52,0x72,0x00},/*"S",51*/ {0x04,0x04,0x7C,0x04,0x04},/*"T",52*/ {0x00,0x7C,0x40,0x40,0x3C},/*"U",53*/ {0x00,0x1C,0x60,0x1C,0x00},/*"V",54*/ {0x04,0x78,0x1C,0x38,0x04},/*"W",55*/ {0x00,0x64,0x18,0x64,0x00},/*"X",56*/ {0x00,0x0C,0x70,0x0C,0x00},/*"Y",57*/ {0x40,0x64,0x5C,0x44,0x00},/*"Z",58*/ {0x00,0x00,0xFE,0x80,0x00},/*"[",59*/ {0x00,0x04,0x18,0x60,0x80},/*"\",60*/ {0x00,0x80,0xFE,0x00,0x00},/*"]",61*/ {0x00,0x01,0x01,0x01,0x00},/*"^",62*/ {0x80,0x80,0x80,0x80,0x80},/*"_",63*/ {0x00,0x01,0x01,0x00,0x00},/*"`",64*/ {0x60,0x68,0x58,0x78,0x40},/*"a",65*/ {0x00,0x7C,0x48,0x78,0x00},/*"b",66*/ {0x00,0x70,0x48,0x48,0x00},/*"c",67*/ {0x00,0x70,0x48,0x7C,0x40},/*"d",68*/ {0x00,0x70,0x68,0x58,0x00},/*"e",69*/ {0x00,0x08,0x7C,0x0C,0x00},/*"f",70*/ {0x00,0xF0,0xE8,0xD0,0x88},/*"g",71*/ {0x00,0x7C,0x08,0x78,0x00},/*"h",72*/ {0x00,0x08,0x7A,0x00,0x00},/*"i",73*/ {0x00,0x80,0x88,0xFA,0x00},/*"j",74*/ {0x00,0x7C,0x30,0x48,0x00},/*"k",75*/ {0x00,0x00,0x7E,0x00,0x00},/*"l",76*/ {0x78,0x08,0x78,0x08,0x70},/*"m",77*/ {0x08,0x70,0x08,0x78,0x00},/*"n",78*/ {0x30,0x48,0x48,0x48,0x30},/*"o",79*/ {0x08,0xF0,0x48,0x48,0x30},/*"p",80*/ {0x00,0x70,0x48,0xF0,0x00},/*"q",81*/ {0x08,0x78,0x08,0x08,0x00},/*"r",82*/ {0x00,0x50,0x68,0x68,0x00},/*"s",83*/ {0x00,0x08,0x78,0x48,0x00},/*"t",84*/ {0x08,0x70,0x40,0x78,0x40},/*"u",85*/ {0x08,0x38,0x40,0x38,0x08},/*"v",86*/ {0x18,0x60,0x18,0x60,0x18},/*"w",87*/ {0x00,0x48,0x30,0x48,0x00},/*"x",88*/ {0x08,0x98,0xE0,0x18,0x08},/*"y",89*/ {0x00,0x48,0x78,0x48,0x00},/*"z",90*/ {0x00,0x00,0x10,0xEE,0x00},/*"{",91*/ {0x00,0x00,0xFF,0x00,0x00},/*"|",92*/ {0x00,0xEE,0x10,0x00,0x00},/*"}",93*/ {0x00,0x01,0x01,0x02,0x00}/*"~",94*/ }; const uint8 asc2_1608[95][16]={ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/ {0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x00,0x00,0x00,0x00},/*"!",1*/ {0x00,0x10,0x0C,0x02,0x10,0x0C,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*""",2*/ {0x00,0x40,0xC0,0x78,0x40,0xC0,0x78,0x00,0x00,0x04,0x3F,0x04,0x04,0x3F,0x04,0x00},/*"#",3*/ {0x00,0x70,0x88,0x88,0xFC,0x08,0x30,0x00,0x00,0x18,0x20,0x20,0xFF,0x21,0x1E,0x00},/*"$",4*/ {0xF0,0x08,0xF0,0x80,0x60,0x18,0x00,0x00,0x00,0x31,0x0C,0x03,0x1E,0x21,0x1E,0x00},/*"%",5*/ {0x00,0xF0,0x08,0x88,0x70,0x00,0x00,0x00,0x1E,0x21,0x23,0x2C,0x19,0x27,0x21,0x10},/*"&",6*/ {0x00,0x12,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",7*/ {0x00,0x00,0x00,0xE0,0x18,0x04,0x02,0x00,0x00,0x00,0x00,0x07,0x18,0x20,0x40,0x00},/*"(",8*/ {0x00,0x02,0x04,0x18,0xE0,0x00,0x00,0x00,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x00},/*")",9*/ {0x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00},/*"*",10*/ {0x00,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x0F,0x01,0x01,0x01},/*"+",11*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x90,0x70,0x00,0x00,0x00,0x00,0x00},/*",",12*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x00},/*"-",13*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00},/*".",14*/ {0x00,0x00,0x00,0x00,0xC0,0x38,0x04,0x00,0x00,0x60,0x18,0x07,0x00,0x00,0x00,0x00},/*"/",15*/ {0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00},/*"0",16*/ {0x00,0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00},/*"1",17*/ {0x00,0x70,0x08,0x08,0x08,0x08,0xF0,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00},/*"2",18*/ {0x00,0x30,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x18,0x20,0x21,0x21,0x22,0x1C,0x00},/*"3",19*/ {0x00,0x00,0x80,0x40,0x30,0xF8,0x00,0x00,0x00,0x06,0x05,0x24,0x24,0x3F,0x24,0x24},/*"4",20*/ {0x00,0xF8,0x88,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x20,0x20,0x20,0x11,0x0E,0x00},/*"5",21*/ {0x00,0xE0,0x10,0x88,0x88,0x90,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x20,0x1F,0x00},/*"6",22*/ {0x00,0x18,0x08,0x08,0x88,0x68,0x18,0x00,0x00,0x00,0x00,0x3E,0x01,0x00,0x00,0x00},/*"7",23*/ {0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00},/*"8",24*/ {0x00,0xF0,0x08,0x08,0x08,0x10,0xE0,0x00,0x00,0x01,0x12,0x22,0x22,0x11,0x0F,0x00},/*"9",25*/ {0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00},/*":",26*/ {0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,0x00},/*";",27*/ {0x00,0x00,0x80,0x40,0x20,0x10,0x08,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x00},/*"<",28*/ {0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x02,0x02,0x02,0x02,0x02,0x02,0x00},/*"=",29*/ {0x00,0x08,0x10,0x20,0x40,0x80,0x00,0x00,0x00,0x20,0x10,0x08,0x04,0x02,0x01,0x00},/*">",30*/ {0x00,0x70,0x48,0x08,0x08,0x88,0x70,0x00,0x00,0x00,0x00,0x30,0x37,0x00,0x00,0x00},/*"?",31*/ {0xC0,0x30,0xC8,0x28,0xE8,0x10,0xE0,0x00,0x07,0x18,0x27,0x28,0x2F,0x28,0x17,0x00},/*"@",32*/ {0x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x20,0x3C,0x23,0x02,0x02,0x27,0x38,0x20},/*"A",33*/ {0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x11,0x0E,0x00},/*"B",34*/ {0xC0,0x30,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x20,0x10,0x08,0x00},/*"C",35*/ {0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00},/*"D",36*/ {0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00},/*"E",37*/ {0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x00,0x03,0x00,0x00,0x00},/*"F",38*/ {0xC0,0x30,0x08,0x08,0x08,0x38,0x00,0x00,0x07,0x18,0x20,0x20,0x22,0x1E,0x02,0x00},/*"G",39*/ {0x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x20,0x3F,0x21,0x01,0x01,0x21,0x3F,0x20},/*"H",40*/ {0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},/*"I",41*/ {0x00,0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00,0x00},/*"J",42*/ {0x08,0xF8,0x88,0xC0,0x28,0x18,0x08,0x00,0x20,0x3F,0x20,0x01,0x26,0x38,0x20,0x00},/*"K",43*/ {0x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x20,0x30,0x00},/*"L",44*/ {0x08,0xF8,0xF8,0x00,0xF8,0xF8,0x08,0x00,0x20,0x3F,0x01,0x3E,0x01,0x3F,0x20,0x00},/*"M",45*/ {0x08,0xF8,0x30,0xC0,0x00,0x08,0xF8,0x08,0x20,0x3F,0x20,0x00,0x07,0x18,0x3F,0x00},/*"N",46*/ {0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x0F,0x00},/*"O",47*/ {0x08,0xF8,0x08,0x08,0x08,0x08,0xF0,0x00,0x20,0x3F,0x21,0x01,0x01,0x01,0x00,0x00},/*"P",48*/ {0xE0,0x10,0x08,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x28,0x28,0x30,0x50,0x4F,0x00},/*"Q",49*/ {0x08,0xF8,0x88,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x00,0x03,0x0C,0x30,0x20},/*"R",50*/ {0x00,0x70,0x88,0x08,0x08,0x08,0x38,0x00,0x00,0x38,0x20,0x21,0x21,0x22,0x1C,0x00},/*"S",51*/ {0x18,0x08,0x08,0xF8,0x08,0x08,0x18,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00},/*"T",52*/ {0x08,0xF8,0x08,0x00,0x00,0x08,0xF8,0x08,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00},/*"U",53*/ {0x08,0x78,0x88,0x00,0x00,0xC8,0x38,0x08,0x00,0x00,0x07,0x38,0x0E,0x01,0x00,0x00},/*"V",54*/ {0x08,0xF8,0x00,0xF8,0x00,0xF8,0x08,0x00,0x00,0x03,0x3E,0x01,0x3E,0x03,0x00,0x00},/*"W",55*/ {0x08,0x18,0x68,0x80,0x80,0x68,0x18,0x08,0x20,0x30,0x2C,0x03,0x03,0x2C,0x30,0x20},/*"X",56*/ {0x08,0x38,0xC8,0x00,0xC8,0x38,0x08,0x00,0x00,0x00,0x20,0x3F,0x20,0x00,0x00,0x00},/*"Y",57*/ {0x10,0x08,0x08,0x08,0xC8,0x38,0x08,0x00,0x20,0x38,0x26,0x21,0x20,0x20,0x18,0x00},/*"Z",58*/ {0x00,0x00,0x00,0xFE,0x02,0x02,0x02,0x00,0x00,0x00,0x00,0x7F,0x40,0x40,0x40,0x00},/*"[",59*/ {0x00,0x04,0x38,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x06,0x38,0xC0,0x00},/*"\",60*/ {0x00,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x7F,0x00,0x00,0x00},/*"]",61*/ {0x00,0x00,0x04,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",62*/ {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*"_",63*/ {0x00,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",64*/ {0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x19,0x24,0x24,0x12,0x3F,0x20,0x00},/*"a",65*/ {0x10,0xF0,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x3F,0x11,0x20,0x20,0x11,0x0E,0x00},/*"b",66*/ {0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00},/*"c",67*/ {0x00,0x00,0x80,0x80,0x80,0x90,0xF0,0x00,0x00,0x1F,0x20,0x20,0x20,0x10,0x3F,0x20},/*"d",68*/ {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x24,0x24,0x24,0x24,0x17,0x00},/*"e",69*/ {0x00,0x80,0x80,0xE0,0x90,0x90,0x20,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},/*"f",70*/ {0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x6B,0x94,0x94,0x94,0x93,0x60,0x00},/*"g",71*/ {0x10,0xF0,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20},/*"h",72*/ {0x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},/*"i",73*/ {0x00,0x00,0x00,0x80,0x98,0x98,0x00,0x00,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00},/*"j",74*/ {0x10,0xF0,0x00,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x24,0x06,0x29,0x30,0x20,0x00},/*"k",75*/ {0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00},/*"l",76*/ {0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F},/*"m",77*/ {0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20},/*"n",78*/ {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00},/*"o",79*/ {0x80,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x80,0xFF,0x91,0x20,0x20,0x11,0x0E,0x00},/*"p",80*/ {0x00,0x00,0x00,0x80,0x80,0x00,0x80,0x00,0x00,0x0E,0x11,0x20,0x20,0x91,0xFF,0x80},/*"q",81*/ {0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x00,0x01,0x00},/*"r",82*/ {0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x33,0x24,0x24,0x24,0x24,0x19,0x00},/*"s",83*/ {0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x10,0x00},/*"t",84*/ {0x80,0x80,0x00,0x00,0x00,0x80,0x80,0x00,0x00,0x1F,0x20,0x20,0x20,0x10,0x3F,0x20},/*"u",85*/ {0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x03,0x0C,0x30,0x0C,0x03,0x00,0x00},/*"v",86*/ {0x80,0x80,0x00,0x80,0x80,0x00,0x80,0x80,0x01,0x0E,0x30,0x0C,0x07,0x38,0x06,0x01},/*"w",87*/ {0x00,0x80,0x80,0x80,0x00,0x80,0x80,0x00,0x00,0x20,0x31,0x0E,0x2E,0x31,0x20,0x00},/*"x",88*/ {0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x00,0x81,0x86,0x78,0x18,0x06,0x01,0x00},/*"y",89*/ {0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x21,0x30,0x2C,0x22,0x21,0x30,0x00},/*"z",90*/ {0x00,0x00,0x00,0x00,0x00,0xFC,0x02,0x02,0x00,0x00,0x00,0x00,0x01,0x3E,0x40,0x40},/*"{",91*/ {0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},/*"|",92*/ {0x02,0x02,0xFC,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x3E,0x01,0x00,0x00,0x00,0x00},/*"}",93*/ {0x00,0x02,0x01,0x02,0x02,0x04,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}/*"~",94*/ }; [$init_code_for_init_val] #get_P口_to_PxM1_PxM0_set_code(group_xml,rand1,block_name,ref_complier,extinfo,"[($_xgm$reset),type=pin]","1","st7567 Reset")% #get_P口_to_PxM1_PxM0_set_code(group_xml,rand1,block_name,ref_complier,extinfo,"[($_xgm$cs),type=pin]","1","st7567 cs")% #get_P口_to_PxM1_PxM0_set_code(group_xml,rand1,block_name,ref_complier,extinfo,"[($_xgm$a0),type=pin]","1","st7567 a0")% #get_P口_to_PxM1_PxM0_set_code(group_xml,rand1,block_name,ref_complier,extinfo,"[($_xgm$di),type=pin]","1","st7567 di")% #get_P口_to_PxM1_PxM0_set_code(group_xml,rand1,block_name,ref_complier,extinfo,"[($_xgm$sck),type=pin]","1","st7567 sck")% ST7567_Init$rnd_varname_pre$();//屏幕初始化 [$timer0_1ms_code] [$run] [$toolbox_block_code]