亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? com.c

?? 本人自己寫的用C8051F020驅動的DAC8541程序,直接對口操作,信號非常好,已經完全經過調試
?? C
字號:
#pragma  REGPARMS

#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

#include <absacc.h>
#include <c8051f020.h>  
#include <intrins.h>
#define   SDA   0x20//BIT0
#define   SCL   0x10//BIT1
#define   _NOP()  _nop_()
#define   DIN   P4
#define uchar unsigned char
#define uint  unsigned int
#define   S_SDA P4|=SDA//DDIR|=SDA,DOUT|=SDA
#define   C_SDA P4&=~SDA//DDIR|=SDA,DOUT&=~SDA
#define   S_SCL P4|=SCL//DDIR|=SCL,DOUT|=SCL
#define   C_SCL P4&=~SCL//DDIR|=SCL,DOUT&=~SCL
//#define   SDA_IN _NOP//DDIR&=~SDA
#define   READ_SDA  _nop_()//(DIN&SDA)
//#define   delay() _nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_(),_nop_()
/***************************************************/
unsigned char ack=0;
/********************************************/

#include "com.h"

sfr16 DP       = 0x82;                 // data pointer
sfr16 TMR3RL   = 0x92;                 // Timer3 reload value
sfr16 TMR3     = 0x94;                 // Timer3 counter
sfr16 ADC0     = 0xbe;                 // ADC0 data
sfr16 ADC0GT   = 0xc4;                 // ADC0 greater than window
sfr16 ADC0LT   = 0xc6;                 // ADC0 less than window
sfr16 RCAP2    = 0xca;                 // Timer2 capture/reload
sfr16 T2       = 0xcc;                 // Timer2
sfr16 RCAP4    = 0xe4;                 // Timer4 capture/reload
sfr16 T4       = 0xf4;                 // Timer4
sfr16 DAC0     = 0xd2;                 // DAC0 data
sfr16 DAC1     = 0xd5;                 // DAC1 data

//-----------------------------------------------------------------------------
// Global CONSTANTS
//-----------------------------------------------------------------------------

#define BAUDRATE     9600              // Baud rate of UART in bps
#define SYSCLK       11059200          // SYSCLK frequency in Hz
#define SAMPLE_RATE  50000             // Sample frequency in Hz
#define INT_DEC      256               // integrate and decimate ratio


unsigned int ii,j;
unsigned int xdata chii;
float f;
unsigned int VCH0,VCH1,VCH2,VCH3,VCH4,VCH5,VCH6,VCH7;
unsigned int xdata BB[1024];
unsigned char bufer[8];
//**************----------------------------------------
/*void chad(int buffer[],int n)      //invert the array BB
{ 
 int i,j,temp,m=(n-1)/2;
 for(i=0;i<=m;i++)
 {j=n-1-i;
  temp=buffer[i];buffer[i]=buffer[j];buffer[j]=temp;}
  return;
 
 }
/**************------------------------------------------
*/

void delay()
{
	uchar i,j;
	for(i=0;i<=100;i++)
		{
			for(j=0;j<=100;j++)
				;
		}
}

//***********************************************************************************
void SYSCLK_Init (void)
{
   int i;                              // delay counter

   OSCXCN = 0x67;                      // start external oscillator with
                                       // 22.1184MHz crystal

   for (i=0; i < 256; i++) ;           // XTLVLD blanking interval (>1ms)

   while (!(OSCXCN & 0x80)) ;          // Wait for crystal osc. to settle

   OSCICN = 0x88;                      // select external oscillator as SYSCLK
                                       // source and enable missing clock
                                       // detector
}

//-----------------------------------------------------------------------------
// PORT_Init   use cpumodel.pcb
//-----------------------------------------------------------------------------

void PORT_Init (void)
{
   	XBR0    = 0x06;  //Enable UART0      P0.0=TXD0      P0.1=RXD0
                     //Enable SPI        P0.2=SCK       P0.3=MISO
                     //                  P0.4=MOSI      P0.5=NSS
					
   	XBR1    = 0x00;  //
                     
                    

	XBR2    = 0x42;  //Enable pin on 
					
  					 //Enable UART1      P0.4=TXD1     P0.5=RXD1 
					                
   

    P1MDOUT |= 0x40;  // Enable          P1.6 output
    
//	EMI0CF=0x37;
    EMI0CF=0x3B;      //RAM set: D5=1   外部Ram on p4-p7              
                      //         d4=1   不復用
                      //         d3d2=10 <4k use in chip , >4k:use outside
//	EMI0CF=0x3F;	  //         d3d2=11 only use outside  To:NP441 2006.8.8
                   
}

//-----------------------------------------------------------------------------
// UART0_Init
//-----------------------------------------------------------------------------
// Configure the UART0 using Timer1, for <baudrate> and 8-N-1.

