///数据输出函数void WR_DATA(char dat){ int q; IO0SET=1<<3; ///当A0为1时表示当前传输的是命令,为0时表示当前传输的是数据 for(q=0;q<8;q++) { if((dat&(1<<(7-q)))==0) IO0CLR = 1<<1; else IO0SET =1<<1; IO0CLR = 1; ///来一个上升沿发一串数据 IO0SET =1; }}//命令输出函数void WR_CMD(char cmd){ uint8 j,k; IO0CLR=1<<3; ///当A0为1时表示当前传输的是命令,为0时表示当前传输的是数据 for(k=0;k<8;k++) { if((cmd&(1<<(7-k)))==0) IO0CLR = 1<<1; else IO0SET =1<<1; IO0CLR = 1; ///来一个上升沿发一串数据 IO0SET =1; }}/***************************************************************************** 名 称:main()* 功 能:控制LED灯闪烁。****************************************************************************/int main(void){ int i1,j1,k=0; PINSEL0=0 ; IO0DIR =0xf; WR_CMD(0xa1); //翻转 for(j1=0;j1<8;j1++) { WR_CMD(0xb0+j1); WR_CMD(0x10); WR_CMD(0x00); // for(i1=j1*128;i1<128*(j1+1);i1++) for(i1=0;i1<128;i1++) { WR_DATA(z[j1][i1]); } }