1 /************************************************************
2 * Calibration Data in Info Mem
3 ************************************************************/
4
5 #ifndef __DisableCalData
6
7 #define CALDCO_16MHZ_ (0x10F8u) /* DCOCTL Calibration Data for 16MHz */
8 READ_ONLY DEFC( CALDCO_16MHZ , CALDCO_16MHZ_)
9 #define CALBC1_16MHZ_ (0x10F9u) /* BCSCTL1 Calibration Data for 16MHz */
10 READ_ONLY DEFC( CALBC1_16MHZ , CALBC1_16MHZ_)
11 #define CALDCO_12MHZ_ (0x10FAu) /* DCOCTL Calibration Data for 12MHz */
12 READ_ONLY DEFC( CALDCO_12MHZ , CALDCO_12MHZ_)
13 #define CALBC1_12MHZ_ (0x10FBu) /* BCSCTL1 Calibration Data for 12MHz */
14 READ_ONLY DEFC( CALBC1_12MHZ , CALBC1_12MHZ_)
15 #define CALDCO_8MHZ_ (0x10FCu) /* DCOCTL Calibration Data for 8MHz */
16 READ_ONLY DEFC( CALDCO_8MHZ , CALDCO_8MHZ_)
17 #define CALBC1_8MHZ_ (0x10FDu) /* BCSCTL1 Calibration Data for 8MHz */
18 READ_ONLY DEFC( CALBC1_8MHZ , CALBC1_8MHZ_)
19 #define CALDCO_1MHZ_ (0x10FEu) /* DCOCTL Calibration Data for 1MHz */
20 READ_ONLY DEFC( CALDCO_1MHZ , CALDCO_1MHZ_)
21 #define CALBC1_1MHZ_ (0x10FFu) /* BCSCTL1 Calibration Data for 1MHz */
22 READ_ONLY DEFC( CALBC1_1MHZ , CALBC1_1MHZ_)
23
24 #endif /* #ifndef __DisableCalData */
SFR_8BIT(CALDCO_16MHZ);对使用宏定义的地方进行字符展开就是:extern volatile unsigned char CALDCO_16MHZ;
CALBC1_1MHZ and CALDCO_1MHZ are two bytes programmed in the flash at the factory which are a calibrated value as to the VCO (voltage controlled oscillator)
of the chip. This means that when you load those two values into the respective registers, you are using a precalibrated setting to get appoximately 1MHz.
CALBC1_1MHZ and CALDCO_1MHZ是用来设置校准值的。TI已经把他放进flash中了。
头文件中有一行字:
/************************************************************
* Calibration Data in Info Mem
************************************************************/
他的意思就是:存储在flash中的校准数据,0x10FFu 这些都是他们的地址