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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? f31x_adc0_externalinput.c

?? C8051F31系列單片機(jī)的例子
?? C
?? 第 1 頁 / 共 2 頁
字號(hào):
//-----------------------------------------------------------------------------
// F31x_ADC0_ExternalInput.c
//-----------------------------------------------------------------------------
// Copyright 2006 Silicon Laboratories, Inc.
// http://www.silabs.com
//
// Program Description:
// --------------------
//
// This example code takes and averages 2048 analog measurements from input
// P2.5 using ADC0, then prints the results to a terminal window via the UART.
//
// The system is clocked by the internal 24.5MHz oscillator.  Timer 2 triggers
// a conversion on ADC0 on each overflow.  The completion of this conversion
// in turn triggers an interrupt service routine (ISR).  The ISR averages 
// 2048 measurements, then prints the value to the terminal via printf before
// starting another average cycle.
//
// The analog multiplexer selects P2.5 as the positive ADC0 input.  This 
// port is configured as an analog input in the port initialization routine.
// The negative ADC0 input is connected via mux to ground, which provides
// for a single-ended ADC input.
//
// A 100kohm potentiometer may be connected as a voltage divider between 
// P0.0 and AGND on the terminal strip as shown below:
//
// ---------
//          |
//          |
//          |        
//         o| P0.0 ----| 
//         o| GND   ---|<-|
//         o|             |
//         o| P2.5--------|        
//          |
//----------   
// C8051F310-TB
//
// Note that the ADC reference voltage is tied to Vdd, not a precision 
// internal reference.  This limits the precision of the measurement,
// as Vdd is set by the regulator on the board, not the C8051F310.
//
// Terminal output is done via printf, which directs the characters to 
// UART0.  A UART initialization routine is therefore necessary.
//
// ADC Settling Time Requirements, Sampling Rate:
// ----------------------------------------------
//
// The total sample time per input is comprised of an input setting time 
// (Tsettle), followed by a conversion time (Tconvert): 
//
// Tsample  = Tsettle + Tconvert
//
// |--------Settling-------|==Conversion==|----Settling--- . . .
// Timer 2 overflow        ^                          
// ADC0 ISR                               ^       
//
// The ADC input voltage must be allowed adequate time to settle before the 
// conversion is made.  This settling depends on the external source
// impedance, internal mux impedance, and internal capacitance.
// Settling time is given by:
//
//                   | 2^n |
//    Tsettle =   ln | --- | * Rtotal * Csample
//                   | SA  |       
//
// In this application, assume a 100kohm potentiometer as the voltage divider.
// The expression evaluates to:
//
//                   | 2^10 |
//    Tsettle =   ln | ---- | * 105e3 * 5e-12 = 4.4uS
//                   | 0.25 |    
//
// In addition, one must allow at least 1.5uS after changing analog mux 
// inputs or PGA settings.  The settling time in this example, then, is 
// dictated by the large external source resistance.
//
// The conversion is 10 periods of the SAR clock <SAR_CLK>.  At 3 MHz, 
// this time is 10 * 400nS = 3.3 uS.
//
// 
// Tsample, minimum  = Tsettle + Tconvert
//                   = 4.4uS + 3.3uS 
//                   = 7.7 uS
// 
// Timer 2 is set to start a conversion  every 100uS, which is far longer 
// than the minimum required.
//
// F310 Resources:
// ---------------
// Timer1: clocks UART
// Timer2: overflow initiates ADC conversion
//
// How To Test:
// ------------
// 1) Download code to a 'F310 device on a C8051F310-TB development board
// 2) Connect serial cable from the transceiver to a PC
// 3) On the PC, open HyperTerminal (or any other terminal program) and connect
//    to the COM port at <BAUDRATE> and 8-N-1
// 4) Connect a variable voltage source (between 0 and VDD) 
//    to P2.5, or a potentiometer voltage divider as shown above.
// 5) HyperTerminal will print the voltage measured by the device if
//    everything is working properly
//
// FID:            31X000011
// Target:         C8051F310
// Tool chain:     Keil C51 7.50 / Keil EVAL C51
// Command Line:   None
//
//
// Release 1.0
//    -Initial Revision (clm)
//    -24-Jul-06


//-----------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------
#include "c8051F310.h"                 // SFR declarations
#include <stdio.h>

//-----------------------------------------------------------------------------
// 16-bit SFR Definitions for 'F31x
//-----------------------------------------------------------------------------

sfr16 TMR2RL   = 0xca;                 // Timer2 reload value 
sfr16 TMR2     = 0xcc;                 // Timer2 counter
sfr16 ADC0     = 0xbd;                 // ADC0 result

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

#define SYSCLK       24500000          // SYSCLK frequency in Hz
#define BAUDRATE     115200            // Baud rate of UART in bps

