About 6 advantages that Open CPU module manufacturers won't tell you!

OPEN CPU · Overview
With the development of the Internet of Things, more and more applications are updated and created, and the types of IoT applications are increasing. Many lightweight IoT terminal products require less MCU resources, but cost and power consumption. , Security and other aspects are increasingly prominent.
Module plus equipment MCU, for equipment manufacturers, MCU software development is required to implement local communication protocols, which is not simple for many home appliance manufacturers. In fact, the resources of communication modules are very rich, far greater than the capabilities provided by the MCU. Why not use modules to implement the functions of the MCU?
OPEN CPU · Advantages of
lower cost
No need for external processors, and related memory and peripherals, reducing hardware costs,
less time cycle
No local communication protocol development, shortening product development cycle,
higher integration,
reducing product size , Reduce the size, suitable for some handheld devices.
Lower energy consumption.
Remove the MCU part of the energy consumption, less intermediate resource occupation, higher interaction efficiency
and easier upgrade.
Only the communication module needs to be upgraded, making the OTA upgrade simpler and
easier. High security to
avoid the possibility of near-end attack and stealing, and no longer need to transmit key business data through UART
OPEN CPU · Difficulties
Many customers think that OPEN CPU is difficult for several reasons:
1. It is not supported by manufacturers, and for many small and medium-sized enterprises In other words, if you can't get good technical support from module manufacturers, there is an uncertain risk for the smooth implementation of the project.
2. It takes a long time for engineers to digest the development environment of OPEN CPU.
3. For customers with R&D capabilities, the completeness of the data can greatly reduce the workload and time.
4. OPEN CPU is not open enough and development becomes complicated

                                                                          Bloom全栈开发 · 看点 

Bloom is a secondary development platform for embedded C language engineers. It provides SDK development kits, hardware environment, and online database. 70% of the application design can be completed in 2 hours!
1. The platform is open and does not provide customers with restrictions.
2. Based on C language development, engineers do not need to learn new development logic.
3. A complete IDE toolkit and installation video tutorials.
4. Rich API interfaces meet most application requirements and provide Interface examples and Demo examples greatly reduce development difficulty and workload.

                                                                              IDE工具包

1. Editing tools: provide program editors and code browsers for project development. The tool file code browsing tools recommended by Bloom full-stack development include:

Notpad++,


Source Insight

2. Compilation environment: provides application development environment Programs (such as codeblocks, Devc++, etc.). Generally include: code editor, compiler, debugger, graphical user interface and other tools. The compilation environment in Bloom full-stack development mainly refers to the compiler. Including:

NB Product compiler tools: CSDTK, cywin64;


4G CAT1 Product compiler tools: DS-5.26, perl5.8

3. Burn environment: providing burning software tools, Bloom whole stack development in burning tool. Including:

NB product burning tool: cooltools;


4G CAT1 product: FlashTool.exe

                                                              丰富的API接口


rich API interface


Malloc- memory


Task- task


events and semaphores


File_Flash- file


the SIM card


the PSM function


eDRX function


UART serial port


IIC interfaces


the GPIO Interface


the SPI Interface


the ADC interfaces


the GNSS interfaces


Bluetooth interface


TCP / UDP Interface


the MQTT interfaces



                                                      API接口示例 · 内存申请


function interface description

[TD]
Function Prototype void * sxr_UsrMalloc (u32 Size)
function from memory the space allocated cluster
parameter Description Size: dynamic application memory size bytes
returns a non-null value: allocating the first address memory; NULL: Memory application failure
Note:
1) The return value must be judged as empty;
2) The memory application is successful, and the memory application must be initialized to prevent dirty data.

memory cluster in space applications exemplary

char * pData;
#define 1000 MALLOC_SIZE
void demo_malloc_from_heap (void)
{ pData = _sxr_HMalloc (MALLOC_SIZE, COS_HEAP_INDEX); IF (pData!) { // memory allocation failure; return; } // application memory Successful, initial operation memset((void *)pData, 0, MALLOC_SIZE); } Scenario application Demo example· GPS application









#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 full-stack development · Summary
Of course, Bloom full-stack development is not applicable everywhere.
1. Hardware resource satisfaction, interface, memory, processing capability and other
AM21E hardware resources summary Click to understand
AM2000MT hardware resource summary Click to understand
AM430E hardware resource summary Click to understand
AM4000MT Hardware resource overview Click to understand
2. For some professional fields, manufacturers have spent a lot of investment in developing a device. The MCU and related systems are already very stable. At this time, there is no need to move the functions of the MCU to the communication module.

Insert picture description here

Guess you like

Origin blog.csdn.net/AmazIOT/article/details/108146889