使用Keil C编译器处理DS5250

描述

本应用笔记介绍如何使用Keil μVision2工具套件启动并运行DS5250安全微控制器的C语言应用。所有开发均使用DS5250评估板和Keil μVision2 2.37版本完成,其中包括C编译器“C51”7.05版本。

概述

本应用笔记介绍如何使用Keil μVision2工具套件为DS5240或DS5250高速安全微控制器创建和编译C应用。还描述了使用 ROM 引导加载程序和微控制器工具包将编译的应用程序加载到微控制器的外部加密 RAM 中的过程。

本应用笔记的所有开发均使用DS5250和DS52x0评估板(Rev A)完成。C 应用程序是使用 Keil 的 μVision2 版本 2.40 和 Keil C51 编译器版本 7.10 创建和编译的。编译后的应用使用微控制器工具包52.0.2版本加载到DS2x0评估板RAM中。

创建和编译 C 应用程序

本节描述使用Keil的μVision5250集成开发环境为DS2创建和编译示例C应用的过程。

创建新项目

在 Keil μVision2 中,从菜单中选择“项目 ->创建新项目”。输入新项目的名称。将显示“为目标选择设备”对话框,如图 1 所示。在“数据库”下,选择“达拉斯半导体和DS5250”。选中“使用扩展链接器”和“使用扩展汇编程序”框,然后单击“确定”继续。

存储器

图1.为新的Keil μVision5250项目选择DS2。

一个新的对话框将询问“将 Dallas 80C390 启动代码复制到项目文件夹并将文件添加到项目?选择“是”。

设置项目选项

当项目窗口在左侧打开时,打开“目标 1”。右键单击目标 1,然后选择目标“目标 1”的选项。将出现一个选项对话框。

选择“目标”选项卡。更改此选项卡中的设置,如下所示(如图 2 所示):

内存模型 - 设置为大:XDATA 中的变量。

代码 ROM 大小 - 设置为连续模式:16 MB 程序。

设置“使用多个 DPTR 寄存器”复选框。

在对话框的片外代码存储器部分中,将顶部两个字段设置为“Eprom 开始:0x1400”和“Eprom 大小:0x10000”。

在对话框的片外 Xdata 内存部分中,将前两个字段设置为“Ram 开始:0x80000”和“RAM 大小:0x10000”。

存储器

图2.DS5250的目标选项设置。

最后,选择“输出”选项卡。在此选项卡中,选中“创建十六进制文件”框,然后选择“十六进制格式:十六进制-386”。

添加项目代码

打开一个新文件并输入以下 C 代码:

#include #include // Initialize serial port 0 to 9600 baud using 22.1184 MHz crystal void serialInit() {   PCON  |= 0x80;   SCON0  = 0x50;   TMOD  |= 0x21;   TH1    = 0xDC;   CKCON |= 0x10;   TCON   = 0x50;   SCON0 |= 0x02; } void main() {   serialInit();   printf('Hello from serial port 0r ');   while (1) {      P0 = 0x55; printf(".");      P0 = 0xAA; printf(".");   } }

将此文件另存为 main.c。该文件不会自动添加到项目中。要添加文件,请右键单击源组 1,然后选择将文件添加到组“源组 1”。选择 main.c 并单击添加,然后单击关闭。

接下来,打开文件 START390。A51 并注释掉以下行(在 STARTUP1 标签之后):

;     MOV     TA,#0xAA        ; Enable access to P4CNT ;         MOV     TA,#0x55 ;P4CNT_VAL EQU (SBCAN SHL 6) OR (PCES SHL 3) OR (P4PF) ; MOV     P4CNT,#P4CNT_VAL ; ;         MOV     TA,#0xAA        ; Enable access to P5CNT ;         MOV     TA,#0x55 ;P5CNT_VAL EQU (SP1EC SHL 5) OR (CX_IO SHL 3) OR (P5PF) ; MOV     P5CNT,#P5CNT_VAL Also, change the line #include to #include

编译项目

若要编译项目,请按 F7,或从菜单中选择“项目 ->生成目标”。如果未发生错误,则应显示消息,指示编译已成功完成,如图 3 所示。

存储器

图3.来自Keil μVision的编译输出。

使用微控制器工具包加载已编译的应用程序

微控制器工具包软件可在达拉斯/Maxim网站 http://www.maximintegrated.com 获得。

在DS52x0评估板上加载编译好的应用之前,应按如下方式设置电路板:

6-9 伏直流电源(中心柱正极)应连接到电源插头 J1。

应将直通 DB9 串行电缆从主机 PC 上的 J3 (串行 0) 连接到 COM1。

应插入 22.1184 MHz 晶体。

除 A1-A4、B1 和 B2 应打开外,所有 DIP 开关都应关闭。

要加载应用程序:

打开微控制器工具包。在微控制器类型对话框中,选择DS5240/50。

打开DS52x0评估板的电源。

选择选项 ->配置串行端口。 将串行端口选项设置为 COM1 和 9600 波特。

选择“目标”->以 1 波特打开 COM9600(或按 Ctrl+O)。

选择“目标”->“连接到加载程序”(或按 Ctrl+L)。

应出现加载程序提示符(DS5250 安全加载程序...)

在加载程序提示符下,键入“W MSIZE 12”并按回车键。

在加载程序提示符下,键入“W MCON 81”并按回车键。

从菜单中选择文件 -> 加载(或按 Ctrl+H)。选择已编译的应用程序十六进制文件。

加载完成后,将 DIP 开关 B1 设置为 OFF 位置。

存储器

图4.微控制器工具包的输出。

总结

Keil的μVision2和Dallas/Maxim的微控制器工具套件共同简化了DS5240和DS5250高速安全微控制器的构建和加载应用。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分