• 2018-2019-1 20165313 20165212 20165222 实验二 固件程序设计


    固件程序设计-1-MDK

    任务详情:

    参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM)

    提交破解程序中产生LIC的截图提交破解成功的截图

    实验步骤:

    这一步相当简单,先根据实验指导书安装好MDK,再用注册机生成LIC,复制粘贴上去即可。

    结果如下:

    固件程序设计-2-LED

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

     结果截图:

    代码分析:

    1, 系统初始化,中断设置,使能所有中断;

    2,判断按键,返回 boot 条件,确认是否进行程序下载;

    3 ,GPIO_PuPdSel(0,0);将0号引脚设置为上拉,即在无输入的情况下为0为高电平。GPIO_InOutSet(0,0);再将0号引脚设置为0,即为输出引脚。然后是一个循环,使灯不停闪烁。在这循环里包含了一个时延函数delay,包含了参数ms和i,当参数变化100*950时,即系统内i从0到949执行100次时,执行一次GPIO_SetVal(0,0);使0号引脚电平变为低电平,灯亮,在经过一个同样的时延函数,执行GPIO_SetVal(0,1),使0号引脚电平为1,即为高电平,灯灭。因此就能形成led灯不断闪烁。

    固件程序设计-3-UART

    1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图
    2.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.0”完成UART发送与中断接收实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图
    3.实验报告中分析代码

    实验结果截图:

    代码分析:

    1, 系统初始化,中断设置,使能所有中断;

    2,判断按键,返回 boot 条件,确认是否进行程序下载;

    3,UART_Init(); 初始化uart。

    4,UART_SendByte发送一个字符,UART_SendString发送字符,UART_SendNum发送十进制数,UART_SendHex发送16进制数。

    5,进入循环程序,等待串口中断到来并判断数据是否接受完毕,若中断到来,转入执行串口中断服务程序,待接收数据完毕,Z32将数据发回串口助手。

     固件程序设计-4-国密算法

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

    SM1 为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。对应算法:AES.

    SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RSA 2048位高,但运算速度快于RSA。对应算法:ECC椭圆曲线加密算法。

    SM3 消息摘要。可以用MD5作为对比理解。该算法已公开。校验结果为256位。对应算法:DM5算法。

    SM4 无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位。对应算法:DES算法。

    运行截图:

    固件程序设计-5-SM1

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

    运行截图:

  • 相关阅读:
    Leetcode 92. Reverse Linked List II
    Leetcode 206. Reverse Linked List
    Leetcode 763. Partition Labels
    Leetcode 746. Min Cost Climbing Stairs
    Leetcode 759. Employee Free Time
    Leetcode 763. Partition Labels
    搭建数据仓库第09篇:物理建模
    Python进阶篇:Socket多线程
    Python进阶篇:文件系统的操作
    搭建数据仓库第08篇:逻辑建模–5–维度建模核心之一致性维度2
  • 原文地址:https://www.cnblogs.com/20165222lixu/p/9903447.html
Copyright © 2020-2023  润新知