?? ad.asm
字號:
//====================================================================================
//文 件 名: AD.asm
//功能描述: 各通道A/D轉換函數
//維護記錄: 2006年6月27 by hongyan.Feng
//====================================================================================
.INCLUDE SPCE061A.inc
.CODE
//==============================================================================
//匯編語言格式:_ADGet
//C語言格式:unsigned int ADGet(void)
//功能描述:通道1的A/D轉換函數
//入口參數:無
//出口參數:無
//===============================================================================
.PUBLIC _ADGet
_ADGet:
r1 = 0x0000
[P_DAC_Ctrl] = r1
r1 = 0x0001 //選擇ADC通道0和通道1
[P_ADC_MUX_Ctrl] = r1
r1 = 0x0001 //使能ADC
[P_ADC_Ctrl] = r1
r1 = [P_ADC_MUX_Data] //啟動ADC
?Loop:
r1 = [P_ADC_MUX_Ctrl]
test r1,0x8000 //判斷轉換是否完成?
jz ?Loop //沒有則繼續轉換
r1 = [P_ADC_MUX_Data] //取轉換數據
r1 = r1 lsr 4
r1 = r1 lsr 2 //右移六位,只取八位數據進行顯示
r2 = 0x0001
[P_Watchdog_Clear] = r2 //清看門狗
retf
//==============================================================================
//匯編語言格式:_ADGet
//C語言格式:unsigned int ADGet(void)
//功能描述:通道2的A/D轉換函數
//入口參數:無
//出口參數:無
//===============================================================================
.PUBLIC _ADGet1
_ADGet1:
r1 = 0x0000
[P_DAC_Ctrl] = r1
r1 = 0x0002 //選擇ADC通道0和通道1
[P_ADC_MUX_Ctrl] = r1
r1 = 0x0001 //使能ADC
[P_ADC_Ctrl] = r1
r1 = [P_ADC_MUX_Data] //啟動ADC
?Loop:
r1 = [P_ADC_MUX_Ctrl]
test r1,0x8000 //判斷轉換是否完成?
jz ?Loop //沒有則繼續轉換
r1 = [P_ADC_MUX_Data] //取轉換數據
r1 = r1 lsr 4
r1 = r1 lsr 2 //右移六位,只取八位數據進行顯示
r2 = 0x0001
[P_Watchdog_Clear] = r2 //清看門狗
retf
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -