找回密码
 注册
关于网站域名变更的通知
查看: 469|回复: 1
打印 上一主题 下一主题

关于Open CPU模组厂商不会告诉你的6个优势!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-21 14:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 eSIM物联工厂 于 2020-8-21 14:11 编辑

                                                                                                   OPEN CPU·概述
随着物联网的发展,越来越多的应用被更新和创造,IoT应用的种类日益增多,许多轻量化的IoT终端产品,对mcu的资源要求较少,而对成本、功耗、安全性等方面的需求则日益突出。
模组加上设备MCU,对于设备厂商,需要进行MCU软件开发,实现本地通讯协议,这对于很多家电厂商并不简单。实际上,通讯模组的资源很丰富,远远大于MCU所能提供的能力,为什么不用模组实现MCU的功能呢?
                                                                                                   OPEN CPU·优势
更低的成本
无需外部处理器,以及相关的存储器和外围设备,降低了硬件成本
更少的时间周期
不进行本地通讯协议开发,缩短产品开发周期
更高的集成度
减小产品尺寸,减少体积,适用于一些手持设备
更低的能耗
去掉MCU部分的能耗,更少的中间资源占用,更高的交互效率
更轻松的升级
只需升级通讯模组,使得OTA升级更简单
更高的安全性
避免近端攻击窃取的可能,不再需要通过UART传递关键业务数据
                                                                                                OPEN CPU ·难点
很多客户认为OPEN CPU难度大的几点原因:
1、得不到厂家不支持,对于很多中小企业来说,拿不大模组厂家好的技术支持,对于项目顺利落地存在不确定风险。
2、工程师对OPEN CPU的开发环境,需要花较长的时间进行消化
3、对于有研发能力的客户来说,资料的完善程度,可以大大降低工作量和时间。
4、OPEN CPU开放程度不够,开发变得复杂

Bloom全栈开发 ·看点
Bloom是一个面向嵌入式C语言工程师提供的二次开发的开发平台,提供SDK开发包、硬件环境、在线资料库,70%的应用设计可以在2个小时内完成!
1、平台开放,不对客户提供限制条件
2、基于C语言开发,工程师不用学习新的开发逻辑
3、完善的IDE工具包,及安装视频教程
4、丰富的API接口满足大部分应用需求,同时提供接口示例和Demo示例,大降低开发难度和工作量。

                                                                                      IDE工具包
1.编辑工具:提供面向项目开发的程序编辑器和代码浏览器,Bloom全栈开发推荐的工具文件代码浏览工具包括:
·
Notpad++,
·
·
Source Insight
·
2.编译环境:提供程序开发环境的应用程序(如codeblocks, Devc++等等)。一般包括:代码编辑器、编译器、调试器、图形用户界面等工具。Bloom全栈开发中的编译环境主要特指编译器。包括:
·
NB产品编译工具:CSDTK,cywin64;
·
·
4G CAT1产品编译工具:DS-5.26,Perl5.8
·
3.烧录环境:提供烧录软件工具,Bloom全栈开发中的烧录工具。包括:
·
NB产品烧录工具:cooltools;
·
·
4G CAT1产品:FlashTool.exe
·

                                                                                    丰富的API接口
·
丰富的API接口
·
·
Malloc-内存
·
·
Task-任务
·
·
事件和信号量
·
·
File_Flash-文件
·
·
SIM卡
·
·
PSM功能
·
·
eDRX功能
·
·
UART串口
·
·
IIC接口
·
·
GPIO接口
·
·
SPI接口
·
·
ADC接口
·
·
GNSS接口
·
·
蓝牙接口
·
·
TCP/UDP接口
·
·
MQTT接口
·
·
......
·

                                                                   API接口示例 ·内存申请

·
函数接口介绍
·
[td]
函数原型
void *sxr_UsrMalloc(u32 Size)
功能
从内存簇中分配空间
形参说明
Size:动态申请 size 字节的内存空间
返回值
非空:分配内存的首地址;NULL:内存申请失败
注意事项:
1)必须对返回值做空判断;
2)申请内存成功,防止有脏数据必须对申请的内存做初始化操作。
·
内存簇中申请空间示例
·
char *pData;
#define MALLOC_SIZE 1000
void demo_malloc_from_heap(void)
{
pData = _sxr_HMalloc (MALLOC_SIZE, COS_HEAP_INDEX);
if(!pData)
{
//内存申请失败;
return;
}
//内存申请成功,初始化操作
memset((void *)pData, 0, MALLOC_SIZE);
}
场景应用Demo示例 ·GPS应用

#include "amaziot.h"        
#define USER_TASK_STACK_SIZE (2048*2)
#define USER_TASK_PRIORITY   (COS_USER_TASKS_PRIORITY_BASE)
static uint8_t  Send_Gps_Flag=0;
void UserTask(void *p_arg);
void Send_Gps_Timer(void);
/*
add user task here
*/
VOID UserCreateTask(void)
{
         COS_CreateTask(UserTask,
                                   NULL, NULL,
                                   USER_TASK_STACK_SIZE,
                                   USER_TASK_PRIORITY,
                                   COS_CREATE_DEFAULT, 0, "UserTask");
         
}
void Send_Gps_Timer(void)
{
        AT_TC(10,"DMH_GPS_TEST");
    Send_Gps_Flag = 1;
        sxr_StartFunctionTimer(30 SECOND,Send_Gps_Timer,(VOID*)NULL,0x10);
}
void UserTask(void *p_arg)
{
        
        AT_WriteUart("GPSTask Runing\r\n", strlen("GPSTask Runing\r\n"));        
        
        //open GPS
        wait_dev_open_gps();
        //start timer
        sxr_StartFunctionTimer(30 SECOND,Send_Gps_Timer,(VOID*)NULL,0x10);
               
        while (1)
    {
       {
                       if(Send_Gps_Flag){//send gps
                                Send_Gps_Flag = 0;
                                UINT8 arrStr[1024] = {0x00};
                    UINT32 arrLen = 0;
                                AT_GPS_NMEA_All(arrStr, &arrLen);
                                
                                AT_WriteUart(arrStr,arrLen);
                       }
                        sleep(1);        
           }
    }
}
                                                                            Bloom全栈开发 ·总结
当然,Bloom全栈开发也不是处处适用的
1、硬件资源满足,接口、内存、处理能力等
AM21E硬件资源综述   点击了解
AM2000MT硬件资源综述   点击了解
AM430E硬件资源综述    点击了解
AM4000MT硬件资源综述   点击了解
2、对于一些专业领域,厂商已经花费了很大投入开发了一个设备,MCU以及相关系统已经很稳定,这个时候就没必要把MCU的功能移到通讯模组了。

公众号回复“OPEN CPU”进入Bloom全栈开发平台!

业务 · 推荐

● [color=var(--weui-LINK)]标准模组(LTE/NB-IOT/CAT1)
● [color=var(--weui-LINK)]开源硬件(透传模组/DTU)
● [color=var(--weui-LINK)]Bloom全栈开发
● [color=var(--weui-LINK)]Agile定制开发服务



该用户从未签到

2#
发表于 2020-8-21 14:45 | 只看该作者
不错               
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-9 11:57 , Processed in 0.093750 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表