2018-2019-1 20165232 20165231 20165235实验二——固件程序设计

本次的实验共有五个重要的部分:

  • MDK安装破解
  • LED跑马灯实验
  • UART发送与中断接收实验
  • 国密算法
  • SM1加密实验
  • 设备归还

一、MDK安装破解

  • 实验要求
  1. 注意不经老师允许不准烧写自己修改的代码
  2. 三人一组
  3. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM)
  4. 提交破解程序中产生LIC的截图
  5. 提交破解成功的截图
  • 实验步骤

    运行mdk.exe准备安装 MDK-ARM,并点下一步。
    首先在要安装的磁盘目录下面新建文件夹,并命名,然后点击Browse选择安装目录。
    填写用户信息。
    安装ULINK驱动
    若系统提示是否想安装这个设备软件,点击安装。
    Ulink安装结束后自动退出,安装结束。
    破解 MDK4.74

    运行uVision4,点 File>>License Management,复制 CID。
    再运行keil-MDK注册机
    粘贴CID至注册机
    最后点击 generate 生成 LIC。
    将注册机生成的 LIC 复制到 keil4中的 LIC 输入框中,点击 Add LIC,破
    解完成。

  • 截图


二、LED

  • 实验要求
  1. 注意不经老师允许不准烧写自己修改的代码
  2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
  3. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
  4. 实验报告中分析代码
  • 实验步骤

    KEIL-MDK 中添加 Z32 SC-000 芯片库,安装 SC000 库。

    运行MDK-ARM_AddOn_SC000_Support.exe。打开之后,点击 NEXT。

    在许可证这一步,点击同意,用户信息这一步输入基本信息,点下一步。

    安装完成,点击 Finish 按钮完成库的添加。
    在 keil MDK 工程选择 SC000 库

    运行keil uVision4 MDK。新建工程选择 Project——>New uVision Project。

    在弹出的安装路径窗口选择安装路径文件夹,并为工程命名。

    在芯片库选择框选择库 Generic SC000 Device Database,点击OK,选择具体的 CPU 型号。

    点开 ARM 结构目录,选择 SC000,点击 OK。

  • 操作步骤

  1. 打开“实验1-LED闪烁”目录的工程文件。编译工程,产生后缀名为.bin的可执行代码。

  2. 下载程序:将实验箱接入电源,用USB公对公线将实验箱的USB接口连接到电脑的USB接口上,在电脑上运行Z32下载调试工具NZDownloadTool.exe。

  3. 打开 Z32 的电源开关前,按住 Reboot 按键不放,两次打开电源开关,Z32 即可被电脑识别,进行下载调试。当左边框出现“1设备已连接”,设备选择中显示芯片型号,点击窗口右下方“确认下载”一栏的“浏览”,选择程序路径为“Z32 开发指南\实验 1-LED闪烁\bin\Z32HUA.bin”并打开,最后点击下载。

  4. 左边状态提示框更新显示“程序下载成功!”此时程序就下载进Z32的实验板上了。

  5. 对LED灯的操作:关闭Z32电源开关,再打开,程序自动运行,此时可以看到实验现象:Z32核心板上L2灯开始闪烁。

  • 截图



三、UART发送与中断接受实验

  • 实验要求
  1. 注意不经老师允许不准烧写自己修改的代码
  2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
  3. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.0”完成UART发送与中断接收实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
  4. 实验报告中分析代码
  • 实验步骤
  1. void UART_SendByte(UINT8 dat)是发送单字节函数,使用此函数一次发
    送一个字节数据;
  2. void UART_SendString(UINT8 * str)是发送字符串函数,使用此函数发送
    字符串数据;
  3. void uart_SendString(UINT8 buf[],UINT8 length)是发送某一长度的字符
    串函数,实现发送一定长度的字符串数据。
  4. void UART_SendNum(INT32 num)是发送单个十进制整数函数,使用此函数发送一个十进制整数;
  • 截图


四、国密算法

  • 实验要求
  1. 网上搜集国密算法标准SM1,SM2,SM3,SM4
  2. 网上找一下相应的代码和标准测试代码,在Ubuntu中分别用gcc和gcc-arm编译
  3. 四个算法的用途?
  4. 《密码学》课程中分别有哪些对应的算法?
  5. 提交2,3两个问题的答案
  6. 提交在Ubuntu中运行国密算法测试程序的截图
  • 简介

国密即国家密码局认定的国产密码算法,即商用密码。
国密算法由国家密码局发布,包含SM1 SM2 SM3 SM4 SSF33算法:
SM1对称密码:该算法保密,不公开,其加密强度与AES相当,调用该算法时,需要通过加密芯片的接口进行调用。SM1 算法是分组密码算法,广泛应用于电子政务、电子商务及国民经济的各个应用领域(包括国家政务通、警务通等重要领域)。
SM2算法:SM2椭圆曲线公钥密码算法是我国自主设计的公钥密码算法,包括SM2-1椭圆曲线数字签名算法,SM2-2椭圆曲线密钥交换协议,SM2-3椭圆曲线公钥加密算法,分别用于实现数字签名密钥协商和数据加密等功能。其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA。
SM3算法:SM3杂凑算法是我国自主设计的密码杂凑算法,校验结果为256位,适用于商用密码应用中的数字签名和验证消息认证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。
SM4算法:SM4分组密码算法是我国自主设计的分组对称密码算法,用于实现数据的加密/解密运算,以保证数据和信息的机密性。

  • 截图(SM3)

