热度 12
2012-12-4 01:00
1174 次阅读|
0 个评论
这个文件包括 *.CMD文件 *.h 文件 *.c 文件 *.gel文件 *.CMD文件 给出外设寄存器的物理开始地址 比如:ADC : origin = 0x007100, length = 0x000080 /* ADC registers */ AdcRegsFile : ADC, PAGE = 1 *.h 文件 给出外设寄存器的对应结构体 比如:struct ADC_REGS { union ADCCTL1_REG ADCCTL1; // ADC Control 1 union ADCCTL2_REG ADCCTL2; // ADC Control 2 Uint16 rsvd1 ; // reserved union ADCINT_REG ADCINTF.LG; // ADC Interrupt 。。。。。。 union COMPHYSTCTL_REG COMPHYSTCTL; // Uint16 rsvd12 ; // reserved }; *.c 文件中 声明了对应寄存器结构体的变量,并与实际物理地址对应起来 比如: #ifdef __cplusplus #pragma DATA_SECTION("AdcRegsFile") #else #pragma DATA_SECTION(AdcRegs,"AdcRegsFile"); #endif volatile struct ADC_REGS AdcRegs; 有了上面这些就可以通过定义的结构体访问物理外设了! f2802x_headers 这个文件夹中包括不适用TI库程序的文件! 就是直接对寄存器进行操作!代码简洁 但不易读! 这是个人的感觉