我们知道很多嵌入式开发的学习是从认识单片机开始的,从编程,下载到跑通,学习的周期会比较长。有很多单片机产品可以帮助我们学习,这篇文章主要是测评单片机的基础开发测评,目的在于测评单片机产品可实现过程和学习难度。

10月的时候,我收到了来自上海的包裹,是某个搞火箭研发的大佬发来的,一款单片机,外表黑,体积比较大,是我之前玩的STM32的两倍。既然大佬寄过来,肯定要开始整活!!本次项目实操可以供新人学习和了解单片机。

作为刚入门这款开发板,点灯是少不了的一个步骤,开发板子功能,先了解它的构造。

从上图显示上的标记我们初步认识一下板子结构。

(从官方的说明中获得开发板信息)

 

点LED灯是玩单片机的入门课程,主要编程的平台用Keil,这里注意需要下载的是Keil C51,不要下载成Keil ARM

 

操作步骤:

STEP1:安装好我的Keil,点击梦开始的地方 “Project”→“New uversion project”

 

 

新建过程中,在 “Search” 的选项中可以选择不填,因为这个项目主要是搜索项,搜索芯片使用的,下面有很多芯片都可以使用。另外我们需要再新建的栏目里找到Atmel选项,按照个人的需求,我会选择 Microchip 的 AT89C52。

 

 

选择建立一个 “LED” 项目,在提示栏里点击 “Yes” ,我们建立起一个新项目。

 

STEP2:在新建立的工程新建新文件。

1) 点击 ”File” ->“New…”

2) 点击 “File” ->“Save”

3) 文件名为 “LED.c”,一定要确保文件后缀为.c 格式

4) 点击“保存(S)”,如下图所示。

 

图 3-10 新建 LED.c 文件

 

下一步则需要将LED.c这个文件添加到工程目录

1) 找到工程界面左侧的 “source Group1”,并单击右键

2) 点击 “Add Existing Files to Group ‘Source Group1’…”

3) 选中刚才新建的 “LED.c”文件

4) 单击 “Add”,如下图所示。

 

 

当出现图示所示的LED.c项目时,我们前期的新建流程就算是告一段落。

 

STEP3:编辑代码

#include <reg52.h>

sbit led0 = P1^0;

void delay(unsigned int x)
{
	unsigned int i, j;
	for(i = 0; i < x; i++)
		for(j = 0; j < 113; j++);
}

void main()
{
	while(1)
	{
		led0 = 0;
		delay(1000);
		led0 = 1;
		delay(1000);
	}
}

 

1、我用的是指导书里面的代码,如果是直接复制过去的,可能出现无法显示的“?”,需要在 “Edit”→ “Configuration” 将Encoding格式变为UTF-8即可,如果在文件输出格式上出现问题,按照官方说明书指导就可以。

 

 

2、在用 Keil 编译前,需要找到工程左侧的 Target1,并单击右键选择 “Options for Target ‘Target 1’…”, 勾选输出格式为 HEX-80。

 

STEP4:编译代码

 

在写完简单的代码后,用 Keil 自带的编译功能进行编译,显示为:

 

 

0Error,0Warning,代码是没问题的,但能不能跑就需要看结果了,为了验证,需要先让板子通电。

神奇的是,通电后数码管亮了。正常的流程是通过STC-ISP下载程序后在单片机跑。

出现这种情况一般是出厂程序还在单片机运行,有些厂家为了检验产品一般会做产品测试,不会消除出厂程序。。

 

消除出厂程序,只需要将自己编译好的代码下载下来就可以覆盖掉了。

 

 

清除流程:

1、用 STC-ISP 打开编译后生成的LED.hex文件,一般会在自己建的工程里的Objects文件夹里。

 

2、点击下载/编程,让其自动运行就可以了

但是问题又来了,程序下载不下来........

 

反反复复操作停止→下载→拔开关→上电,但还是下载不下来。难道我的手艺不行,代码出问题了,操作检测了也没问题啊???

 

最后当你无路可走的时候,找卖货老板就对了。

 

结果是手册说明里的芯片型号写错了,最后锁定芯片型号为 STC89C52RC/LE52RC,原本说明书上标注的芯片型号是 STC89C52。

 

 

在进行了一番友好交流后,终于要验证关键成果了!!给板子上电。最终成果展示:绿灯一排,最左边的绿灯(D0)点亮说明此次点LED项目成功了。

 

总结:点亮 LED 项目的学习目的是初步掌握Keil建项目,下载程序看板子跑的结果,算是一个入门级别操作,一般都是按照流程化的操作,不出问题都会成功,除非遇见我遇到的问题,这个时候多问问商家就可以了,玩单片机是个长久的过程,以后会再多写点东西。

总体来说,除了一点这块板子学习单片机是没问题的,如果可以接受一套200元的价格。

 

若有收获,就点个赞吧

 

 

1
0