From 9d66651b6b4b024cf422142698316a7f98e34aae Mon Sep 17 00:00:00 2001 From: Magnetic516 <1258016464@qq.com> Date: Sat, 8 Jan 2022 11:50:59 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\351\273\204\346\263\275\350\276\211.docx" | Bin 22968 -> 23377 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git "a/\345\274\200\351\242\230\346\212\245\345\221\212\346\250\241\346\235\277/\345\274\200\351\242\230\346\212\245\345\221\212-\351\273\204\346\263\275\350\276\211.docx" "b/\345\274\200\351\242\230\346\212\245\345\221\212\346\250\241\346\235\277/\345\274\200\351\242\230\346\212\245\345\221\212-\351\273\204\346\263\275\350\276\211.docx" index bc12bf70f1883071a53a43d43ac2c5c95aca254b..68950c957643d486121d8127b2192df1ddccfdaa 100644 GIT binary patch delta 14256 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 delta 13829 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

(x-InKLeqV2kTKu1c_o;$|mJj~^)B;u?3XVcIA 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 -- Gitee From 868958477b4110955f30c46763d5cdfc6b58fbbc Mon Sep 17 00:00:00 2001 From: Magnetic516 <1258016464@qq.com> Date: Sat, 8 Jan 2022 16:39:48 +0800 Subject: [PATCH 2/3] 220108 --- .../Todo_hzh.txt" | 15 +++- ...0\345\217\221\347\254\224\350\256\260.txt" | 90 +++++++++++++++++++ 2 files changed, 104 insertions(+), 1 deletion(-) create mode 100644 "\347\241\254\344\273\266\345\237\272\347\241\200/\345\257\204\345\255\230\345\231\250\345\274\200\345\217\221\347\254\224\350\256\260.txt" diff --git "a/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" "b/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" index a091b89..4d09453 100644 --- "a/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" +++ "b/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" @@ -1,4 +1,17 @@ -[2022年1月6日] +[2022年1月8日 周六] 在图书馆 +昨天拿到了demo,开发难度比预想的要大不少。原因有一下几个: +1. 国民的加密芯片是自研的,代码大致是寄存器操作的硬件开发,并在此基础上进行了风格很重的api封装,且api的封装既没有注释更没有使用手册,这给预想的快速开发带来了一定难度。 +2. RD桌面和office桌面并不协同 +3. 个人对密码学的相关原理完全陌生。虽然站在我的层面,开发并不需要过多的了解相关原理,这既不必要也无可能,时间并没有给我太多的选择的机会。但由于api的封装比较原始和底层,所以一定是需要足够的底层原理来支撑对相关接口的理解。 + +[任务] +1. 学习密码学相关的底层硬件原理?大概应该是这个东西? +2. 学习stm32寄存器开发的相关操作,尤其是偏址、移位和与或等相关操作。 + + +[2022年1月7日 周五] +日志存留在国民的RD桌面之中 +[2022年1月6日 周四] [任务简述] 1. 搭建开发环境 2. 领取开发资料,dp开发加密芯片demo diff --git "a/\347\241\254\344\273\266\345\237\272\347\241\200/\345\257\204\345\255\230\345\231\250\345\274\200\345\217\221\347\254\224\350\256\260.txt" "b/\347\241\254\344\273\266\345\237\272\347\241\200/\345\257\204\345\255\230\345\231\250\345\274\200\345\217\221\347\254\224\350\256\260.txt" new file mode 100644 index 0000000..56a841e --- /dev/null +++ "b/\347\241\254\344\273\266\345\237\272\347\241\200/\345\257\204\345\255\230\345\231\250\345\274\200\345\217\221\347\254\224\350\256\260.txt" @@ -0,0 +1,90 @@ +[2022年1月8日 14点29分] [南图] +[基本位操作] +1. 置位操作 按位操作 + int GPIO = 0x00000000; + GPIO |= 1<<4; + 说明:1<<4 后得到 0x00001000,|= 使得只有 GPIO 第 4 位置成了 1,其他位不受影响 +2. 复位操作 按位与 + int GPIO = 0x11111111; + GPIO &= ~(1<<4); + 说明:1<<4 后得到 0x00001000,~(1<<4) 后得到 0x11110111,&= 使得只有 GPIO 第 4 位置成了 0,其他位不受影响 +3. 反转位操作 按位异或 + int GPIO = 0x00000000; + GPIO ^= 1<<4; + 说明:1<<4 后得到 0x00001000,^= 使得只有 GPIO 第 4 位置成了 1(如果第 4 位是 1,则会被置成 0),其他位不受影响 + +[封装外设存储器地址] +// 定义寄存器结构体 + // volatile修饰的变量不会被编译器优化,有些编译器会为未赋初值的变量赋值,这样出现意料外的情况 + // 有了volatile说明以后,就不会再经过cache,write buffer这种,而是直接写到io端口,从而避免了读写io端口的延时。 +#define __IO volatile +// 宏定义外设存储器及地址 +#define PERIPH_BASE ((unsigned int)0x40000000) +// 宏定义外设总线基地址 +#define APBP1ERIPH_BASE (PERIPH_BASE + 0x00000) +#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000) +#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000) + +[封装GPIO基地址] +映射地址 = 外设总基地址(块基地址) + 总线相对于外设总基地址的偏移 + 具体外设基地址相对于总线基地址的偏移 + 寄存器相对于具体外设基地址的偏移 +《STM32中文参考手册》28页 表1的存储器映像中查的外设GPIOE的起始地址为0X40011800,或者《STM32F103C8T6芯片手册》中的Memory map获得寄存器的起始地址 +如:GPIOE_ODR寄存器,相对于GPIOE起始地址的偏移为0Ch,则 + GPIOE_ODR = GPIOE_BASE+0x0C + GPIOE_BASE = APB2PERIPH_BASE + 0x1800 + APB2PERIPH_BASE = PERIPH_BASE + 0x10000 + PERIPH_BASE = 0x40000000 + 所以:GPIOE_ODR = 0x4001180C(寄存器的起始地址) +也如之前说述:0X40011800+0Ch = 0X4001180C +1. GPIO输出速率枚举 + typedef enum + { + GPIO_Speed_10MHz = 1, + GPIO_Speed_2MHz, + GPIO_Speed_50MHz + }GPIOSpeed_TypeDef; + 原理:《手册》105页,表18,输出模式位:01-10M,10-2M,11-GPIO_Speed_50M + +2.GPIO输入输出模式枚举 + typedef enum + { + GPIO_Mode_ANALOG_IN = 0x00, + GPIO_Mode_FLOATING_IN = 0x04, + GPIO_Mode_INU = 0x28, + GPIO_Mode_IND = 0x48, + + GPIO_Mode_OUT_OD = 0x14, + GPIO_Mode_OUT_PP = 0x10, + GPIO_Mode_AF_OD = 0x1c, + GPIO_Mode_AF_PP = 0x18 + }GPIOMode_TypeDef; + +3.定义GPIO寄存器结构体 + typedef struct + { + __IO uint32_t CRL; + __IO uint32_t CRH; + __IO uint32_t IDR; + __IO uint32_t ODR; + __IO uint32_t BSSR; + __IO uint32_t BRR; + __IO uint32_t LCKR; + }GPIO_TypeDef; +4. 宏定义总线上GPIO口的基地址 +#define GPIOA_BASE (APB2PERIPH_BASE + 0x0800) +#define GPIOB_BASE (APB2PERIPH_BASE + 0x0c00) +#define GPIOC_BASE (APB2PERIPH_BASE + 0x1000) +#define GPIOD_BASE (APB2PERIPH_BASE + 0x1400) +#define GPIOE_BASE (APB2PERIPH_BASE + 0x1800) +#define GPIOF_BASE (APB2PERIPH_BASE + 0x1c00) +#define GPIOG_BASE (APB2PERIPH_BASE + 0x2000) + +5. 使用寄存器结构体,重定义GPIO口 +#define GPIOA ((GPIO_TypeDef*)GPIOA_BASE) +#define GPIOB ((GPIO_TypeDef*)GPIOB_BASE) +#define GPIOC ((GPIO_TypeDef*)GPIOC_BASE) +#define GPIOD ((GPIO_TypeDef*)GPIOD_BASE) +#define GPIOE ((GPIO_TypeDef*)GPIOE_BASE) +#define GPIOF ((GPIO_TypeDef*)GPIOF_BASE) +#define GPIOG ((GPIO_TypeDef*)GPIOG_BASE) + + -- Gitee From 9e00b723786029b633373f9ed1499fabaf252b19 Mon Sep 17 00:00:00 2001 From: hzh <1258016464@qq.com> Date: Mon, 10 Jan 2022 13:46:07 +0800 Subject: [PATCH 3/3] =?UTF-8?q?hzh=E6=AF=95=E8=AE=BE=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Todo_hzh.txt" | 19 +++++++++++++++++- ...\351\227\264\350\212\202\347\202\271.xlsx" | Bin 0 -> 11648 bytes 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 "\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/\351\273\204\346\263\275\350\276\211-\346\257\225\350\256\276\346\227\266\351\227\264\350\212\202\347\202\271.xlsx" diff --git "a/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" "b/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" index a091b89..c2a8d76 100644 --- "a/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" +++ "b/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/Todo_hzh.txt" @@ -1,4 +1,21 @@ -[2022年1月6日] +[2022年1月10日 周一] +[上周总结] +周二入职,周三请假上课,周四配置电脑环境,周五领到了开发板、demo和资料。大概了解了一下开发板demo的框架,对其有了粗略的印象 +[本周任务简述] +背景:贾工想要在年前验证裸机明文通讯,yjc可能要在年前一周也即下周请假。开发板demo的api暂时没有使用说明,demo也十分贴近寄存器,并不如mtk的sdk一般容易上手。电脑无法识别开发板。 +简述: +1. 搞定开发板识别,烧录简单验证demo。 +2. 搞定串口通讯 +3. 搞定GPIO输入输出 +4. 拿一颗ESP32实现与加密芯片的串口通讯 + +[2022年1月7日 周五] +[任务简述] +1. 认识和熟悉开发环境及板子demo +2. 尝试编译和烧写demo +3. 尝试更改demo + +[2022年1月6日 周四] [任务简述] 1. 搭建开发环境 2. 领取开发资料,dp开发加密芯片demo diff --git "a/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/\351\273\204\346\263\275\350\276\211-\346\257\225\350\256\276\346\227\266\351\227\264\350\212\202\347\202\271.xlsx" "b/\345\233\275\346\260\221\345\267\245\344\275\234\350\277\233\345\261\225\345\221\250\346\212\245/\351\273\204\346\263\275\350\276\211-\346\257\225\350\256\276\346\227\266\351\227\264\350\212\202\347\202\271.xlsx" new file mode 100644 index 0000000000000000000000000000000000000000..8d22a32b5d995d1dae7a54c3d5a4d65b563e577d GIT binary patch literal 11648 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�{YCfzd%-b><(nPS?R!JmqW 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 y-(TVv6Z^L&_gBz=*W7