原始程序.c

来自「实现华邦512K存储器W29C040的读写控制」· C语言 代码 · 共 102 行

C
102
字号
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char	

uchar i,j;
void delay(uint a);
void move_display(uchar * p1);

uchar idata data1[32]={0x80,0x40,0xF0,0x2C,0x43,0x20,0x98,0x0F,
                       0x0A,0xE8,0x08,0x88,0x28,0x1C,0x08,0x00,
                       0x00,0x00,0x7F,0x00,0x10,0x0C,0x03,0x21,
					   0x40,0x3F,0x00,0x00,0x03,0x1C,0x08,0x00,};
uchar idata data2[32]={0x02,0xF2,0x12,0x12,0x12,0xFE,0x12,0x12,
                       0x12,0xFE,0x12,0x12,0x12,0xF2,0x02,0x00,
                       0x00,0x7F,0x28,0x24,0x22,0x21,0x20,0x20,
                       0x20,0x21,0x22,0x22,0x22,0x7F,0x00,0x00,};
//-------------------------------------------

void main()
{	
      P0=0x00;
	  P2=0x00;
	  P3=0; 
	  j=1;	  
    do
	{ 
	  while (j--)
	  {
	  
	    for(i=0;i<16;i++)
	  	 { 
		  P0=0;
		  P2=0; 
		  P3=16*i;
		  P0=data2[i];
		  P2=data2[i+16];	  
		  delay(100); 		 	  	  
	     }
	  };

	  P0=0x00;
	  P2=0x00;
	  delay(60000);
	  
	   while (j--)
	  {
	  
	    for(i=0;i<16;i++)
	  	 { 
		  P0=0;
		  P2=0; 
		  P3=16*i;
		  P0=data1[i];
		  P2=data1[i+16];	  
		  delay(100); 		 	  	  
	     }
	  };


	 } while(1);  
 } 
//-------------------------------------------
 void move_display(uchar * p1)
{
      for(i=0;i<16;i++)
	  	 { 
		  P0=0;
		  P2=0; 
		  P3=16*i;
		  P0=p1[i];
		  P2=p1[i+16];	  
		  delay(100); 		 	  	  
	     }










}
//-------------------------------------------
void delay(uint a)
{
   while (a--){};

}











 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?