資源簡介
K60程序,蘇州大學源代碼,學習嵌入式很有用的學習資料

代碼片段和文件信息
//============================================================================
//文件名稱:hw_adc.c??
//功能概要:adc構件源文件
//版權所有:蘇州大學飛思卡爾嵌入式中心(sumcu.suda.edu.cn)
//版本更新:2011-11-13??V1.0???初始版本
//??????????2011-11-21???V1.1???規(guī)范排版風格
//============================================================================
#include?“hw_adc.h“
//============================================================================
//函數(shù)名稱:hw_adc_init
//函數(shù)返回:0?成功?,1?失敗
//參數(shù)說明:MoudelNumber:模塊號
//功能概要:AD初始化
//============================================================================
uint8?hw_adc_init(int?MoudelNumber)
{
????if(MoudelNumber?==?0)//模塊0
????{
???? //打開ADC0模塊時鐘
????????SIM_SCGC6?|=?(SIM_SCGC6_ADC0_MASK?);
????}
????else?if(MoudelNumber?==?1)//模塊1
????{??????
???? //打開ADC1模塊時鐘
????????SIM_SCGC3?|=?(SIM_SCGC3_ADC1_MASK?);
????}
????else
????{
????????return?0;
????}
????
????return?1;
}
//============================================================================
//函數(shù)名稱:hw_ad_once
//函數(shù)返回:16位無符號的AD值?
//參數(shù)說明:MoudelNumber:模塊號
//???????????????Channel:通道號
//??????????????accuracy:精度
//功能概要:采集一次一路模擬量的AD值????
//============================================================================
uint16?hw_adc_once(int?MoudelNumberint?Channeluint8?accuracy)//采集某路模擬量的AD值
{
uint16?result?=?0;
uint8?ADCCfg1Mode?=?0;
ADC_MemMapPtr?ADCMoudel;//保存ADC模塊地址指針
switch(accuracy)
{
?case?8:
???ADCCfg1Mode?=?0x00;
???break;
?case?12:
???ADCCfg1Mode?=?0x01;
???break;
?case?10:
???ADCCfg1Mode?=?0x02;
???break;
?case?16:
???ADCCfg1Mode?=?0x03;
???break;
?default:
???ADCCfg1Mode?=?0x00;
}
if(MoudelNumber==0)//選擇ADC模塊0
{
???ADCMoudel?=?ADC0_base_PTR;
}
else???????????????//選擇ADC模塊1
{
???ADCMoudel?=?ADC1_base_PTR;
}
//配置正常電源模式,總線時鐘,總線時鐘4分頻,長采樣時間使能,設置精度
ADC_CFG1_REG(ADCMoudel)?=?ADLPC_NORMAL
?|?ADC_CFG1_ADIV(ADIV_4)
?|?ADLSMP_LONG
?|?ADC_CFG1_MODE(ADCCfg1Mode)
?|?ADC_CFG1_ADICLK(ADICLK_BUS);
???
//配置禁止異步時鐘使能輸出,ADxxat通道選擇,高速配置,長采樣時間???
ADC_CFG2_REG(ADCMoudel)??=????MUXSEL_ADCA
?|?ADACKEN_DISABLED
?|?ADHSC_HISPEED
?|?ADC_CFG2_ADLSTS(ADLSTS_20)?;
//設置通道號
ADC_SC1_REG(ADCMoudelA)?=?AIEN_ON?|?DIFF_SINGLE?|?ADC_SC1_ADCH(Channel);
????//等待轉(zhuǎn)換完成
???? while?((?ADC_SC1_REG(ADCMoudelA)?&?ADC_SC1_COCO_MASK?)?!=?ADC_SC1_COCO_MASK)
{
}
????//讀取轉(zhuǎn)化結(jié)果
result?=?ADC_R_REG(ADCMoudelA);???????
//清ADC轉(zhuǎn)換完成標志
ADC_SC1_REG(ADCMoudelA)?&=?~ADC_SC1_COCO_MASK;
????return?result;
}
//============================================================================
//函數(shù)名稱:hw_ad_mid
//函數(shù)返回:16位無符號的AD值?
//參數(shù)說明:MoudelNumber:模塊號
//???????????????Channel:通道號
//??????????????accuracy:精度
//功能概要:中值濾波后的結(jié)果(范圍:0-4095)?
//============================================================================
uint16?hw_adc_mid(int?MoudelNumberint?Channeluint8?accurac
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1153??2011-12-26?09:17??K60蘇州大學程序\Wdog\subdir.mk
?????文件????????817??2011-12-26?09:17??K60蘇州大學程序\Wdog\wdog.args
?????文件???????1754??2011-04-13?20:21??K60蘇州大學程序\Wdog\wdog.c
?????文件???????1643??2011-12-26?09:17??K60蘇州大學程序\Wdog\wdog.d
?????文件???????1499??2011-10-28?22:54??K60蘇州大學程序\Wdog\wdog.h
?????文件???????4056??2011-12-26?09:17??K60蘇州大學程序\Wdog\wdog.obj
?????文件??????30527??2011-12-22?15:40??K60蘇州大學程序\USB\hw_usb.c
?????文件??????10679??2011-12-20?19:32??K60蘇州大學程序\USB\hw_usb.h
?????文件????????817??2011-12-26?09:17??K60蘇州大學程序\UART\hw_uart.args
?????文件???????9637??2011-12-27?17:14??K60蘇州大學程序\UART\hw_uart.c
?????文件???????1652??2011-12-26?09:17??K60蘇州大學程序\UART\hw_uart.d
?????文件???????4435??2011-12-26?17:23??K60蘇州大學程序\UART\hw_uart.h
?????文件??????15312??2011-12-26?09:17??K60蘇州大學程序\UART\hw_uart.obj
?????文件???????1183??2011-12-26?09:17??K60蘇州大學程序\UART\subdir.mk
?????文件???????6013??2011-12-22?19:46??K60蘇州大學程序\TSI\hw_tsi.c
?????文件???????6261??2011-12-22?19:13??K60蘇州大學程序\TSI\hw_tsi.h
?????文件????????935??2012-03-19?17:32??K60蘇州大學程序\settings\K60.cspy.bat
?????文件?????????63??2012-03-19?17:36??K60蘇州大學程序\settings\K60.dbgdt
?????文件????????514??2012-03-19?17:36??K60蘇州大學程序\settings\K60.dni
?????文件??????40230??2011-12-29?14:33??K60蘇州大學程序\SDHC\hw_sdhc.c
?????文件??????10292??2011-12-29?13:28??K60蘇州大學程序\SDHC\hw_sdhc.h
?????文件???????3562??2011-12-28?21:46??K60蘇州大學程序\RTC\hw_rtc.c
?????文件???????2760??2011-12-28?21:47??K60蘇州大學程序\RTC\hw_rtc.h
?????文件???????2952??2011-12-28?13:45??K60蘇州大學程序\PIT\hw_pit.c
?????文件???????1990??2011-12-28?13:57??K60蘇州大學程序\PIT\hw_pit.h
?????文件???????3269??2011-12-27?22:02??K60蘇州大學程序\PDB\hw_pdb.c
?????文件???????2421??2011-12-27?16:14??K60蘇州大學程序\PDB\hw_pdb.h
?????文件???????7305??2012-01-03?13:18??K60蘇州大學程序\LPTMR\hw_lptmr.c
?????文件???????4327??2012-01-03?13:18??K60蘇州大學程序\LPTMR\hw_lptmr.h
?????文件??????12084??2011-11-26?14:23??K60蘇州大學程序\I2C\hw_i2c.c
............此處省略54個文件信息
評論
共有 條評論