⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 62256tiao.c

📁 使用OKI公司8255A控制62256RAM程序,并使用8803液晶显示
💻 C
字号:
/************************************************************************
该程序是所有的并行器件挂在PC口上面,由8255负责给62256写地址
该程序是测试单片机最小开发系统的小工具,里面包含8255,62256,串口,液晶
,还能将62256的数据送到PC机,对AD进行采样等,常用器件及常用调试工具和方法
**************************************************************************/
#include"mega16.h"
#include"delay.h" 
#include"8255.c"
#include"chuankou.c"
#include"62256.c"
#include"avryejing.c" 
#include"pc_link.c" 
#include"math.h"
unsigned int jh3=0; 
unsigned int dress=0;
unsigned char temp=0;
unsigned int readadc(unsigned char channel) 
{ADMUX=channel;             
 ADMUX|= 0x40;
 ADCSRA|=0x40;  //注意选择手动转换,那么必须在每次转换完成之后再将ADSC=1 启动一下 
 while((ADCSRA&0x10)!=0x10);
 return ADCW;
}
main()
{unsigned int k=0; 
 unsigned int w=0; 
 unsigned int temp=0; 
 unsigned char i=0;
 unsigned char x=0;
 unsigned char y=0;
 unsigned char x1=0;
 unsigned char y1=0;
 unsigned long  rubbish=12; 
 float jh=1.2254;  
 xianshi(12345678,0);
 DDRA=0x00;
 PORTA=0x00;
 DDRD=0xff;
 PORTA.6=1;
 ADMUX=0x40; 
 ADCSRA=192;
 CS_ram_en=1;
 CS_ram=1;
 delay_ms(200);
 init_8803();
 #asm("sei")
 
 rest8255(0x80);
 usart(); 
 send8255(0xff,0);
 send8255(0xff,1);
 send8255(0xff,2);
 chinese(0,6,"三峡大学电子创新实验室"); 
 chinese(2,0,"童江"); 
 next:
 temp=0; 
 x=12;
 k=13;
 
 TCCR1A=0x00;
 TCCR1B=0x02;
 //jh=sin(jh);
 //jh=jh*2.35689;
 //k=k+87;
 //k=k+87;
 //k=k+87;
 //k=k+87;
 //jh=sqrt(28.5);
 //x=x*6;
 //xianshi(2345678,0); 
 //rubbish=rubbish/20;
 //x1=readadc(0);
 //x1=readadc(0);
 //xianshi(k,2);
 //chinese(2,2,8);
 k=TCNT1; 
 //k=12345;
 xianshi(k,0);
 
 /**/
 //开始接收数据
 k=0;
 while(PINA.6);
 /* {//x1=receive();
  
  //writeram(k,x1);
  if(jh3!=0)
  {xianshi(1314584,0);
   jh3=0;
   k=UDR;
   }
  //delay_ms(1000);
  k++;
   
  }
 xianshi(0xf0,0); 
 while(PINA.6); 
 xianshi(dress,0);
 delay_ms(3000); 
 k=0; 
 while(1)
 {
  y1=readram(k);
  xianshi(y1,0);
  k++;  
  delay_ms(1000); 
  }
 
 
 //接收数据完毕
 while(PINA.6); 
 xianshi(jh*1000000,6);
 delay_ms(1000);
 while(PINA.6); 
 */
 while(temp<10000)
 {k=readadc(0);//0xaabb;
  i=k;
  writeram(temp,i);
  i=k>>8;
  writeram(temp+1,i);
  temp+=2;  
 } 
 
  
 temp=0; 
 xianshi(87654321,0);
 point(0,2,1);
 //开始画图 
 
 while(temp<481)
 {k=readram(temp+1);
  k=k<<8;
  
  k=k+readram(temp);
  xianshi(k,0);
  //delay_ms(300);
  temp+=2; 
  if(k!=0)
  {x=128-k/8;
   point(x,y,1);
   xianshi(k,0);
   delay_ms(50);
  } 
  if(y==240)
  {
  while(PINA.6);
  y=0;
  }
   
  else x=128;
  temp+=2; 
  y++;
 } 
/* 
 temp=0;
 while(temp<10000)
 {k=readram(temp+1);
  k=k<<8;
  k=k+readram(temp);
  if(k!=0)
  {x=128-k/8;
   point(x,y);
   xianshi(k,0);
   delay_ms(50);
  } 
  if(y==240)
  {
  while(PINA.6);
  y=0;
  }
   
  else x=128;
  temp+=2; 
  y++;
  
 } 
 temp=0;
 while(1);
 while(temp<32000)
 {k=readram(temp);
  xianshi((long)temp*1000+k,0); 
  fasong(k);
  if(k!=0x25)
  {
   w++;
    }
  //xianshi(k,0);
  temp++; 
  delay_ms(100);
 }
 */  
 xianshi(w,0);
 w=0;
 delay_ms(100); 
 goto next; 
 while(1);
 }    
interrupt [12] RXINT() //接受数据完毕中断
{temp=UDR;
 writeram(dress,temp);
 dress++;
 } 

⌨️ 快捷键说明

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