0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用Keil C編譯器處理DS5250

星星科技指導(dǎo)員 ? 來源:ADI ? 作者:ADI ? 2023-03-01 17:10 ? 次閱讀

本應(yīng)用筆記介紹如何使用Keil μVision2工具套件啟動(dòng)并運(yùn)行DS5250安全微控制器C語言應(yīng)用。所有開發(fā)均使用DS5250評(píng)估板和Keil μVision2 2.37版本完成,其中包括C編譯器“C51”7.05版本。

概述

本應(yīng)用筆記介紹如何使用Keil μVision2工具套件為DS5240或DS5250高速安全微控制器創(chuàng)建和編譯C應(yīng)用。還描述了使用 ROM 引導(dǎo)加載程序和微控制器工具包將編譯的應(yīng)用程序加載到微控制器的外部加密 RAM 中的過程。

本應(yīng)用筆記的所有開發(fā)均使用DS5250和DS52x0評(píng)估板(Rev A)完成。C 應(yīng)用程序是使用 Keil 的 μVision2 版本 2.40 和 Keil C51 編譯器版本 7.10 創(chuàng)建和編譯的。編譯后的應(yīng)用使用微控制器工具包52.0.2版本加載到DS2x0評(píng)估板RAM中。

創(chuàng)建和編譯 C 應(yīng)用程序

本節(jié)描述使用Keil的μVision5250集成開發(fā)環(huán)境為DS2創(chuàng)建和編譯示例C應(yīng)用的過程。

創(chuàng)建新項(xiàng)目

在 Keil μVision2 中,從菜單中選擇“項(xiàng)目 ->創(chuàng)建新項(xiàng)目”。輸入新項(xiàng)目的名稱。將顯示“為目標(biāo)選擇設(shè)備”對(duì)話框,如圖 1 所示。在“數(shù)據(jù)庫”下,選擇“達(dá)拉斯半導(dǎo)體和DS5250”。選中“使用擴(kuò)展鏈接器”和“使用擴(kuò)展匯編程序”框,然后單擊“確定”繼續(xù)。

poYBAGP_FnGAW2ITAAEtYcPIlJs377.gif

圖1.為新的Keil μVision5250項(xiàng)目選擇DS2。

一個(gè)新的對(duì)話框?qū)⒃儐枴皩?Dallas 80C390 啟動(dòng)代碼復(fù)制到項(xiàng)目文件夾并將文件添加到項(xiàng)目?選擇“是”。

設(shè)置項(xiàng)目選項(xiàng)

當(dāng)項(xiàng)目窗口在左側(cè)打開時(shí),打開“目標(biāo) 1”。右鍵單擊目標(biāo) 1,然后選擇目標(biāo)“目標(biāo) 1”的選項(xiàng)。將出現(xiàn)一個(gè)選項(xiàng)對(duì)話框。

選擇“目標(biāo)”選項(xiàng)卡。更改此選項(xiàng)卡中的設(shè)置,如下所示(如圖 2 所示):

內(nèi)存模型 - 設(shè)置為大:XDATA 中的變量。

代碼 ROM 大小 - 設(shè)置為連續(xù)模式:16 MB 程序。

設(shè)置“使用多個(gè) DPTR 寄存器”復(fù)選框。

在對(duì)話框的片外代碼存儲(chǔ)器部分中,將頂部?jī)蓚€(gè)字段設(shè)置為“Eprom 開始:0x1400”和“Eprom 大?。?x10000”。

在對(duì)話框的片外 Xdata 內(nèi)存部分中,將前兩個(gè)字段設(shè)置為“Ram 開始:0x80000”和“RAM 大?。?x10000”。

pYYBAGP_FnKAFqHWAAGjUGotu0U473.gif

圖2.DS5250的目標(biāo)選項(xiàng)設(shè)置。

最后,選擇“輸出”選項(xiàng)卡。在此選項(xiàng)卡中,選中“創(chuàng)建十六進(jìn)制文件”框,然后選擇“十六進(jìn)制格式:十六進(jìn)制-386”。

添加項(xiàng)目代碼

打開一個(gè)新文件并輸入以下 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。該文件不會(huì)自動(dòng)添加到項(xiàng)目中。要添加文件,請(qǐng)右鍵單擊源組 1,然后選擇將文件添加到組“源組 1”。選擇 main.c 并單擊添加,然后單擊關(guān)閉。

接下來,打開文件 START390。A51 并注釋掉以下行(在 STARTUP1 標(biāo)簽之后):

; 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

編譯項(xiàng)目

