【精品】tinyos操作系统开发技术及实践(西电版实践3平台移植(可编辑.ppt
《【精品】tinyos操作系统开发技术及实践(西电版实践3平台移植(可编辑.ppt》由会员分享,可在线阅读,更多相关《【精品】tinyos操作系统开发技术及实践(西电版实践3平台移植(可编辑.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、TinyOS操作系统开发技术及实践(西电版)实践3 平台移植实践3 平台移植 2 2实践指导实践指导 实践实践3.G.1ADC驱动的开发。【分析】(1)通过ADC(数模转换)驱动的开发理解发布平台上驱动开发的一般方法。(2)根据ADC特点,设计ADC驱动,包括ADC接口、实现接口的模块、提供接口的配件。(3)编写应用程序,测试ADC驱动。(4)将ADC驱动移动到平台的驱动目录中。(5)将驱动目录位置加入到“.platform”文件中。(6)重新编译应用程序,测试ADC驱动。实践3 平台移植 3 3【参考解决方案】【参考解决方案】1程序目录建立程序目录建立在cygwin的“opt/mytinos
2、/apps/”目录下建立“AdTest”目录。2ADC驱动设计驱动设计在“opt/mytinos/apps/AdTest/”目录下建立4个文件:Adc.h:定义与ADC控制相关的宏和常量。AdcControl.nc:ADC接口文件。AdcP.nc:实现ADC接口的模块文件。AdcC.nc:ADC配件文件,用于封装AdcP模块,以对外提供ADC的控制。实践3 平台移植 4 4(1)编写Adc.h文件,代码如下:/设置ADCCON3寄存器#define ADC_SINGLE_CONVERSION(settings)do ADCCON3=settings;while(0)/设置ADCCON2寄存器#
3、define ADC_SEQUENCE_SETUP(settings)do ADCCON2=settings;while(0)/参考电压常量#define ADC_REF_1_25_V 0 x00#define ADC_REF_P0_7 0 x40#define ADC_REF_AVDD 0 x80#define ADC_REF_P0_6_P0_7 0 xC0 实践3 平台移植 5 5/分辨率(精度):#define ADC_8_BIT 0 x00#define ADC_10_BIT 0 x10#define ADC_12_BIT 0 x20#define ADC_14_BIT 0 x30/输
4、入通道#define ADC_AIN0 0 x00#define ADC_AIN1 0 x01#define ADC_AIN2 0 x02#define ADC_AIN3 0 x03#define ADC_AIN4 0 x04#define ADC_AIN5 0 x05#define ADC_AIN6 0 x06#define ADC_AIN7 0 x07实践3 平台移植 6 6实践3 平台移植 7 7实践3 平台移植 8 8/设置ADC从通道0开始#define ADC_TRIGGER_FROM_TIMER1()do ADC_STOP();ADCCON1&=0 x10;while(0)/判断
5、转换是否结束#define ADC_SAMPLE_READY()(ADCCON1&0 x80)/设置或清除ADC通道#define ADC_ENABLE_CHANNEL(ch)ADCCFG|=(0 x01ch)#define ADC_DISABLE_CHANNEL(ch)ADCCFG&=(0 x01ch)实践3 平台移植 9 9(2)编写AdcControl接口代码:interface AdcControl /*启用ADC.*参数reference 参考电压 *参数resolution 精度(分辨率)*参数input 通道 */command void enable(uint8_t refer
6、ence,uint8_t resolution,uint8_t input);/*停用ADC */command void disable();实践3 平台移植 10 10(3)编写AdcP模块,用于实现AdcControl接口,代码如下:#include Adc.h#define ADC_MAX_RETRY 0 x7fffmodule AdcP provides interface Init;provides interface AdcControluint8_t id;provides interface Readuint8_t id;实践3 平台移植 11 11implementatio
7、n uint8_t referencesuniqueCount(UNIQUE_ADC_PORT);uint8_t resolutionsuniqueCount(UNIQUE_ADC_PORT);uint8_t inputsuniqueCount(UNIQUE_ADC_PORT);uint8_t counter;command error_t Init.init()uint8_t i;实践3 平台移植 12 12 for(i=0;i=0);if(retry=0)实践3 平台移植 16 16 /获取采样结果 value=(int16_t)(ADCL);value|=(int16_t)(ADCH 8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 【精品】tinyos操作系统开发技术及实践西电版实践3 平台移植可编辑 tinyos 操作系统 开发 技术 实践 西电版 平台 移植 编辑
限制150内