adc.h

AD変換制御ライブラリのヘッダーファイル [詳細]


マクロ定義

#define ADC_INT_XXX
 割り込みの制御
#define ADC_INT_EN   0b11111111
 ADC割り込みの許可
#define ADC_INT_DIS   0b11111110
 ADC割り込みの禁止
#define ADC_XBIT
 ADFM: 変換データの分解能を指定 本来は、データ表現形式の選択 :-)
#define ADC_10BIT   0b11111111
 10ビットの分解能
#define ADC_8BIT   0b01111111
 8ビットの分解能
#define ADC_FOSC_XXX
 ADCS: AD変換クロックの指定
#define ADC_FOSC_2   0b10011111
 886: 1/2
#define ADC_FOSC_8   0b10111111
 886: 1/8
#define ADC_FOSC_32   0b11011111
 886: 1/32
#define ADC_FOSC_RC   0b11111111
 886: RC
#define ADC_FOSC_2   0b10001111
 886: 1/2
#define ADC_FOSC_8   0b10011111
 886: 1/8
#define ADC_FOSC_32   0b10101111
 886: 1/32
#define ADC_FOSC_RC   0b11111111
 886: RC
#define ADC_FOSC_4   0b11001111
 690: 1/4
#define ADC_FOSC_16   0b11011111
 690: 1/16
#define ADC_FOSC_64   0b11101111
 690: 1/64
#define ADC_VREFXXX_XXX
 VCFG: AD変換の参照電圧源の指定
#define ADC_VREFPLUS_VDD   0b10111111
 886: VREF+ = VDD
#define ADC_VREFPLUS_EXT   0b11111111
 886: VREF+ = RA3
#define ADC_VREFMINUS_VSS   0b01111111
 886: VREF- = VSS
#define ADC_VREFMINUS_EXT   0b11111111
 886: VREF- = RA2
#define ADC_VREFPLUS_VDD   0b10111111
 886: VREF+ = VDD
#define ADC_VREFPLUS_EXT   0b11111111
 886: VREF+ = RA3
#define ADC_SEL_XXX
 CHS: AD変換を行う入力ピンの指定
#define ADC_SEL_AN0   0b11000011
 AN0を変換対象に指定
#define ADC_SEL_AN1   0b11000111
 AN1を変換対象に指定
#define ADC_SEL_AN2   0b11001011
 AN2を変換対象に指定
#define ADC_SEL_AN3   0b11001111
 AN3を変換対象にする
#define ADC_SEL_AN4   0b11010011
 AN4を変換対象に指定
#define ADC_SEL_AN5   0b11010111
 AN5を変換対象に指定
#define ADC_SEL_AN6   0b11011011
 AN6を変換対象に指定
#define ADC_SEL_AN7   0b11011111
 AN7を変換対象に指定
#define ADC_SEL_AN8   0b11100011
 AN8を変換対象に指定
#define ADC_SEL_AN9   0b11100111
 AN9を変換対象に指定
#define ADC_SEL_AN10   0b11101011
 AN10を変換対象に指定
#define ADC_SEL_AN11   0b11101111
 AN11を変換対象に指定
#define ADC_SEL_AN12   0b11110011
 886: AN12を変換対象に指定
#define ADC_SEL_AN13   0b11110111
 886: AN13を変換対象に指定
#define ADC_SEL_CVREF   0b11111011
 886: CVrefを変換対象に指定
#define ADC_SEL_FIXV   0b11111111
 886: Fixed Voltage Ref.を変換対象に指定
#define ADC_SEL_CVREF   0b11110011
 886: CVrefを変換対象に指定
#define ADC_SEL_06VREF   0b11110111
 690: 0.6V Ref.を変換対象に指定
#define ADC_EN_XXX
 ANSEL,ANSELH: AD変換用入力としてアナログ入力に切り替えるピン集合を指定
#define ADC_EN_AN0   0b1111111111111110
 AN0をアナログ入力ピンに
#define ADC_EN_AN1   0b1111111111111101
 AN1をアナログ入力ピンに
