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
明白了最后一道程序,你就明白了。以下内容为配置参数。程序编译后,这些内容其实都是常量。
这种方法的主要目的是增强程序的可读性。