msp430单片机头文件中的# define sht 0 _ 0(0 * 0x 100 u)# define conq _ 0(0 * 2u)是什么意思?

#定义A B

a宏名,b宏内容

在编译的预处理中,程序中A的所有宏都会被B的定义代替..

诸如

#定义PI 3.14

程序中所有出现的圆周率都将被浮点常数3.14代替。

0*0x100u结果是0。u代表无符号常数。圆括号可以提高实际程序中的操作优先级。

例如初始化ADC12的程序:

ADC 12 CTL 1 = SHS _ 1+SHP+CONSEQ _ 2;// TA trig。,rpt conv。

ADC12MCTL0 = SREF_1 +英寸_ 10;//通道A10,Vref+

ADC 12IE = 0x 01;//使能ADC12IFG.0

ADC 12 CTL 0 = sht 0 _ 8+re F2 _ 5V+ref on+ADC 12ON+ENC;//配置ADC12

明白了最后一道程序,你就明白了。以下内容为配置参数。程序编译后,这些内容其实都是常量。

这种方法的主要目的是增强程序的可读性。