void UART0_Init (void)
{
   SCON0   = 0x50;                     // SCON0: mode 1, 8-bit UART, enable RXD
   TMOD    = 0x20;                     // TMOD: timer 1, mode 2, 8-bit reload
   TH1    = -(SYSCLK/BAUDRATE/16);     // set Timer1 reload value for baudrate
   TR1    = 1;                         // start Timer1
   CKCON |= 0x10;                      // Timer1 uses SYSCLK as time base
   PCON  |= 0x80;                      // SMOD00 = 1
   TI0    = 1;                         // Indicate TX0 ready
}


//-------------------------------------------------------
//      ADC0初始化
//-------------------------------------------------------

void ADC0_init (void)
{
   	ADC0CN=0x81;    // ADC0 d7=1:開,      d6=0:跟蹤方試,
	                //      d5:AD0 INT標志,d4:AD0BUSY
	                //     d3d2=00:AD)BUSY=1起動,
					//     d0=1:數據左對齊  
                    
   	ADC0CF=0x48;    //ADC0時鐘為系統時鐘 5分頻  放大器=1
	AMX0CF=0x00;    //Ain0-Ain7 單端輸入0-3.3v
	
	AMX0SL=0x07;    //轉換CH7
	for(ii=0;ii<40;ii++){;}
	AD0BUSY=1;
	for(ii=0;ii<400;ii++){;}
	ADC0CN =0x81;
	VCH7=ADC0>>4;
	
	AMX0SL=0x06;    //轉換CH6
	for(ii=0;ii<40;ii++){;}
	AD0BUSY=1;
    for(ii=0;ii<400;ii++){;}
	ADC0CN =0x81;
	VCH6=ADC0>>4;


}

//-----------------------------------------------------
//DAC_init
//-----------------------------------------------------
void DAC_init(void)
{
   DAC0CN=0x80;//DAC0 enable 更新數據在寫DAC0 高字節時,高4位在DAC0H中,低8位在DAC0L中
   DAC1CN=0x80;//有問題,在C中高位在前,低位在后,而SFR中低位在前,
   REF0CN=0x0b;//
}


 /******************************************
啟動總線函數
**************************************/
void  start()
{     
      S_SDA;
      _NOP();
      S_SCL;
      delay();
      C_SDA;
      delay();
      C_SCL;
      _NOP();
      _NOP();
}
/************************************
停止總線函數
**************************************/
void stop()
{   
     C_SDA;
	 _NOP();
	 S_SCL;
	 _NOP();

    // C_SCL;
    _NOP();
     //C_SDA;
      delay();
   //   S_SCL;
      delay();
      S_SDA;   
    _NOP();
    _NOP();
    _NOP();
    _NOP();     
}
/************************************
發送一個字節函數
**************************************/
void SendByte(uchar c)
{
      uchar i;    
      for(i=0;i<8;i++)
          {
            if((c<<i)&0x80)
                S_SDA;
            else
                C_SDA;
            delay();
            S_SCL;
            delay();
            C_SCL;
            delay();
          }
         _NOP();
       _NOP();
       _NOP(); 
		S_SDA;
  		_NOP();
       _NOP();
       _NOP(); 
		 S_SCL;
       _NOP();
       _NOP();
       _NOP();  
 	   i=P4;
      if(i==0xff)
          ack=0;
      else
          ack=1;

       delay();
      C_SCL;
     
      _NOP();
     _NOP();
}
/************************************
停止總線函數
**************************************/
void send_ack(uchar a)
{     
      if(a==0)       
       { 
       C_SDA;
       delay();
       S_SCL;
       delay();
       C_SCL;
       delay();
       S_SDA;
      }
      else
       { 
        S_SDA;          
        delay();
        S_SCL;
        delay();
        C_SCL;
        delay();
      }      
}
/************************************
接收一個字節函數
**************************************/
uchar RcvByte()
{
      uchar retc;
      uchar i,j;
      retc=0;   
//      SDA_IN;
		S_SDA;
      for(i=0;i<8;i++)
        {       
		 _nop_();
		  C_SCL;
          delay();
          S_SCL;
          delay();       
          retc=retc<<1;
     //     SDA_IN;
        //  if(READ_SDA==SDA)//read p4in 
		j=P4;
		if(P4&SDA==SDA)
              retc+=1;                         
         delay();
         C_SCL;
         delay();
         }     
      return(retc);        
}
/************************************
接收一個字節函數
**************************************/
uchar ISendByte(uchar sla,uchar c)
{
      start();
      SendByte(sla);
      if(ack==0)
          return(0);
      SendByte(c);
      if(ack==0)
          return(0);
      stop();
      return(1);
}
/************************************
發送一個數據串函數
**************************************/
uchar ISendstr(uchar sla,uchar suba,uchar *s,uchar no)
{
      uchar i;     
      start();
      SendByte(sla);
      if(ack==0)
          return(0);
      SendByte(suba);
      if(ack==0)
          return(0);
     for(i=0;i<no;i++)
          {
            SendByte(*s);
            if(ack==0)
              return(0);
            s++;
            suba++;
          }
      stop();     
      return(1);  
}
/************************************
接收多個數據串函數
**************************************/
uchar IRcvbyte(uchar sla,uchar *c)
{
      start();
      SendByte(sla+1);
      if(ack==0)
	  {
          return(0);
		  }

      *c=RcvByte();
      send_ack(1);
      stop();
      return(1);
}
//check
uchar IRcvStr(uchar sla,uchar suba,uchar *s,uchar no)
{
      uchar i;
      start();
      SendByte(sla);
      if(ack==0)
          return(0);
      SendByte(suba);
      if(ack==0)
          return(0);
      start();
      SendByte(sla+1);
      if(ack==0)
          return(0);
      for(i=0;i<no-1;i++)
          {
              *s=RcvByte();
              send_ack(0);
              s++;             
          }
      *s=RcvByte();
      send_ack(1);
      stop();
      return(1);
}

 

