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

📄 buf_man.c

📁 isp1160_pci_usb_host_MP100.rar USB主机设备程序~!
💻 C
字号:
#define ram_size 4096

#include "hc_comm.h"
#include "hw_acces.h"

void read_atl(unsigned int *a_ptr, unsigned int data_size)
{
 int cnt;

 write_register16(Com16_HcTransferCounter,data_size*2);
 outport(g_1161_command_address,Com16_HcATLBufferPort);

 cnt=0;
 do
  {
   *(a_ptr+cnt)=inport(g_1161_data_address);
   cnt++;
  }
 while(cnt<(data_size));
}

void erase_all(void)
{
 int cnt;

 write_register16(Com16_HcTransferCounter,ram_size);
 outport(g_1161_command_address,Com16_HcATLBufferPort|0x80);

 cnt=0;
 do
  {
   outport(g_1161_data_address,0x0000);
   cnt++;
  }
 while(cnt<(ram_size/2));
}

void erase_itl(void)
{
 int cnt;

 write_register16(Com16_HcTransferCounter,ram_size);
 outport(g_1161_command_address,Com16_HcITLBufferPort|0x80);

 cnt=0;
 do
  {
   outport(g_1161_data_address,0x0000);
   cnt++;
  }
 while(cnt<(ram_size/2));
}

void write_atl(unsigned int *a_ptr, unsigned int data_size)
{
 int cnt;

 write_register16(Com16_HcTransferCounter,data_size*2);
 outport(g_1161_command_address,Com16_HcATLBufferPort|0x80);

 cnt=0;
 do
  {
   outport(g_1161_data_address,*(a_ptr+cnt));
   cnt++;
  }
 while(cnt<(data_size));
}

void read_itl(unsigned int *a_ptr, unsigned int data_size)
{
 int cnt;

 write_register16(Com16_HcTransferCounter,data_size*2);
 outport(g_1161_command_address,Com16_HcITLBufferPort);

 cnt=0;
 do
  {
   *(a_ptr+cnt)=inport(g_1161_data_address);
   cnt++;
  }
 while(cnt<(data_size));
}

void write_itl(unsigned int *a_ptr, unsigned int data_size)
{
 int cnt;

 write_register16(Com16_HcTransferCounter,data_size*2);
 outport(g_1161_command_address,Com16_HcITLBufferPort|0x80);

 cnt=0;
 do
  {
   outport(g_1161_data_address,*(a_ptr+cnt));
   cnt++;
  }
 while(cnt<(data_size));
}

void see_buf(void)
{
 unsigned int word_cnt,test_target;
 unsigned int test_size,test_word;
 unsigned int buf_image[ram_size/2];
 unsigned int *ptr;

 clrscr();

 test_size=ram_size/2;
 ptr=buf_image;

 read_atl(ptr,ram_size/2);

 gotoxy(1,2);
 word_cnt=0;
  do
   {
	test_word=buf_image[word_cnt];
	word_cnt++;
	printf("%04X ",test_word);
	if(word_cnt%256==0)
	{
	 printf("\n  Memory Map Page %4X",word_cnt>>8);
	 printf("\n  From Address %06X to %06X",(word_cnt<<1)-512,word_cnt<<1);
	 printf("\n  From Address %06d to %06d",(word_cnt<<1)-512,word_cnt<<1);

	 read_key(1);
	 gotoxy(1,2);
	}
   }
  while(word_cnt<test_size);

 if(word_cnt<256) {read_key(1); }
}

⌨️ 快捷键说明

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