sbit LED = P3^3;                       // LED='1' means ON

//-----------------------------------------------------------------------------
// Function PROTOTYPES
//-----------------------------------------------------------------------------
void SYSCLK_Init (void);
void PORT_Init (void);
void Timer2_Init(void);
void ADC0_Init(void);
void UART0_Init (void);


void ADC_Init()
{	
    int SARCLK=3000000;	// 3 Mhz
        // Use AD0BUSY as conversion enable
	ADC0CN=0x40;					// ADC with normal track mode
	//REF0CN=0x0e;					// Enable temp sensor and use on chip Vref (VDD)
//	REF0CN=0x0A;					// Enable temp sensor and use on external Vref
	AMX0N=0x1F;						// Single-Ended inputs
	ADC0CF=(SYSCLK/SARCLK-1)<<3;	// Conversion clock setting & results are right-justified
	ADC0CF |= 0x00;                     // right-justify results 
	EIE1 &= 0xF1;					// Disable ADC interrupt & disable win compare interrupts
	AD0EN=1;						// Enable ADC, ready for data conversion
}

unsigned int ADC_Read_Ch(unsigned char chan_num)
{	
    unsigned long result;
	static int measure = 2048;
	static unsigned long accumulator = 0;
	unsigned long mV;                   // measured voltage in mV



	AMX0P = chan_num;					// Select chan to be read thru the MUX
	AD0INT = 0;							// Clear conversion complete indicator
	AD0BUSY = 1;						// Initiate conversion
	
	while (!AD0INT);					// Wait for convesion completed.
	
   

   result = ADC0H;						// Stuff converted data
   result = (result << 8) | ADC0L; 


   accumulator += result;
   measure--;

   if(measure == 0)
   {  
      measure = 2048;
      result = accumulator / 2048;
      accumulator=0;

      // The 10-bit ADC value is averaged across 2048 measurements.  
      // The measured voltage applied to P1.4 is then:
      //
      //                           Vref (mV)
      //   measurement (mV) =   --------------- * result (bits) 
      //                       (2^10)-1 (bits)

      mV =  result * 3250 / 1023;   
      printf("P3.1 voltage: %ld mV\n",mV);
   }

	
	
	return result;
}