五、SM1加密实验

  • 实验要求
    1.注意不经老师允许不准烧写自己修改的代码
  1. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
    1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.16”完成SM1加密实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
  2. 实验报告中分析代码
  • 截图




六、清理

  • 实验要求

实验结束后,把实验室原来的网线插回,否则以后做实验的同学无法开机

  1. 只有用实验室机器的小组做
  2. 提交你们小组使用的计算机的编号照片
  3. 提交插好网线的照片
  4. 提交盖好后盖的照片

转载于:https://www.cnblogs.com/heyanda/p/9885603.html

2018-2019-1 20165232 20165231 20165235实验二——固件程序设计相关推荐

  1. 2018-2019-1 20165223 20165218 实验二 固件程序设计

    实验二 固件程序设计 转载于:https://www.cnblogs.com/zicerain/p/9906002.html

  2. 2018-2019-1 20165205 20165233 实验二 固件程序设计

    2018-2019-1 20165205 20165233 实验二 固件程序设计 2018-2019-1 20165205 20165233 实验二 固件程序设计 https://www.cnblog ...

  3. 2017-2018-1 20155213 20155303 实验二 固件程序设计

    2017-2018-1 20155213 20155303 实验二 固件程序设计 任务一:固件程序设计-1-MDK 注意不经老师允许不准烧写自己修改的代码 两人(个别三人)一组 参考云班课资源中&qu ...

  4. 2018-2019-1 20165202 20165210 20165214 实验二 固件程序设计

    2018-2019-1 20165202 20165210 20165214 实验二 固件程序设计 一.实验内容 安装MDK,JLink驱动,运行uVision4,破解MDK KEIL-MDK 中添加 ...

  5. 【2018-2019-1】20165223-20165218 实验二 固件程序设计

    小组成员:20165223 ,20165218 实验名称:固件程序设计 目录 一.实验内容 任务一:固件程序设计-1-MDK 任务二:固件程序设计-2-LED 任务三:固件程序设计-3-UART 任务 ...

  6. 2018-2019-1 20165325 20165320 20165337 实验二 固件程序设计

    小组博文链接 转载于:https://www.cnblogs.com/maxeysblog/p/9903917.html

  7. 20165235实验四 Android程序设计

    20165235实验四 Android程序设计 实验课程:JAVA编程设计 实验名称:Android开发 姓名:祁瑛 学号:20165235 实验时间:2018.05.16 指导老师:娄家鹏 Andr ...

  8. 20175212童皓桢 Java实验二-面向对象程序设计实验报告

    20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设 ...

  9. matlab用for编写乘法表,实验二 Matlab程序设计基本方法1

    实验二Matlab程序设计基本方法 覃照乘自092 电气工程学院 一.实验目的: 1.熟悉MATLAB 程序编辑与设计环境 2.掌握各种编程语句语法规则及程序设计方法 3.函数文件的编写和设计 4.了 ...

  10. 汇编语言实验二 汇编语言程序设计(顺序、多分支、循环)

    **实验二 汇编语言程序设计(顺序.多分支.循环)** 一. 实验目的 1.掌握顺序和循环程序结构和设计方法: 2.熟悉在PC机上建立.汇编.连接.调试和运行8086/8088汇编语言程序的过程. 二 ...

最新文章

  1. linux系统一下剪贴板在哪里,Linux的最佳剪贴板管理器
  2. 什么意思呢_technician是什么意思
  3. 又一金融科技巨头入局,智慧出行的竞争靠什么胜出?
  4. mysql数据库入门教程(12):变量讲解大全
  5. 歌词数据解析、歌词滚动、歌词进度控制功能的实现(基于js-base64、lyric-parser、better-scroll),以vue项目为例
  6. bootstrap --- 分页
  7. StarLake:汇量科技云原生数据湖的探索和实践
  8. java怎么写事件listener_java 事件监听器ActionListener
  9. bool 取反_dataframe根据bool值高效地进行多重条件筛选的
  10. 前端笔记-使用JavaScript防止空表单提交
  11. 大疆地理围栏系统预防无人机闯入机场
  12. 【boost.asio】不知道ip地址的情况下连接主机的方式
  13. “我明明是一个老师,病毒却把我逼成了主播……”
  14. 在一个行业做,一定要打造自己的品牌IP
  15. 函数式编程与命令式编程的学习难度比较
  16. 初次见面C#排坑记录
  17. Spotfire 表达式中的属性
  18. 【方法篇】质谱手段分析组蛋白修饰类型
  19. 文件共享——HHFM
  20. smtp java 抓包_[Wireshark]_003_电子邮件抓包分析

热门文章

  1. 佳佳数据恢复软件免费版
  2. 解决黑苹果核显HD4400开机卡在“io console user: gio screen lock state 3”问题/HD4400核显只有7M问题
  3. 新中大财务软件虚拟化解决方案
  4. php 金额转大写,php实现将人民币金额转大写的办法
  5. android英文菜单,安卓recovery菜单中英文对照
  6. Unity解析XML文件
  7. apk反编译 (com.googlecode.d2j.DexException: not support version问题解决)
  8. 计算机上自带的打字游戏,完美运行金山打字通2016(包括自带的小游戏)
  9. 在Vue中使用Echarts绘制带图标的矩形树图
  10. 哈工大计算机系统大作业 程序人生-Hello’s P2P