ARM中關(guān)于設(shè)置寄存器的一點(diǎn)看法
#define rADCCON(*(volatile unsigned*)0x58000000) //ADC控制寄存器 #define rADCTSC(*(volatile unsigned*)0x58000004) //ADC觸摸屏控制寄存器 #define rADCDLY(*(volatile unsigned*)0x58000008) //ADC啟動(dòng)或間隔延時(shí)寄存器 #define rADCDAT0(*(volatile unsigned*)0x5800000c) //ADC轉(zhuǎn)換數(shù)據(jù)寄存器0 #define rADCDAT1(*(volati1e unsigned*)0x58000010) //ADC轉(zhuǎn)換數(shù)據(jù)寄存器 void AD_Init(unsigned char ch){ rADCDLY=100; //ADC啟動(dòng)或間隔延時(shí) rADCTSC=0; //選擇ADC模式 rADCCON=(1<<14)|(49<<6)|(ch<<3)| (0<<2)|(0<<1)|(0); //設(shè)置ADC控制寄存器 } ......
關(guān)于設(shè)置ADC控制寄存器指令 : rADCCON=(1<<14)|(49<<6)|(ch<<3)| (0<<2)|(0<<1)|(0)
本文引用地址:http://butianyuan.cn/article/201611/317762.htm其含義是:
1左移(以0位為準(zhǔn))14位,即設(shè)置ADCCON中的PRSCEN為1:使能;
49左移6位,即前置分頻器 分頻數(shù)值為50(當(dāng)前置分頻器數(shù)值為N時(shí),分頻數(shù)值為N+1);
ch是變量,輸入通道選擇設(shè)置;
備用模式為正常模式;
禁止讀操作啟動(dòng);
AD轉(zhuǎn)換不啟動(dòng)。
評(píng)論