//-----------------------------------------------------------------------------
// MAIN Routine
//-----------------------------------------------------------------------------
void main (void) 
{
   PCA0MD &= ~0x40;                    // WDTE = 0 (clear watchdog timer 
                                       // enable)

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美日本一区二区三区| 国产亚洲成年网址在线观看| 狠狠色丁香婷婷综合| 自拍偷在线精品自拍偷无码专区 | 久久精品国产澳门| 亚洲精品欧美专区| 国产女主播在线一区二区| 欧美电影一区二区| 91蝌蚪porny| 波多野结衣的一区二区三区| 国产中文一区二区三区| 午夜欧美一区二区三区在线播放| 国产精品久久久久久久久免费丝袜 | 欧美理论片在线| 色吊一区二区三区| zzijzzij亚洲日本少妇熟睡| 国内精品伊人久久久久av一坑| 亚洲电影你懂得| 亚洲品质自拍视频网站| 中文在线免费一区三区高中清不卡| 日韩一区二区三区视频在线观看| 91福利精品第一导航| 91福利精品视频| 成人精品国产福利| 国产精品88888| 狠狠色丁香久久婷婷综合_中| 美女精品自拍一二三四| 欧美aaaaa成人免费观看视频| 亚洲va欧美va人人爽午夜| 一区二区视频在线| 亚洲美女视频一区| 亚洲人成网站在线| 日韩毛片精品高清免费| 成人欧美一区二区三区| 国产精品理伦片| 日韩理论片网站| 亚洲人吸女人奶水| 亚洲综合在线视频| 亚洲成人动漫一区| 亚洲成人精品一区| 丝袜亚洲另类欧美| 日韩精品福利网| 麻豆精品一区二区| 国产一区二区三区在线观看免费视频| 蜜乳av一区二区| 国产精品99久久久久久似苏梦涵| 国产精一区二区三区| 国产精品一区在线| 成人黄色av网站在线| 99久久er热在这里只有精品15 | 精品不卡在线视频| 国产喂奶挤奶一区二区三区| 国产精品福利av| 亚洲图片一区二区| 日韩av高清在线观看| 精品亚洲国产成人av制服丝袜 | 久久99精品国产| 成人性生交大片免费看中文网站| 成人福利视频网站| 欧美影视一区二区三区| 欧美精品在线观看一区二区| 日韩欧美电影在线| 欧美极品另类videosde| 亚洲精品成人悠悠色影视| 爽好多水快深点欧美视频| 国产一二三精品| 91黄色免费版| 日韩精品专区在线| 亚洲欧美自拍偷拍色图| 亚洲v精品v日韩v欧美v专区 | 色噜噜狠狠成人网p站| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 3d动漫精品啪啪一区二区竹菊| 2023国产精品自拍| 亚洲精品视频在线观看网站| 日韩精品91亚洲二区在线观看 | jlzzjlzz亚洲日本少妇| 欧美色网站导航| 国产亚洲欧美色| 亚洲国产精品一区二区久久恐怖片| 狠狠色狠狠色合久久伊人| 日本韩国欧美三级| 久久午夜羞羞影院免费观看| 免费在线成人网| 成人精品国产一区二区4080| 91精品国产色综合久久ai换脸 | 天天av天天翘天天综合网| 国产不卡视频在线播放| 欧美三日本三级三级在线播放| 国产日韩欧美一区二区三区乱码| 五月天欧美精品| www.欧美日韩国产在线| 日韩你懂的电影在线观看| 亚洲欧美日韩国产综合| 国产福利一区在线观看| 欧美精品日韩综合在线| 国产精品电影一区二区| 国内精品久久久久影院薰衣草| 91搞黄在线观看| 国产精品欧美经典| 狠狠色丁香久久婷婷综合丁香| 欧美系列一区二区| 亚洲欧美自拍偷拍色图| 国产剧情一区二区三区| 欧美一区二区三区视频免费 | 亚洲欧美偷拍三级| 国产美女娇喘av呻吟久久| 欧美日韩大陆在线| 亚洲精品视频在线看| a美女胸又www黄视频久久| 欧美精品一区二区在线观看| 日韩电影网1区2区| 精品视频在线免费看| 亚洲视频一区在线| 成人一区在线看| 久久久精品免费免费| 精品一区在线看| 日韩午夜激情电影| 日韩国产欧美在线播放| 欧美在线综合视频| 亚洲欧美日本韩国| 99re热这里只有精品免费视频| 国产精品区一区二区三区| 国产91色综合久久免费分享| 精品成人私密视频| 国内精品伊人久久久久av一坑| 日韩精品一区二区三区四区| 青青青伊人色综合久久| 91精品在线一区二区| 日日噜噜夜夜狠狠视频欧美人| 欧美日韩国产另类一区| 亚洲 欧美综合在线网络| 欧美丝袜丝交足nylons图片| 亚洲国产一区二区视频| 欧美日韩国产大片| 日韩精品亚洲一区| 日韩三级伦理片妻子的秘密按摩| 久色婷婷小香蕉久久| 欧美精品一区二区久久婷婷| 高清不卡一区二区在线| 国产精品色在线观看| caoporn国产一区二区| 国产精品成人在线观看| 91精彩视频在线| 五月天欧美精品| 欧美成人一区二区三区片免费| 久久丁香综合五月国产三级网站| 久久综合九色综合欧美就去吻| 国产一区二区三区av电影 | 久久看人人爽人人| 国产91精品在线观看| 亚洲丝袜另类动漫二区| 欧美中文字幕一区二区三区| 首页综合国产亚洲丝袜| 欧美r级电影在线观看| 高清不卡一区二区在线| 亚洲精品少妇30p| 91麻豆精品国产自产在线| 精品一区二区在线观看| 国产精品视频你懂的| 欧洲一区在线电影| 蜜桃久久精品一区二区| 国产精品白丝在线| 欧美日韩精品二区第二页| 国产在线精品一区二区三区不卡 | 色婷婷久久久久swag精品| 亚洲va天堂va国产va久| 久久婷婷成人综合色| 91在线看国产| 免费人成在线不卡| 中文字幕第一区二区| 欧美日韩精品欧美日韩精品| 国产精品一线二线三线精华| 亚洲男人的天堂av| 精品国产在天天线2019| 91免费版pro下载短视频| 日韩在线观看一区二区| 亚洲国产岛国毛片在线| 欧美日韩极品在线观看一区| 国产成人精品免费| 性欧美大战久久久久久久久| 国产日韩欧美不卡在线| 欧美日韩视频在线第一区| 国产成人免费9x9x人网站视频| 亚洲午夜视频在线观看| 国产日产欧美精品一区二区三区| 欧美亚洲日本一区| 成人网男人的天堂| 免费在线欧美视频| 亚洲精品国产第一综合99久久| 欧美成人欧美edvon| 欧美亚洲禁片免费| 成人av一区二区三区| 经典三级一区二区| 午夜精品久久久久久久蜜桃app| 国产精品伦理在线| 2014亚洲片线观看视频免费| 欧美日韩中文国产| 99re亚洲国产精品| 成人午夜激情影院|