若要編譯項(xiàng)目,請(qǐng)按 F7,或從菜單中選擇“項(xiàng)目 ->生成目標(biāo)”。如果未發(fā)生錯(cuò)誤,則應(yīng)顯示消息,指示編譯已成功完成,如圖 3 所示。

pYYBAGP_FnOAN2DUAAELXo-3g9k459.gif

圖3.來自Keil μVision的編譯輸出。

使用微控制器工具包加載已編譯的應(yīng)用程序

微控制器工具包軟件可在達(dá)拉斯/Maxim網(wǎng)站 http://www.maximintegrated.com 獲得。

在DS52x0評(píng)估板上加載編譯好的應(yīng)用之前,應(yīng)按如下方式設(shè)置電路板:

6-9 伏直流電源中心柱正極)應(yīng)連接到電源插頭 J1。

應(yīng)將直通 DB9 串行電纜從主機(jī) PC 上的 J3 (串行 0) 連接到 COM1。

應(yīng)插入 22.1184 MHz 晶體。

除 A1-A4、B1 和 B2 應(yīng)打開外,所有 DIP 開關(guān)都應(yīng)關(guān)閉。

要加載應(yīng)用程序:

打開微控制器工具包。在微控制器類型對(duì)話框中,選擇DS5240/50。

打開DS52x0評(píng)估板的電源。

選擇選項(xiàng) ->配置串行端口。 將串行端口選項(xiàng)設(shè)置為 COM1 和 9600 波特。

選擇“目標(biāo)”->以 1 波特打開 COM9600(或按 Ctrl+O)。

選擇“目標(biāo)”->“連接到加載程序”(或按 Ctrl+L)。

應(yīng)出現(xiàn)加載程序提示符(DS5250 安全加載程序...)

在加載程序提示符下,鍵入“W MSIZE 12”并按回車鍵。

在加載程序提示符下,鍵入“W MCON 81”并按回車鍵。

從菜單中選擇文件 -> 加載(或按 Ctrl+H)。選擇已編譯的應(yīng)用程序十六進(jìn)制文件。

加載完成后,將 DIP 開關(guān) B1 設(shè)置為 OFF 位置。

pYYBAGP_FnSAbQYyAADbycYg-Po555.gif

圖4.微控制器工具包的輸出。

總結(jié)

