开发环境可是学习一个新技术的关键,这一期就开发环境如何搭建来做一下记录
首先是代码编写工具,俗称IDE。这里使用的是IAR Embedded Workbench。学习日记中所有用到的资源我都将上传在百度网盘永久分享,供各位一同使用。
链接: https://pan.baidu.com/s/1sliICTR 密码: shwy
安装IDE步骤很简单,中国千篇一律的安装破解流程。
在安装完该IDE后,尝试新建一个项目
单击上方菜单栏的Project->Create New Project->选择8051芯片 Empty Project->ok选择一个目录存储
随后在左侧workspace会有该项目
上方工具栏第一个,新建一个xxx.c文件,然后右击项目添加这个c文件
右击项目 rebuild all 或单击上方工具栏中 make 按钮 进行编译发现报了个错,缺少主入口
在c文件中输入
void main()
{
}
之后成功编译。
编译时会要求存储项目工作空间eww文件。
这文件就类似我们Visual Studio的sln文件,是项目文件
在STC89C51单片机编程的时候,我们通常会引入
#include
来将51单片机一些固有的物理地址和寄存器名字宏导入
在CC2530芯片的开发过程中我们也会有这样一个头文件可以导入
#include
关于cc2530学习板的购买的话,各位可以随便买。只要是cc2530芯片型号,都能学到标准的zigbee技术。只是在控制IO口方面与我会有出入。
我在某宝这家店购买的,我也不是在为他打广告,各位可以看着来,他家zigbee封面这样的。
尝试点亮第一个LED灯
当你购买了芯片后可以问商家索要模块原理图。我所购买的商家就配送有原理图。
发现了一颗LED灯名为LED1 正极接于电源 负极接于芯片P1_0口
数字信号都是由高低电平组成的,低电平输出有效 是指处理系统默认为低电平为有效信号,而高电平为非有效信号。无信号输出时,输出端一直为高电平。
所以当P1_0输出低电平时,这颗LED1应该就可以亮了
将主函数修改如下
void main()
{
P1DIR |= 0x01; //或运算 是一个寄存器,暂时不用明白是什么东西,之后会讲
P1_0 = 0; //可以将电平信号理解为布尔值。0为低电平(假),1为高电平(真)
WHILE(1); //死循环锁死
}
接着在正式烧录第一个程序之前,检查一下一些关键配置。
右击项目->options在弹出窗口的正中间
有一个Device选择,点开选Texas Instruments里的CC2530F256
然后左侧选择Linker,Output内勾上Override default
和下方的Allow C-SPY-specific extra output file
然后左侧选择 Debugger
将Simulator 下拉改为Texas Instruments
单击右下角ok保存设置
烧录程序,需要使用下载仿真器。
仿真器需要敲驱动。驱动在文章顶侧网盘内。
将仿真器接上USB,会提示未能什么什么成功安装驱动,则需要安装驱动。如果能正常安装,就不需要
打开设备管理器,右击SmartRF04EB更新驱动软件->浏览计算机以查找驱动程序软件->然后将驱动目录选择进去->下一步安装。
稍等片刻后就会提示已经成功更新驱动程序文件。
将下载仿真器的针脚一头接到Zigbee学习板上。
当双灯亮时无法下载,需要按复位按钮。
当左灯灭时,可下载。
单击IAR窗口上方工具栏右侧红色小帆船按钮是下载按钮。
下载完成后需要点一下全速运行(F5)按钮
发现,板子上的LED1成功的点亮
有时会将要烧录的程序备份一次,我们可进入项目的options->Linker->Extrea Output->将Generate extra output file和Override default勾选上,输入xxx.hex文件名
下方Output format选择intel-extended即可
hex文件可以理解成给单片机用的镜像文件。每一个程序编译后所生成的独有镜像。可以通过hex文件,来批量将一个程序写入很多单片机中。
如何将hex文件下载入芯片
我们需要使用SmartRFProgr.
安装完双击打开快捷方式
该程序会自动加载硬件对象。
在Flash image中选择hex文件
然后点最下方的Perform actions按钮即可将hex文件烧进芯片
http://tags.edu.sina.com.cn/%E5%BC%80%E6%B4%9B%E9%98%B3%E5%8F%91%E7%A5%A8%EF%BC%9A
吃力地慢慢阅读
助阵
感谢分享,很有收获