一、实验内容:

1.安装MDK,JLink驱动,运行uVision4,破解MDK
2.KEIL-MDK 中添加Z32 SC-000芯片库,完成LED实验
3.完成UART发送与中断接收实验
4.理解国密算法标准SM1,SM2,SM3,SM4并用gcc和gcc-arm编译
5.完成SM1加密实验

二、实验步骤

在开始试验之前,先安装MDK,JLink驱动,运行uVision4,破解MDK,

很多付费软件为了保证试用和购买安全,都会使用单独的注册机,比如CorelstudioX系列工作软件等。图为破解MDK,因为正版的太贵了而且性价比很低。
实验二 20155307 20155335 20155338 实验报告 固件程序设计

将LIC复制到keil4中的LIC输入框,点击Add LIC,破解完成。软件可以正常使用了,
实验二 20155307 20155335 20155338 实验报告 固件程序设计

KEIL-MDK 中添加Z32 SC-000芯片库,完成LED实验
实验二 20155307 20155335 20155338 实验报告 固件程序设计

第一项:LED灯亮灭

实验步骤:
1.建Z32工程基础编程环境:建立new uVision Project,选择完安装路径后,弹出芯片库选择框,在下拉框中选择Generic SC000 Device Database,在弹出框中点开ARM目录,选择SC000。
2.打开实验1-LED 闪烁\Z32HUA.uvproj以打开LED闪烁实验项目,编译项目生成实验1-LED 闪烁\bin\Z32HUA.bin
3.将实验箱接入电源,连接实验箱与电脑,打开Z32下载调试工具软件资料\Z32下载调试工具\NZDownloadTool.exe打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别
4.显示1设备已连接后,点击浏览,选择\实验 1-LED 闪烁\bin\Z32HUA.bin,点击下载,绿色进度条加载完成后,程序下载成功
5.关闭Z32电源,再打开,下载完的程序自动运行,可以看到核心板上LED灯闪烁。

下面两图为LED灯闪烁的抓拍
实验二 20155307 20155335 20155338 实验报告 固件程序设计
实验二 20155307 20155335 20155338 实验报告 固件程序设计

第二项:完成UART发送与中断接收

实验步骤:
1.打开实验 2-UART 发送与中断 接收\Z32HUA.uvproj以打开UART 发送与中断 接收实验项目,编译项目生成实验 2-UART 发送与中断接收\bin\Z32HUA.bin
2.将实验箱接入电源,连接实验箱与电脑,用 9 针串口线将 Z32 模块的串口与电脑 USB 接口连接,打开Z32下载调试工具软件资料\Z32下载调试工具\NZDownloadTool.exe打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,
3.显示1设备已连接后,点击浏览,选择\实验 2-UART 发送与中断接收\bin\Z32HUA.bin,点击下载,绿色进度条加载完成后,程序下载成功
4.打开串口助手,设置相应参数。
5.关闭Z32电源,再打开,下载完的程序自动运行,在串口调试助手的字符串输入框输入字符串“abcdefgh”,然后点击发
送按钮。

下图为我们小组成功识别了电脑并且建立了链接
实验二 20155307 20155335 20155338 实验报告 固件程序设计
实验二 20155307 20155335 20155338 实验报告 固件程序设计

第三项:完成国密算法

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

  • 我们组查了一下相关资料,百度上面对国密算法定义和用途的解释是:用于实现商用密码算法的加密、解密和认证等功能,商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。
    国密算法SM1:算法未公开 SM2:ECC SM3:MD5 SM4:DES

下面是运行测试国密算法的截图:
实验二 20155307 20155335 20155338 实验报告 固件程序设计

第四项:完成SM1加密

实验步骤:
1.打开实验 8-SM1\Z32HUA.uvproj以打开UART 发送与中断 接收实验项目,编译项目生成实验 8-SM1\bin\Z32HUA.bin
2.将实验箱接入电源,连接实验箱与电脑,用 9 针串口线将 Z32 模块的串口与电脑 USB 接口连接,打开Z32下载调试工具软件资料\Z32下载调试工具\NZDownloadTool.exe打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,
3.显示1设备已连接后,点击浏览,选择\实验 8-SM1\bin\Z32HUA.bin,点击下载,绿色进度条加载完成后,程序下载成功
打开串口助手,设置相应参数。
4.关闭Z32电源,再打开,下载完的程序自动运行,显示屏显示“SLE4428 实验!请插入 IC 卡.”。插入IC卡后:用户代码为:”,第四行显示用户代码“D27600000400”。再按下矩阵键盘的“A”键,屏幕 第一行显示提示“按-A 键校验密码”并在第二行显示两个字节的校验密码 “校验 0xFF,0xFF”。按下矩阵键盘的“A”键,屏幕第三行显示“校验成功”,第四行显示校验 剩余机会“剩余机会:8 次”。
5.按下矩阵键盘的“A”键,则屏幕第一行显示“加密解密实验”,第二、三行分别显示选项“1.加密”,“2.解密”。按“1”键选择加密,屏幕第一行显示“观看串口调试 助手”,第二行显示“A 键确认加密”。此时,串口调试助手显示原始数据和 加密密钥。按下“A”键确认加密后,屏幕第三行显示“加密完成”,第四行显示提示 “A 键存入 IC 卡”。串口调试助手显示加密后的数据。按“A”键,将加密数据存入 IC 卡,此时串口显示“已将数据写入 IC 卡”。 屏幕回到加密解密实验选择菜单。

图为成功显示
实验二 20155307 20155335 20155338 实验报告 固件程序设计
图为选择加密还是解密
实验二 20155307 20155335 20155338 实验报告 固件程序设计

下面进行加密实验。
1.第一行显示“ 观看串口调试助手”,第二行显示“A键确认加密”,通过 串口发送字符“将加密以下数据:”并将发送加密前的数据发送至 PC 机, 发送换行,串口继续发送“加密钥:”并将加密密钥数组发送至 PC 机, 发送完毕等待“ A”键按下;
2.通过串口发送字符“加密后的数据:”并将加密后的数据发送至 PC 机, 换行,在液晶屏第三显示“ 加密完成”,第四行显示“A键存入 IC 卡”, 等待“ A”键按下。当“ A”键按下后,向 SLE4428 IC卡发送加密后的数据, 通过串口向 PC 发送“已将数据写入 IC 卡。”跳转至B段程序。

图为加密成功:
实验二 20155307 20155335 20155338 实验报告 固件程序设计

实验中的问题及解决过程

1.破解MD5失败:
主要是没有认真读题目要求,按照题目要求使用管理员权限打开就没问题了,估计是破解版软件,不用权限怕是杀毒软件会报错的。
2.电脑不能被识别:
识别不了无非是从两个方面考虑问题:一个是硬件方面,一个是软件方面。我们首先从硬件方面考虑,通过转换usb接口的方式成功连接,但是每次新的实验都需要重新识别,我们惊奇的发现每次都使用新的usb接口就可以实现识别了。最后三个usb接口用完了,我们重启电脑之后普又可以重新使用了。

相关文章:

  • 2021-08-07
  • 2021-07-20
  • 2022-01-01
  • 2021-07-02
  • 2021-11-10
  • 2022-02-06
猜你喜欢
  • 2021-09-05
  • 2022-01-24
  • 2021-12-01
  • 2021-09-08
  • 2021-12-02
  • 2022-01-23
  • 2021-08-18
相关资源
相似解决方案