楼主讲的详细明白,清晰易懂,比直接看英文的那个好多了,英文的顺序乱七八糟的。还有结合例程可以很容易理解SD24模块的使用方法,例程给出了几种常用方法。另外我没有看楼主教程时候,我还以为SD24是个SD卡控制器呢,原来不是,是个ADC。
例程文件1,根据描述知道,这是个按组连续转换。组分贝是0,1,2三个通道组在一起,转换完成后触发中断。ACLK = 32kHz, MCLK = SMCLK = Calibrated DCO = 16.384MHz, SD_CLK = 1.024MHz,这个完全可以根据前两课的内容搞定。很简单,前两节课讲的非常好,一看就懂。根据主函数,可以知道,第一部还是通过 WDT_hold(WDT_BASE);关闭看门狗,因为这里不用它。接下来就是要配置参考电压,这里选了内部的,在CCS里可以弹出来选项,很方便,不用死记,其实也没什么,就那两三种嘛。下面就是配置组员--3个通道的配置,仔细看,会发现 SD24_initConverterAdvancedParam param = {0};这句就写了一次,后面紧跟着3个通道的配置,也就是说这个结构体变量是供3个配置函数分别使用的,当配置完通道0,那么就写入到高级配置里,之后再次配置这个结构体变量,当然这次是为通道1配置的,同样结束写入高级配置函数,我们看到0和1配置一样的,而在配置通道2的时候,就不同了,这里参数显示是非分组,也就是不跟前两个作为一个队列,大概这个意思吧。其他都一样,同样写入高级配置。我们发现高级配置其实就是跟着结构体初始化函数的。因为通道2要采用中断,毕竟在初始化参数时候是不启动相关的中断功能的,这里才开始对通道2启动中断使能。也就是转换中断,延时一下,稳定好内部的参考电压,因为这个时候才启动相关的参考电路。毕竟430是超低功耗的,也就体现这里,不用的模块统统自动关闭的。
现在可以开始启动转换通道2了。后面的中断函数头,可以照葫芦画瓢了,不同的编译软件选择不同的开头。后面都是一样的,我们看到当发生中断时候就启动了读取转换结果的程序。
|