首页 > 广芯微 > 关于我们 > 新闻集锦
广芯微MCU入门篇1
发布人:广芯微 发布时间:2022/06/14

【背景介绍】

近年来,物联网终端的接入数量增长迅速,根据权威机构分析,到2025年全球物联网设备连接数预计超过300亿,主要应用领域包括智慧城市,工业物联网,医疗、智能家居等,而MCU是物联网应用的控制核心,根据Omdia统计,2019年全球MCU市场规模为175亿美元,预计2022年将达到184亿美元;2019年中国MCU市场规模为53亿美元,占全球市场比重为30.2%,预计2024年中国MCU市场规模将达到57亿美元。但我国MCU市场一直被海外企业主导,前五大供应商无一内资企业,随着信息安全的重要性突显和国内芯片设计技术的提升,未来MCU国产替代将是长期趋势。

数据来源:Omdia

· 广芯微之微控制器入门篇1:8位MCU介绍
· 广芯微之微控制器入门篇2:32位MCU介绍
· 广芯微之微控制器进阶篇1:8位MCU介绍

· 广芯微之微控制器进阶篇2:32位MCU介绍

注:本文力求通俗易懂,主要面向初学者,对广芯微8位MCU有所了解的读者可以忽略此文。

【概 述】  

本文将介绍广芯微的8位MCU的一些主要特性,开发套件包含哪些东西,如何搭建开发环境,如何编译示例并下载固件至硬件开发板等步骤。

【MCU介绍】

UM800x是广芯微的超低功耗MCU产品中,8位MCU系列芯片,芯片集成单周期8051内核,主频24MHz,最高内存达到64KB,其带有丰富的外设接口、8通道12-bit SAR ADC、低电压检测LVD及掉电复位LVR模块等,支持多达11路PWM、4路UART、17路GPIO和1路CAN总线。

【准备工作】

开发套件

UM800x 发布的开发套件包含:

· 硬件开发板
· 离线烧录器(可选)
· 软件开发

件开发包

软件开发包包含芯片的相关资料、硬件开发板的相关资料、IDE资料、模块驱动及示例程序以及典型应用基础方案示例等。

软件开发包内容如下:

· Document:芯片用户手册和Datasheet,快速开发上手手册,应用笔记
· Driver&Example:模块驱动代码,Demo示例程序
· EVB:开发板相关资料,元器件datasheet
· IDE:IDE开发工具(可联系FAE技术支持)
· Production Tool:BootLoader下载工具及文档,量产工具软件及文档
· Solution:典型应用基础方案示例

软件开发包也可以通过广芯微网站下载:

https://www.unicmicro.com/

开发环境

芯片开发环境包括硬件环境和软件环境。

硬件环境

硬件环境如图1所示:

· 硬件开发板和USB连接线
· 电脑(编译代码,下载程序代码)

图 1:硬件连接示意图

硬件开发板

基于 UM800x微控制器提供的开发板,除了丰富的周边应用电路,如 GPIO 、多功能扩展接口与多元的电源供应接口等,亦可搭配丰富的开发板支持套件与软件开发工具,可作为项目评估、开发、验证以及功耗监控的标准模板。

开发板如图2所示:

图 2:硬件开发板

开发板支持USB供电、5V适配器供电和CR2032纽扣电池供电三种供电方式,默认采用USB口供电,通过改变跳线帽的连接方式进行供电方式的切换。

硬件开发板接口资源丰富,包括UART、SPI、I2C等通讯接口,预留SPI Flash存储芯片、温湿度传感器SHT20、OLED液晶屏等外设。此外芯片的所有GPIO管脚均通过排针引出,可作GPIO调试,接口功能扩展等,满足更复杂灵活的应用需求。

芯片默认选择片内16MHz晶振作为时钟源,也可以通过软件配置选择片外高速时钟作为时钟源。

关于芯片硬件开发板的详细资料,请参考开发板原理图。

软件环境

软件环境包括代码调试环境和量产环境。

代码调试环境

代码调试环境是指通过MDK (KeilC51)集成开发环境进行程序编写,编译链接生成可执行文件(hex文件),通过UNIC_BootTool 工具下载,可通过串口调试工具(如串口调试助手,sscom等)接收调试信息进行调试。

量产环境

量产环境是指产品的功能调试完成后,将代码量产烧录到芯片这一过程所用的软件环境。

在电脑端用Keil C51进行代码的编写,编译链接生成可执行hex文件,最后通过UNIC_BootTool工具下载到开发板上运行。可通过UNIC_BootTool或者烧录器烧录hex文件(详细操作指南见Production Tool文件夹下相关文档)两种方式进行产品的量产。

【快速开发入门】

当我们拿到开发套件并准备好开发环境后,我们需要搭建调试环境。

硬件环境搭建操作如下:

1.    用USB线将芯片硬件开发板与电脑连接起来。USB口能够供电的同时也能作为调试接口,连接如图3所示。

 图 3:硬件连接示意图

2.    打开开发板上的电源开关,给开发板供电。

搭建调试环境

下载并安装Keil C51,网址如下:

https://www.keil.com/download/product/

注:Keil C51是Keil公司出品的51系列兼容单片机C语言软件开发系统。与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil C51提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。

安装后如图4所示:

图4:Keil C51

接下来打开示例工程,下面以Driver&Example/uart0示例为例作为描述,打开SDK目录,如图5所示:


图5:打开uart0示例工程

双击UM800Y.uvproj工程文件,即可打开工程,工程显示如图6所示:


图6:uart0示例工程

接下来的这个步骤很重要,由于发布的SDK包是适合UM800x系列芯片的,因此在编译工程时,需要针对性的设置工程的代码空间,操作步骤如下:

1.   打开Keil工程后,点击进入工程设置界面。

2.   在“Target”中按图7所示进行设置。


图7:Target设置

在红色框内填入对应芯片的内存地址,其中Start均为0x0000,Size分别是:

型号

Size

UM8004

0x4000

UM8004M

0x4000

UM8005

0x8000

UM8006

0x8000

UM8007

0x10000

都设置好后,点击“OK”保存并退出工程设置。

编译工程

Keil提供两种编译方式:增量编译和重新编译

单击任意一个按钮,编译输出如图8所示:

图8:编译工程

这样uart0示例编译结束,Hex输出文件为 .\Out_Files\um800y.hex。

修改代码

在修改代码前,我们简单了解一下8051在Keil C51中的代码结构:

1.   启动文件:STARTUP.A51。

2.   C语言入口:main.c中的main函数,如图9所示。

MCU上电后先执行STARTUP中的代码,然后再到C语言的入口main函数。

图9:C语言入口

返回列表