Keil的μVision2和Dallas/Maxim的微控制器工具套件共同簡(jiǎn)化了DS5240和DS5250高速安全微控制器的構(gòu)建和加載應(yīng)用。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7394

    瀏覽量

    150626
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7402

    瀏覽量

    163389
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1607

    瀏覽量

    48977
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    高速安全微控制DS5250電子資料

    概述:DS5250是Maxim公司生產(chǎn)的一款安全微控制,它是該系列中的一款高度安全、4時(shí)鐘每機(jī)器周期、100%兼容8051指令集的微控制。DS5250設(shè)計(jì)用作加密引擎,應(yīng)用于密碼鍵
    發(fā)表于 04-21 06:26

    DS5250 pdf datasheet

    GENERAL DESCRIPTIONThe DS5250 is a highly secure, 4 clocks-per-machinecycle, 100
    發(fā)表于 07-25 01:23 ?89次下載

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

    DS5250是Maxim安全微控制系列中的一款高度安全、4時(shí)鐘每機(jī)器周期、100%兼容8051指令集的微控制DS5250設(shè)計(jì)用作加密引擎,應(yīng)用于密碼鍵盤、金融終端及其它數(shù)據(jù)安全性
    發(fā)表于 05-11 09:37 ?162次下載

    Keil C51編譯器用戶手冊(cè) 中文版

    Keil C51編譯器用戶手冊(cè) 中文版:本手冊(cè)講述對(duì)8051 的目標(biāo)環(huán)境,如何使用Cx51 優(yōu)化C 編譯器
    發(fā)表于 08-06 08:51 ?0次下載

    DS5250與磁卡讀卡的連接

    摘要:本應(yīng)用筆記闡述了在DS5250安全微控制上輕松實(shí)現(xiàn)磁卡讀卡和解碼操作的設(shè)計(jì)。文章還演示了開發(fā)同時(shí)具有磁卡讀卡功能和安全微控制高級(jí)加密功能的實(shí)際應(yīng)用。這一實(shí)例
    發(fā)表于 04-23 10:34 ?1830次閱讀
    <b class='flag-5'>DS5250</b>與磁卡讀卡<b class='flag-5'>器</b>的連接

    利用DS5250產(chǎn)生RSA密鑰

    摘要:DS5250微控制評(píng)估(EV)板是經(jīng)過驗(yàn)證的用于評(píng)估這款高速微控制的平臺(tái),本應(yīng)用筆記介紹了如何設(shè)置評(píng)估板,并根據(jù)應(yīng)用的位長(zhǎng)需要產(chǎn)生RSA密鑰的方法。采用Keil µ
    發(fā)表于 04-23 17:46 ?1197次閱讀

    編譯器_keil的優(yōu)化選項(xiàng)問題

    keil編譯器的優(yōu)化選項(xiàng)針對(duì)ARM,對(duì)STM32編譯的一些優(yōu)化的問題
    發(fā)表于 02-25 14:18 ?3次下載

    關(guān)于KEIL ARM編譯器的使用介紹

    KEIL ARM編譯器的使用
    的頭像 發(fā)表于 07-10 10:50 ?6244次閱讀

    如何在Keil MDK中使用GCC編譯器工具鏈

    Keil MDK 是否支持編譯器?有沒有辦法選擇其他編譯器? 可能你使用其他GUN工具鏈進(jìn)行編譯時(shí),會(huì)出現(xiàn)類似如下錯(cuò)誤: --- Error: cant execute as--- E
    的頭像 發(fā)表于 11-20 15:53 ?4545次閱讀

    DS5250與磁條讀卡接口

    本應(yīng)用筆記解釋了如何在DS5250安全微控制上輕松實(shí)現(xiàn)磁條卡讀取和解碼。本文還演示了如何開發(fā)將磁條卡讀取功能與安全微控制的更高級(jí)別安全性和加密功能相結(jié)合的應(yīng)用。本例使用DS5250
    的頭像 發(fā)表于 01-11 09:49 ?1105次閱讀
    <b class='flag-5'>DS5250</b>與磁條讀卡<b class='flag-5'>器</b>接口

    DS5250微控制的模冪時(shí)序

    模冪用于許多加密算法。任何實(shí)現(xiàn)這些算法之一的人都必須知道操作大約需要多長(zhǎng)時(shí)間。本應(yīng)用筆記描述了如何在DS5250高速、安全微控制上完成模冪運(yùn)算。它列出了運(yùn)行各種表達(dá)式的典型時(shí)間,并描述了獲取計(jì)時(shí)的代碼流。
    的頭像 發(fā)表于 01-11 16:02 ?635次閱讀
    <b class='flag-5'>DS5250</b>微控制<b class='flag-5'>器</b>的模冪時(shí)序

    利用DS5250產(chǎn)生RSA密鑰

    DS5250微控制評(píng)估(EV)板是經(jīng)過驗(yàn)證的用于評(píng)估這款高速微控制的平臺(tái),本應(yīng)用筆記介紹了如何設(shè)置評(píng)估板,并根據(jù)應(yīng)用的位長(zhǎng)需要產(chǎn)生RSA密鑰的方法。采用Keil μVision2?
    的頭像 發(fā)表于 02-09 15:39 ?557次閱讀
    利用<b class='flag-5'>DS5250</b>產(chǎn)生RSA密鑰

    使用DS5250作為DS5002的直接升級(jí)

    DS5250高速安全微控制采用80引腳四方扁平封裝(QFP),是DS5002FP的引腳兼容、高性能升級(jí)版。從DS5002FP升級(jí)到DS5250
    的頭像 發(fā)表于 03-01 16:29 ?1257次閱讀
    使用<b class='flag-5'>DS5250</b>作為<b class='flag-5'>DS</b>5002的直接升級(jí)

    通過將DS5250用作安全協(xié)處理器來提高系統(tǒng)安全性

    本應(yīng)用筆記介紹如何將Maxim DS5250高速安全微處理器用作安全協(xié)處理器,以保護(hù)密碼、PIN、加密密鑰和其他關(guān)鍵數(shù)據(jù)。DS5250采用三路DES總線加密、精心設(shè)計(jì)的篡改傳感
    的頭像 發(fā)表于 03-02 13:57 ?760次閱讀
    通過將<b class='flag-5'>DS5250</b>用作安全協(xié)<b class='flag-5'>處理器</b>來提高系統(tǒng)安全性

    Keil μVision調(diào)試DS52x0安全微控制配合使用

    本應(yīng)用筆記介紹如何使用Keil μVision2工具套件調(diào)試DS5250高速安全微控制的應(yīng)用。該過程包括將調(diào)試監(jiān)視應(yīng)用程序加載到DS5250
    的頭像 發(fā)表于 06-13 17:22 ?896次閱讀
    將<b class='flag-5'>Keil</b> μVision調(diào)試<b class='flag-5'>器</b>與<b class='flag-5'>DS</b>52x0安全微控制<b class='flag-5'>器</b>配合使用