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

📄 ad.txt

📁 历届电子设计竞赛智能小车资料大全
💻 TXT
字号:
//输入通道可采用(1)单端输入(2)差分输入。可在初始化程序中完成    
//输入通道跟踪方式采用(1)低功耗方式,即启动信号发出后,固定的3个SAR CLK的跟踪时间。这样便于随时换道,软件不用延时    
//                    (2)一直跟踪方式,启动信号发出后,直接转换。所以换道后,软件需延时一段时间之后,再发出启动信号    
//AD采集子程序的时间:跟踪时间(3个SAR CLK或固定的软件延时)+16个SAR CLK的转换时间+运算时间    
//AD采集的精度与SAR CLK(由system clk分频得到)的关系不大,但SAR CLK过高,会影响采集精度    
//AD采集的温度稳定性(零点漂移)不好。处理方法:加CMOS开关减零点漂移    
//ADC的建立时间:要注意信号的内阻,参考技术手册    
//ADC可以有多种启动方式:手动、定时、外部信号/    
//ADC电路本身有增益调节,但如果结合DAC电路,可得到更大范围的增益控制      
   
#include<WYWCOMM.H>    
   
#include<C8051F020.H>    
   
   
//IO口定义    
   
   
//此模块调用其它模块的外部变量和函数的声明(此程序无)    
   
   
//此模块的宏定义(常数等)    
   
   
   
//此模块必要的库函数包含(include)    
   
   
   
   
//全局变量(静态或一般)的定义(此程序无)    
   
   
//以下为函数定义    
   
   
//--------------------------------------------------------------------------------------    
void  v_IniC8051f020ADC0_f(void)                            //运行时间:    
//功能:  c8051f020的ADC0的初始化,功能查看下面程序和芯片技术资料    
{   
AMX0CF=0x00;//全部单端输入    
AMX0SL=0x00;//开始在通道0    
ADC0CF=0xf8;//转换时钟分频系数为32(最大),增益为1    
ADC0CN=0xc0;//11000000b   低功耗模式(3个SAR clk的跟踪时间);启动模式:写1到AD0BUSY;数据右对齐    
REF0CN=0x03;//00000011b ADC0电压基准取自VREF0引脚,ADC1电压基准取自VREF1引脚,内部电压基准VREF输出使能,温度传感器关闭    
            //          温度传感器关闭    
   
}   
   
   
//--------------------------------------------------------------------------------------    
int16  s16_DataC8051f020ADC0_f(uint8 chanel)       
//功能:chanel为通道地址,范围0-8      
//      返回值:通道对应的16位有符号采集值(实际12位)    
//运行时间:至少19个SAR CLK,绝对时间与晶振和分频系数有关(2MHZ且分频系数为32(最大)时,时间约为304us)    
   
{   
int16 shuju;   
   
AMX0SL=chanel;   
   
AD0INT=0;   
AD0BUSY=1;   
   
while(AD0INT==0);   
   
   
AD0INT=0;   
shuju=ADC0;   
   
return shuju;   
   
}  

⌨️ 快捷键说明

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