#define ADC_EN_AN2   0b1111111111111011
 AN2をアナログ入力ピンに
#define ADC_EN_AN3   0b1111111111110111
 AN3をアナログ入力ピンに
#define ADC_EN_AN4   0b1111111111101111
 AN4をアナログ入力ピンに
#define ADC_EN_AN5   0b1111111111011111
 AN5をアナログ入力ピンに
#define ADC_EN_AN6   0b1111111110111111
 AN6をアナログ入力ピンに
#define ADC_EN_AN7   0b1111111101111111
 AN7をアナログ入力ピンに
#define ADC_EN_AN8   0b1111111011111111
 AN8をアナログ入力ピンに
#define ADC_EN_AN9   0b1111110111111111
 AN9をアナログ入力ピンに
#define ADC_EN_AN10   0b1111101111111111
 AN10をアナログ入力ピンに
#define ADC_EN_AN11   0b1111011111111111
 AN11をアナログ入力ピンに
#define ADC_EN_AN12   0b1110111111111111
 886: AN12をアナログ入力ピンに
#define ADC_EN_AN13   0b1101111111111111
 886: AN13をアナログ入力ピンに
#define CloseADC()   (ADON = 0, ADIE = 0)
 AD変換器の停止
#define BusyADC()   (GODONE)
 AD変換中の検査
#define ConvertADC()   (GODONE = 1)
 AD変換の開始

関数

void OpenADC (unsigned char, unsigned char, unsigned int)
 AD変換機能の起動
void SetChanADC (unsigned char)
 AD変換の対象ピンの設定
unsigned int ReadADC (void)
 AD変換結果の読み出し


説明

AD変換制御ライブラリのヘッダーファイル


マクロ定義

#define ADC_INT_XXX

割り込みの制御

#define ADC_INT_EN   0b11111111

ADC割り込みの許可

#define ADC_INT_DIS   0b11111110

ADC割り込みの禁止

#define ADC_XBIT

ADFM: 変換データの分解能を指定 本来は、データ表現形式の選択 :-)

#define ADC_10BIT   0b11111111

10ビットの分解能

#define ADC_8BIT   0b01111111

8ビットの分解能

#define ADC_FOSC_XXX

ADCS: AD変換クロックの指定

#define ADC_FOSC_2   0b10011111

886: 1/2

690: 1/2

#define ADC_FOSC_8   0b10111111

886: 1/8

690: 1/8

#define ADC_FOSC_32   0b11011111

886: 1/32

690: 1/32

#define ADC_FOSC_RC   0b11111111

886: RC

690: RC

#define ADC_FOSC_2   0b10001111

886: 1/2

690: 1/2

#define ADC_FOSC_8   0b10011111

886: 1/8

690: 1/8

#define ADC_FOSC_32   0b10101111

886: 1/32

690: 1/32

#define ADC_FOSC_RC   0b11111111

886: RC

690: RC

#define ADC_FOSC_4   0b11001111

690: 1/4

#define ADC_FOSC_16   0b11011111

690: 1/16

#define ADC_FOSC_64   0b11101111

690: 1/64

#define ADC_VREFXXX_XXX

VCFG: AD変換の参照電圧源の指定

#define ADC_VREFPLUS_VDD   0b10111111

886: VREF+ = VDD

690: VREF = AVDD

#define ADC_VREFPLUS_EXT   0b11111111

886: VREF+ = RA3

690: VREF = RA1

#define ADC_VREFMINUS_VSS   0b01111111

886: VREF- = VSS

#define ADC_VREFMINUS_EXT   0b11111111

886: VREF- = RA2

#define ADC_VREFPLUS_VDD   0b10111111

886: VREF+ = VDD

690: VREF = AVDD

#define ADC_VREFPLUS_EXT   0b11111111

886: VREF+ = RA3

690: VREF = RA1

#define ADC_SEL_XXX

CHS: AD変換を行う入力ピンの指定

#define ADC_SEL_AN0   0b11000011

AN0を変換対象に指定

#define ADC_SEL_AN1   0b11000111

