ad.c

来自「33系列DSP控制ADS8381芯片实现数据采集」· C语言 代码 · 共 55 行

C
55
字号

#define ADD		0x0C00000           /*随意外部的地址*/
#define VEC_ADD	(volatile int *)0x00;

cregister unsigned int IF;   /*定义特殊的寄存器 */     
cregister unsigned int ST;
cregister unsigned int IE;    
cregister unsigned int IOF;


void INITIAL(void);
void delay(unsigned int time); 
void interrupt AD_READY(void);

long int a;
/******************主程序****************************/
main()
{
  volatile int *INT=VEC_ADD;
  INT[1]=(volatile int)  AD_READY;
  
  INITIAL();         //初始化
  while (1)
  { 
  	IOF=0x22;              //片选有效  
 	delay(5);             //40ns
  	*(int*)ADD=1;      //启动转换 
 	delay(1);
 	IOF=0x62;     
 	delay(10);
  } 
}
/***************初始化程序********************/
void INITIAL(void)
{   IF=0;                  /*初始化特殊寄存器*/
    IE=1;
	ST=0x3800; 
    IOF=0x62;                /*初始化XF0,XF1为输出*/
}                              

/**************中断程序**********************/
void interrupt AD_READY(void)
{  
  IF=0;                      /*清中断标志位*/
  delay(5);                 //40ns
  IOF=0x22;                  
  a=*(int *)ADD;            /*读转换结果*/ 
  IOF=0x62;
}                                      
/**************延时子程序**********************/
void delay(unsigned int time)       
{
   while(time--);

}                                     

⌨️ 快捷键说明

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