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

📄 sio.c

📁 dsp320lf2407上的相关程序文件
💻 C
字号:
#include    "f2407_c.h"


extern unsigned int data_rec[500];
extern void delay(unsigned int j11);

unsigned int assic(unsigned int source)
{
	switch(source)
	{
		case 0x000a:return(0x0041);
		case 0x000b:return(0x0042);
		case 0x000c:return(0x0043);
		case 0x000d:return(0x0044);
		case 0x000e:return(0x0045);
		case 0x000f:return(0x0046);
		default:return(source+0x30);
	}
}


void sio_write_data(unsigned int addr,unsigned data)
{
	enable();
	*SCITXBUF=0x001b;
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=0x0057;
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=assic(addr/0x1000);
   	while((*SCICTL2&0x0080)==0);
   	
   	addr=addr%0x1000;
   	
   	*SCITXBUF=assic(addr/0x0100);
   	while((*SCICTL2&0x0080)==0);
   	
   	addr=addr%0x0100;
   	
   	*SCITXBUF=assic(addr/0x0010);
   	while((*SCICTL2&0x0080)==0);
   	
   	addr=addr%0x0010;
   	
   	*SCITXBUF=assic(addr);
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=assic(data/0x1000);
   	while((*SCICTL2&0x0080)==0);
   	
   	data=data%0x1000;
   	
   	*SCITXBUF=assic(data/0x0100);
   	while((*SCICTL2&0x0080)==0);
   	
   	data=data%0x0100;
   	
   	*SCITXBUF=assic(data/0x0010);
   	while((*SCICTL2&0x0080)==0);
   	
   data=data%0x0010;
   	
   	*SCITXBUF=assic(data);
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=0x000d;
   	while((*SCICTL2&0x0080)==0);
   	
   	
}



void sio_read_data(unsigned int addr,unsigned int num_data)
{
	
	enable();
	*SCITXBUF='';
	
	*SCITXBUF=0x001b;
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=0x0052;
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=assic(addr/0x1000);
   	while((*SCICTL2&0x0080)==0);
   	
   	addr=addr%0x1000;
   	
   	*SCITXBUF=assic(addr/0x0100);
   	while((*SCICTL2&0x0080)==0);
   	
   	addr=addr%0x0100;
   	
   	*SCITXBUF=assic(addr/0x0010);
   	while((*SCICTL2&0x0080)==0);
   	
   	addr=addr%0x0010;
   	
   	*SCITXBUF=assic(addr);
   	while((*SCICTL2&0x0080)==0);
   	
   	num_data=num_data%0x1000;
   	
   	*SCITXBUF=assic(num_data/0x0100);
   	while((*SCICTL2&0x0080)==0);
   	
   	num_data=num_data%0x0100;
   	
   	*SCITXBUF=assic(num_data/0x0010);
   	while((*SCICTL2&0x0080)==0);
   	
    num_data=num_data%0x0010;
   	
   	*SCITXBUF=assic(num_data);
   	while((*SCICTL2&0x0080)==0);
   	
   	*SCITXBUF=0x000d;
   	while((*SCICTL2&0x0080)==0);
   	
   	
  delay(60000);
   	
   	
   	
}
   	
   	
   	
   	
   	
   	
   	
   	

⌨️ 快捷键说明

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