AN1を変換対象に指定

#define ADC_SEL_AN2   0b11001011

AN2を変換対象に指定

#define ADC_SEL_AN3   0b11001111

AN3を変換対象にする

#define ADC_SEL_AN4   0b11010011

AN4を変換対象に指定

#define ADC_SEL_AN5   0b11010111

AN5を変換対象に指定

#define ADC_SEL_AN6   0b11011011

AN6を変換対象に指定

#define ADC_SEL_AN7   0b11011111

AN7を変換対象に指定

#define ADC_SEL_AN8   0b11100011

AN8を変換対象に指定

#define ADC_SEL_AN9   0b11100111

AN9を変換対象に指定

#define ADC_SEL_AN10   0b11101011

AN10を変換対象に指定

#define ADC_SEL_AN11   0b11101111

AN11を変換対象に指定

#define ADC_SEL_AN12   0b11110011

886: AN12を変換対象に指定

#define ADC_SEL_AN13   0b11110111

886: AN13を変換対象に指定

#define ADC_SEL_CVREF   0b11111011

886: CVrefを変換対象に指定

690: CVrefを変換対象に指定

#define ADC_SEL_FIXV   0b11111111

886: Fixed Voltage Ref.を変換対象に指定

#define ADC_SEL_CVREF   0b11110011

886: CVrefを変換対象に指定

690: CVrefを変換対象に指定

#define ADC_SEL_06VREF   0b11110111

690: 0.6V Ref.を変換対象に指定

#define ADC_EN_XXX

ANSEL,ANSELH: AD変換用入力としてアナログ入力に切り替えるピン集合を指定

#define ADC_EN_AN0   0b1111111111111110

AN0をアナログ入力ピンに

#define ADC_EN_AN1   0b1111111111111101

AN1をアナログ入力ピンに

#define ADC_EN_AN2   0b1111111111111011

AN2をアナログ入力ピンに

#define ADC_EN_AN3   0b1111111111110111

AN3をアナログ入力ピンに

#define ADC_EN_AN4   0b1111111111101111

AN4をアナログ入力ピンに

#define ADC_EN_AN5   0b1111111111011111

AN5をアナログ入力ピンに

#define ADC_EN_AN6   0b1111111110111111

AN6をアナログ入力ピンに

#define ADC_EN_AN7   0b1111111101111111

AN7をアナログ入力ピンに

#define ADC_EN_AN8   0b1111111011111111

AN8をアナログ入力ピンに

#define ADC_EN_AN9   0b1111110111111111

AN9をアナログ入力ピンに

#define ADC_EN_AN10   0b1111101111111111

AN10をアナログ入力ピンに

#define ADC_EN_AN11   0b1111011111111111

AN11をアナログ入力ピンに

#define ADC_EN_AN12   0b1110111111111111

886: AN12をアナログ入力ピンに

#define ADC_EN_AN13   0b1101111111111111

886: AN13をアナログ入力ピンに

 
#define CloseADC (  )     (ADON = 0, ADIE = 0)

AD変換器の停止

 
#define BusyADC (  )     (GODONE)

AD変換中の検査

 
#define ConvertADC (  )     (GODONE = 1)

AD変換の開始


関数

void OpenADC ( unsigned char  config,
unsigned char  select,
unsigned int  port 
)

AD変換機能の起動

引数:
config,: 割り込み、データの分解能、変換クロックの指定
以下のマクロを&で組み合わせて指定
select,: 入力ピンと、参照電圧源の指定
以下のマクロを&で組み合わせて指定
port,: AD変換で利用するピン集合を指定
以下のマクロを&で組み合わせて指定

void SetChanADC ( unsigned char  ch  ) 

AD変換の対象ピンの設定

引数:
ch,: AD変換の対象ピンの指定
以下のマクロから一つを選択して指定

unsigned int ReadADC ( void   ) 

AD変換結果の読み出し

戻り値:
指定した分解能(10ビットもしくは8ビット)での電圧値


Copyright (C) 2007-2008, マイクロファンネットショップ, 株式会社ピープルメディア