0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用Keil C编译器处理DS5250

星星科技指导员 来源:ADI 作者:ADI 2023-03-01 17:10 次阅读

本应用笔记介绍如何使用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”。选中“使用扩展链接器”和“使用扩展汇编程序”框,然后单击“确定”继续。

poYBAGP_FnGAW2ITAAEtYcPIlJs377.gif

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

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

设置项目选项

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

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

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

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

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

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

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

pYYBAGP_FnKAFqHWAAGjUGotu0U473.gif

图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 所示。

pYYBAGP_FnOAN2DUAAELXo-3g9k459.gif

图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 位置。

pYYBAGP_FnSAbQYyAADbycYg-Po555.gif

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

总结

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

审核编辑:郭婷

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

    关注

    48

    文章

    7482

    浏览量

    151012
  • 存储器
    +关注

    关注

    38

    文章

    7447

    浏览量

    163581
  • 编译器
    +关注

    关注

    1

    文章

    1618

    浏览量

    49043
收藏 人收藏

    评论

    相关推荐

    高速安全微控制DS5250电子资料

    概述:DS5250是Maxim公司生产的一款安全微控制,它是该系列中的一款高度安全、4时钟每机器周期、100%兼容8051指令集的微控制DS5250设计用作加密引擎,应用于密码键
    发表于 04-21 06:26

    DS5250 pdf datasheet

    GENERAL DESCRIPTIONThe DS5250 is a highly secure, 4 clocks-per-machinecycle, 100
    发表于 07-25 01:23 89次下载

    DS5250中文资料 (高速安全微控制)

    DS5250是Maxim安全微控制系列中的一款高度安全、4时钟每机器周期、100%兼容8051指令集的微控制DS5250设计用作加密引擎,应用于密码键盘、金融终端及其它数据安全性
    发表于 05-11 09:37 162次下载

    Keil C51编译器用户手册 中文版

    Keil C51编译器用户手册 中文版:本手册讲述对8051 的目标环境,如何使用Cx51 优化C 编译器
    发表于 08-06 08:51 0次下载

    DS5250与磁卡读卡的连接

    摘要:本应用笔记阐述了在DS5250安全微控制上轻松实现磁卡读卡和解码操作的设计。文章还演示了开发同时具有磁卡读卡功能和安全微控制高级加密功能的实际应用。这一实例
    发表于 04-23 10:34 1842次阅读
    <b class='flag-5'>DS5250</b>与磁卡读卡<b class='flag-5'>器</b>的连接

    利用DS5250产生RSA密钥

    摘要:DS5250微控制评估(EV)板是经过验证的用于评估这款高速微控制的平台,本应用笔记介绍了如何设置评估板,并根据应用的位长需要产生RSA密钥的方法。采用Keil µ
    发表于 04-23 17:46 1211次阅读

    编译器_keil的优化选项问题

    keil编译器的优化选项针对ARM,对STM32编译的一些优化的问题
    发表于 02-25 14:18 3次下载

    关于KEIL ARM编译器的使用介绍

    KEIL ARM编译器的使用
    的头像 发表于 07-10 10:50 6293次阅读

    如何在Keil MDK中使用GCC编译器工具链

    Keil MDK 是否支持编译器?有没有办法选择其他编译器? 可能你使用其他GUN工具链进行编译时,会出现类似如下错误: --- Error: cant execute as--- E
    的头像 发表于 11-20 15:53 4611次阅读

    DS5250与磁条读卡接口

    本应用笔记解释了如何在DS5250安全微控制上轻松实现磁条卡读取和解码。本文还演示了如何开发将磁条卡读取功能与安全微控制的更高级别安全性和加密功能相结合的应用。本例使用DS5250
    的头像 发表于 01-11 09:49 1164次阅读
    <b class='flag-5'>DS5250</b>与磁条读卡<b class='flag-5'>器</b>接口

    DS5250微控制的模幂时序

    模幂用于许多加密算法。任何实现这些算法之一的人都必须知道操作大约需要多长时间。本应用笔记描述了如何在DS5250高速、安全微控制上完成模幂运算。它列出了运行各种表达式的典型时间,并描述了获取计时的代码流。
    的头像 发表于 01-11 16:02 676次阅读
    <b class='flag-5'>DS5250</b>微控制<b class='flag-5'>器</b>的模幂时序

    利用DS5250产生RSA密钥

    DS5250微控制评估(EV)板是经过验证的用于评估这款高速微控制的平台,本应用笔记介绍了如何设置评估板,并根据应用的位长需要产生RSA密钥的方法。采用Keil µVision2®
    的头像 发表于 02-09 15:39 589次阅读
    利用<b class='flag-5'>DS5250</b>产生RSA密钥

    使用DS5250作为DS5002的直接升级

    DS5250高速安全微控制采用80引脚四方扁平封装(QFP),是DS5002FP的引脚兼容、高性能升级版。从DS5002FP升级到DS5250
    的头像 发表于 03-01 16:29 1311次阅读
    使用<b class='flag-5'>DS5250</b>作为<b class='flag-5'>DS</b>5002的直接升级

    通过将DS5250用作安全协处理器来提高系统安全性

    本应用笔记介绍如何将Maxim DS5250高速安全微处理器用作安全协处理器,以保护密码、PIN、加密密钥和其他关键数据。DS5250采用三路DES总线加密、精心设计的篡改传感
    的头像 发表于 03-02 13:57 810次阅读
    通过将<b class='flag-5'>DS5250</b>用作安全协<b class='flag-5'>处理器</b>来提高系统安全性

    Keil μVision调试DS52x0安全微控制配合使用

    本应用笔记介绍如何使用Keil μVision2工具套件调试DS5250高速安全微控制的应用。该过程包括将调试监视应用程序加载到DS5250
    的头像 发表于 06-13 17:22 941次阅读
    将<b class='flag-5'>Keil</b> μVision调试<b class='flag-5'>器</b>与<b class='flag-5'>DS</b>52x0安全微控制<b class='flag-5'>器</b>配合使用