背景描述:
中微推出了一款性价比极高的单片机SC8P052,但是网上关于中微芯片的资料十分的少,导致许多人接手项目或者独立开发时,入门十分的困难。本文将针对有一定单片机基础的玩家,分享开发过程经验,同时记录自己开发的笔记。
在本章节中,我们将从项目的准备开始,先带着大家跑通GPIO的简单实验,详细的代码解读以及后续的芯片烧录我们将放在后面的章节来讲述。
一、开发资料与前期准备
首先我们先准备软件部分:
( 下文括号中的点需要大家手动替换,csdn要我充会员才能挂链接 )
中微官方的大部分资料都来自于他们的官网(www点mcu点com点cn),所以大家有需要资料都可以去官网找。
为了能够顺利完成开发,我们也需要先获取开发工具与环境(www点mcu点com点cn/support-software点html)。(如果你不知道下载哪一个,请接着往后阅读)
至于具体的芯片开发与应用手册,各位直接在官网右上角点击搜索即可,这里附上SC8P052的手册链接。用户手册
完成了软件的准备后,我们还需要准备硬件:
这里我们需要准备三件东西:
1. 仿真器
2. 仿真小板
3. 烧录器(如果有需要的话)
芯片的烧录部分将会放在下一章来讲。
二、芯片介绍
笔者觉得这里有必要讲述一下芯片的名称构成,这样我们才能知道我们应该如何选择IDE以及对芯片有更好的理解。
首先,在用户手册当中(SC8P052),我们可以看到,单片机的名称构成:
这里要特别说明一下,该芯片属于OTP(One Time Programmable)系列芯片,即一次性烧录芯片,所以我们要充分利用仿真,程序在后续烧录到目标单片机后就无法进行更改了。
这里我们重点关注前面的SC8,这个将作为我们选择IDE的重要参考。
我们可以看到,在前面的获取开发工具与环境的链接中,有许多的IDE供我们选择,我们则只需要按照我们具体的需要开发的芯片型号来选择IDE即可,这里放一张AI总结的表格,相信大家一看就能懂。
虽然提供了KEIL的支持,但是有一部分的芯片是不支持KEIL开来发的,所以大家还是优先选择官方的IDE。
三、代码编写
对芯片有了一定的了解后,我们来看一下程序部分。
首先我们打开对应的IDE,如果你是第一次启动,那么这里应该和图片一样是空的。
我们按照图片的顺序依次点击,来创建一个新的工程。
在弹出的对话框中输入我们的工程名称。
名称应当避免中文,同时要尽量避免路径过深。
这里选择好MCU型号后,剩下的先保持默认即可。
这里对一些参数进行一下简单的声明:
WDT(WatchingDog Timer):看门狗,开启后需要定时喂狗
PROTECT:芯片加密
LVR_SEL:低压复位,即低于某个电压值时,单片机复位,具体参考用户手册
CLK_FP:时钟预分频
完成工程创建后,左侧可以看到工程目录。
接着我们点击工程目录上方的新建文件。
新建成功后将下面的代码粘贴到文本框中。
#include <sc.h> //芯片头文件,会根据工程选项自动寻找对应型号头文件 #define PULL_DOWN RB2 //定义RORTB2口 取名PULL_DOWN #define PULL_UP RB0 //定义PORTB0口 取名PULL_UP #define Pout RB3 //定义PORTB3口 取名Pout #define Podout RB4 //定义PORTB4口 Podout void main(void) { asm("nop"); asm("clrwdt"); // 均以小端存储 // 配置系统时钟 OPTION_REG =0X08; //预分频给WDT,16MS溢出一次 OSCCON = 0X72; //内部振荡器16M,CONFIG关闭WDT时必须打开WDT, // 配置GPIO WPUB = 0B11111111; //配置上拉 WPDB = 0B00000000; //配置下拉 ODCONB = 0B00001000; //配置开漏输出,RB3可以同时配置上拉,其余IO不可以 IOCB = 0B00000000; //配置输入(1)/输出(0) TRISB = 0B00000000; while(1) { asm("clrwdt"); RB0 = 1; } }然后我们将文件保存到刚才存放工程的同级目录下。
这里需要存为.c文件;.asm为汇编语言所编写的文件,与笔者所提供的代码不符。
完成后右击左侧源文件->添加到工程,然后选中我们刚才保存的文件。
成功添加后左侧会显示我们添加的文件。
接着我们就可以点击编译了。
下方输出0错误0警告。
接下来我们准备仿真。
四、烧录仿真
首先将我们的硬件先链接好。
在代码中,我们将RB0通道置位1,即输出高电平,所以我们将RB0接入LED正极。
( 这里说明一下,仿真小板是可以仿真CS8系列的芯片,我们按照实际需要开发的芯片来对着仿真小板的丝印来链接即可 )
接着在上电前,我们吧CMS-ICE8 PRO拨到如图所示的位置。
( 这里也有个坑,在未进行仿真的时候,仿真器不会有电压等输出,这是正常的,不一定是仿真器坏了 )
将仿真器插入我们的电脑,然后回到我们的IDE中。
可以看到仿真器选项卡下的仿真器设置变成可点击状态,即为链接成功;或者下方日志框有提示也可以。
( 仿真器貌似不需要手动安装驱动,第一次使用的时候可能需要等待一会 )
接着我们进行编译下载。
( 这里下载和烧录是烧到仿真器里,而不是芯片中,大家不必担心OTP )
接着我们点击运行,程序就能跑起来了。
至此,本章节任务完成。
码字不易,点个赞再走喵~(∠・ω< )⌒★