CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
来源:互联网 发布:淘宝问答在哪里回复 编辑:程序博客网 时间:2024/05/21 16:34
0x00 CREELINKS平台简介
CREELINKS(创e联)是由大信科技有限公司研发,集合软硬件、操作系统、数据云储存、开发工具于一体,用于物联网产品的设计、研发与生产的平台。
平台涉及智能硬件、车联网、智能家居、可穿戴设备、工业控制等各个物联网领域。旨在辅助中小型企业快速完成物联网产品原型的设计与开发;并为开源软硬件爱好者、硬件DIY极客、教育机构等提供更高效的资源。
平台包含通用功能模块、操作系统、核心库、模块驱动库、物联网典型产品的解决方案及相关开发工具。
CREELINKS http://www.creelinks.com
0x01 处理器CeAd资源是什么?
CeAd资源是CREELINKS平台中将不同处理器平台中AD转换(Analog-to-Digital Converter/模拟信号(电压或是电流的形式)转换成数字信号)的共性提取出来,整理并编写出来的标准库。CeAd标准库包含了Ad操作相关的所有属性及API接口函数,如: 设置获得AD转换结果等。其标准库的头文件为CeAd.h,不同处理器平台实现的源文件名统一为CeAd.c。
详细介绍如下:
1、资源介绍
Creelinks平台Ad对象的操作头文件,包含有关处理器平台Ad内容的相关操作。可能不同处理器平台,Ad转换电压、转换时间、转换速率、位宽等均不一致,使用Ad资源时,尽量使用CeMcu.h中的相关Ad属性宏定义。
2、相关配置
在CeMcu.h中有与处理器平台有关的配置项如下:
1 #define CE_AD_CONVERT_REF_VCC (fp32)(3.3) /*!< Ad转换的参考电压3.3V*/2 #define CE_AD_CONVERT_WIDTH (uint16)(12) /*!< Ad转换宽度*/3 #define CE_AD_CONVERT_TIME_NS (uint16)(1000) /*!< Ad完成一次转换所用的时间ns*/4 #define CE_AD_CONVERT_MAX_VAL (uint32)(0x0FFF) /*!< Ad转换所得的最大值*/
其中:
CE_AD_CONVERT_REF_VCC:当前处理器平台Ad资源进行转换所采用的参考电压值,浮点型变量。
CE_AD_CONVERT_WIDTH:当前处理器平台Ad资源转换结果的宽度,如8、12、16等。
CE_AD_CONVERT_TIME_NS:当前处理器平台Ad资源完成一次Ad转换所需要的时间,单位纳秒。
CE_AD_CONVERT_MAX_VAL:当前处理器平台Ad资源转换结果的最大值,如宽度12位,则最大值为0xFFFF。
3、属性对象
1 /**2 * @brief 结构体,AD对象可用属性集合3 */4 typedef struct5 {6 CE_RESOURCE ceResource; /*!< Ad对应的资源号*/7 CeExAdPar ceExAdPar; /*!< 与处理器平台相关的额外参数结构体,用以提高代码效率,用户无须关注*/8 }CeAd;
其中:
ceResource:对应核心模块的Ad资源号, 只要在核心板上,资源接口中带A标号即可。
ceExPwmPar:用于存不同的处理器平台,Ad属性对象需要的额外参数。此结构体在CeMcu.h文件中定义。
4、操作对象
1 /** 2 * @brief 结构体,AD对象可用操作集合 3 */ 4 typedef struct 5 { 6 CE_STATUS (*initial)(CeAd* ceAd); /*!< @brief 初始化Ad转换 7 @param ceAd:Ad属性对象指针*/ 8 9 uint32 (*getAdConvertValue)(CeAd* ceAd); /*!< @brief 获得Ad转换结果10 @param ceAd:Ad属性对象指针11 @return AD转换结果*/12 }CeAdOpBase;13 extern const CeAdOpBase ceAdOp; /*!< 所有与Ad相关的操作*/
其中:
initial:对一个Ad资源进行初始化,如果在CeMcu.h中的宏定义 __CE_CHECK_PAR__处于打开状态,则会对输入的CeAd属性对象进行参数检查。
getAdConmvertValue:进行一次Ad转换,并获得转换结果。操作会阻塞并且直到转换完成后才返回,转换时间在CeMcu.h中宏定义CE_AD_CONVERT_TIME_NS有关。
5、执行流程
6、应用示例
1 /** 2 ****************************************************************************** 3 * @brief 使用流程及示例程序(基于前后台非操作系统环境) 4 * @function 读取Ad口转换值,并通过Uart口传输给串口调试助手 5 ****************************************************************************** 6 #include "Creelinks.h" 7 CeAd myAd; //定义Ad属性对象 8 uint32 convertVal; //转换结果保存的临时变量 9 int main(void)10 {11 ceSystemOp.initial(); //Creelinks环境初始化12 ceSystemOp.initialDebug(RxUart); //通过Uart串口输出Debug信息到上位机13 //TODO:请在此处插入模块初始化等操作14 myAd.ceResource = RxA; //定义Ad资源号15 ceAdOp.initial(&myAd);16 while (1)17 {18 ceSystemOp.mainTask(); //Creelinks环境主循环任务,请保证此函数能够被周期调用19 //TODO:请在此处插入用户操作 20 convertVal = ceAdOp.getAdConvertValue(&myAd); //获得Ad转换结果21 ceSystemOp.printf("ConvertVal = %d",convertVal);//打印Ad转换结果22 ceSystemOp.delayMs(500); //延时500ms23 };24 }25 ******************************************************************************26 */
0x02 CeAd的注意事项
0x03 CeAd在不同处理器的应用实例
1、STM32平台下的ELinkSTM核心板下使用CeAd...。代码及动画效果如下:
待添加...
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- CreeLinks物联网平台_处理器CeAd资源使用说明(使用CeAd采集电压)
- CREELINKS平台_处理器CeCcp资源使用说明(CeCcp的配置与使用)
- CREELINKS平台_处理器CeCcp资源使用说明(CeCcp的配置与使用)
- CREELINKS平台_处理器CeCcp资源使用说明(CeCcp的配置与使用)
- CREELINKS平台_处理器CeCcp资源使用说明(CeCcp的配置与使用)
- CREELINKS平台_处理器CeCcp资源使用说明(CeCcp的配置与使用)
- CREELINKS平台_处理器CeCcp资源使用说明(CeCcp的配置与使用)
- 进程_控制进程的资源使用
- hackxor渗透平台环境的配置与使用
- hackxor渗透平台环境的配置与使用
- .NET平台常用的开发组件
- MySQL两种引擎的区别
- 小马哥---高仿苹果6sp M818A MR HXW 20131230主板刷机拆机图与开机界面图
- JAVA中转义字符简单的四种
- Nginx配置SSL证书部署HTTPS网站
- CREELINKS平台_处理器CeAd资源使用说明(CeAd的配置与使用)
- 释疑の手工凭证界面不显示页数
- 项目程序运行一段时间就报错:超出打开游标的最大数(maximum open cursors exceeded)
- Yii之Session与cookie处理
- 自定义拍照
- 润乾V5批量打印报表
- 算法训练 Torry的困惑(基本型)
- 使用Bash中Complete自动补全命令
- SVN服务器搭建和使用(一)