/*******************************************************************
*			    moli-1				                               *
*			     Ver 0.0				                           *
*				  by ren jia fu		                               *
*				   2007.9.8			                               *
*********************************************************************/
uchar  rom_rec[7];
main()
{
  
 
    /***********************************************
	  初始化系統
	*************************************************/
   
   
   	WDTCN = 0xde;    	// disable watchdog timer
   	WDTCN = 0xad;
      
   	SYSCLK_Init ();  	// initialize oscillator
   	PORT_Init ();    	// initialize crossbar and GPIO
   //*******************----------------------------- 
	
    //******************-------------------------------
	UART0_Init (); 		// initialize UART0
  
   	DAC_init();		    // initialize DAC0 DAC1

    /***********************************************
	  測試DAC0 DAC1
	*************************************************/
  	chii=1023;
   	OUTDAC0();
   	chii=0;
   	DAC1=chii;

 
 /***********************************************
	  主程序
  *************************************************/
 
  P2=0x00;
  P2=0x01;
  
   for(ii=0;ii<1024;ii++)
   {
   	f=0.0061357*ii;
    f=32767*sin(f);
   	chii=f;
	BB[ii]=chii;
   //BB[ii]=ii;
	}
 
   DAC8541();
/*

	for(ii=0;ii<1024;ii++)
   {
	 DAC0=BB[ii];
	 DAC1=DAC0;
     bufer[0]=ii/256;
	 bufer[1]=ii-256*bufer[0];

	 P6=bufer[0];
     P7=bufer[1];
     
	 }
	 */
begin1:
        DAC712();

   goto begin1;
  
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产福利91精品| 中文字幕av在线一区二区三区| 精品国产凹凸成av人网站| 中文字幕综合网| 久久国产福利国产秒拍| 欧美日韩精品一区二区天天拍小说 | 亚洲欧美在线高清| 蓝色福利精品导航| 正在播放一区二区| 亚洲一区二区综合| 成a人片国产精品| 久久久久亚洲蜜桃| 蜜桃视频在线观看一区| 在线电影院国产精品| 亚洲综合无码一区二区| 不卡视频免费播放| 国产日产欧美一区二区视频| 久久se这里有精品| 91精品国产色综合久久不卡电影| 亚洲精品乱码久久久久| 99精品久久久久久| 国产精品无圣光一区二区| 激情五月激情综合网| 精品国产凹凸成av人网站| 毛片不卡一区二区| 91精品国产欧美一区二区18| 天堂在线一区二区| 欧美日韩国产大片| 日韩av不卡一区二区| 538在线一区二区精品国产| 亚洲成人一区在线| 日韩一区二区免费在线电影| 视频一区视频二区中文| 6080午夜不卡| 久久国内精品自在自线400部| 日韩欧美三级在线| 国产一区二区女| 日本一区二区在线不卡| av亚洲精华国产精华| 亚洲精品日韩一| 欧美另类videos死尸| 免费看欧美女人艹b| 精品国产乱码久久| 成人免费高清视频在线观看| 亚洲人成人一区二区在线观看| 日本韩国精品一区二区在线观看| 亚洲一二三区在线观看| 日韩一区二区三区电影在线观看| 久久国产免费看| 国产精品国产三级国产普通话99 | 2021国产精品久久精品| 国产91综合网| 一区二区三区四区精品在线视频| 91国内精品野花午夜精品| 麻豆精品新av中文字幕| 国产性天天综合网| 欧美最新大片在线看| 欧美96一区二区免费视频| 国产亚洲污的网站| 欧美午夜片在线看| 国产一区二区在线影院| 亚洲激情av在线| 亚洲精品一区二区三区99| 91首页免费视频| 日本欧美在线观看| 国产精品久久久久久久岛一牛影视 | 日本aⅴ亚洲精品中文乱码| 久久久久国产精品麻豆| 色婷婷综合激情| 激情六月婷婷久久| 亚洲一区二区四区蜜桃| 2019国产精品| 欧美日韩国产中文| 成人三级伦理片| 日本vs亚洲vs韩国一区三区二区 | 性感美女久久精品| 国产精品看片你懂得| 欧美一区二区三区喷汁尤物| 成人黄动漫网站免费app| 天堂成人国产精品一区| 欧美极品另类videosde| 欧美一区二区三区四区高清| 91麻豆国产福利精品| 国产一区二区三区四| 五月激情六月综合| 亚洲精品免费在线观看| 久久女同性恋中文字幕| 欧美一区二区成人| 色婷婷激情综合| 成人性视频网站| 久久不见久久见免费视频1| 亚洲bdsm女犯bdsm网站| 青娱乐精品视频| 亚洲国产成人av| 亚洲欧美aⅴ...| 国产精品人妖ts系列视频| 精品乱人伦一区二区三区| 欧美日本在线视频| 欧美色大人视频| 色综合天天综合网国产成人综合天 | 亚洲精品在线网站| 91精品国产色综合久久ai换脸| 欧美日韩高清在线| 欧美日韩小视频| 这里只有精品99re| 69堂成人精品免费视频| 欧美日韩亚洲丝袜制服| 欧美日韩精品欧美日韩精品 | 91性感美女视频| 波多野洁衣一区| 成人国产一区二区三区精品| 国产精品一级二级三级| 国产精品一区二区三区乱码 | 亚洲一二三区在线观看| 亚洲一二三四在线| 一区二区三区在线看| 亚洲综合在线第一页| 樱桃视频在线观看一区| 亚洲精品一二三四区| 亚洲自拍偷拍九九九| 亚洲国产日产av| 日韩av在线发布| 国内久久精品视频| 国产经典欧美精品| 99久久伊人精品| 欧美日韩一卡二卡| 日韩欧美国产综合| 久久精品视频在线看| 亚洲欧洲精品一区二区三区 | 亚洲男人的天堂av| 一区二区三区四区高清精品免费观看| 一区二区三区影院| 蜜臀久久久99精品久久久久久| 国产又黄又大久久| 成人美女视频在线观看18| 色婷婷精品大视频在线蜜桃视频| 欧美日韩午夜在线| 国产午夜精品久久久久久久| 国产精品免费观看视频| 亚洲综合精品久久| 激情五月播播久久久精品| www.日韩在线| 日韩欧美国产成人一区二区| 中文字幕第一区二区| 亚洲国产精品影院| 国产自产高清不卡| 色猫猫国产区一区二在线视频| 欧美精品黑人性xxxx| 精品国产成人系列| 亚洲已满18点击进入久久| 久久国产精品区| 91在线播放网址| 精品欧美一区二区在线观看| 日韩美女啊v在线免费观看| 奇米色一区二区| 93久久精品日日躁夜夜躁欧美| 欧美丰满少妇xxxbbb| 国产精品丝袜黑色高跟| 蜜桃久久久久久久| 欧美综合一区二区| 国产日韩欧美一区二区三区乱码| 亚洲国产三级在线| jvid福利写真一区二区三区| 欧美mv日韩mv亚洲| 亚洲成人动漫在线观看| 不卡一区二区中文字幕| 精品88久久久久88久久久| 亚洲一区二区三区免费视频| 成人免费毛片app| 精品国产伦一区二区三区免费| 亚洲精品免费一二三区| 欧美电影免费提供在线观看| 亚洲视频资源在线| 国产九色sp调教91| 欧美一级日韩不卡播放免费| 亚洲高清免费视频| 色婷婷av一区二区三区大白胸| 国产亚洲综合在线| 日本vs亚洲vs韩国一区三区| 欧美日韩不卡在线| 一区二区免费视频| 99r国产精品| 中文字幕日韩一区| 成人精品小蝌蚪| 国产精品久久久一本精品| 国产一区二区三区视频在线播放| 日韩一卡二卡三卡| 日韩不卡一区二区三区| 91麻豆精品国产91久久久资源速度| 亚洲精品国产成人久久av盗摄| 成人中文字幕电影| 中文字幕在线一区免费| 成人美女视频在线观看18| 国产欧美日韩在线观看| 国产精品影视网| 国产日产欧美一区二区视频| 国产不卡高清在线观看视频| 中文字幕欧美激情一区| 不卡的av网站| 亚洲欧洲综合另类在线|