资源简介
在stm32上实现了RSA2048利用已有公钥私钥进行加密解密的过程,实现方式是使用PSCK1方式进行填充.
在keil5中可以成功编译运行,串口打印加密解密数据
在keil5中可以成功编译运行,串口打印加密解密数据
代码片段和文件信息
#include “includes.h“
static __IO u16 m_GetVolVal=0;//当前平均电压
#if 1//adc初始化
/************************************************************************
* @描述: 初始化ADC 开启通道0 规则通道
* @参数: NONE
* @返回值: None
**********************************************************************/
void Adc_Init(void)
{
ADC_InitTypeDef ADC_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB |RCC_APB2Periph_ADC1 ENABLE ); //使能ADC1通道时钟
RCC_ADCCLKConfig(RCC_PCLK2_Div6); //72M/6=12ADC最大时间不能超过14M
//PA0 作为模拟通道输入引脚
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; //模拟输入引脚
GPIO_Init(GPIOB &GPIO_InitStructure);
ADC_DeInit(ADC1); //将外设 ADC1 的全部寄存器重设为缺省值
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //ADC工作模式:ADC1和ADC2工作在独立模式
ADC_InitStructure.ADC_ScanConvMode = DISABLE; //模数转换工作在单通道模式
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE; //模数转换工作在单次转换模式
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //转换由软件而不是外部触发启动
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //ADC数据右对齐
ADC_InitStructure.ADC_NbrOfChannel = 9; //顺序进行规则转换的ADC通道的数目
ADC_Init(ADC1 &ADC_InitStructure); //根据ADC_InitStruct中指定的参数初始化外设ADCx的寄存器
ADC_Cmd(ADC1 ENABLE); //使能指定的ADC1
ADC_ResetCalibration(ADC1); //重置指定的ADC1的校准寄存器
while(ADC_GetResetCalibrationStatus(ADC1)); //获取ADC1重置校准寄存器的状态设置状态则等待
ADC_StartCalibration(ADC1); //开始指定ADC1的校准状态
while(ADC_GetCalibrationStatus(ADC1)); //获取指定ADC1的校准程序设置状态则等待
ADC_SoftwareStartConvCmd(ADC1 ENABLE); //使能指定的ADC1的软件转换启动功能
}
#endif
#if 0//获取adc 运行的时候
/************************************************************************
* @描述: 获取adc 并转换存入电平电压
* @参数: NONE
* @返回值: None 这个函数每100mS调用一次
**********************************************************************/
#define C_ADC_FILTER_COUNT 20
static u16 Average_ADC = 0;
static u16 m_GetVolVal=0;
void Get_Adc(void)
{
static u32 ADC_sum =0 ;
static u8 ADC_Cnt =0 ;
ADC_RegularChannelConfig(ADC1 ADC_Channel_9 1 ADC_SampleTime_239Cycles5 ); //ADC1ADC通道3规则采样顺序值为1采样时间为239.5周期 239.5 + 12.5 = TCOVN 252 周期 12m 就是 252/12 =21us
ADC_SoftwareStartConvCmd(ADC1 ENABLE); //使能指定的ADC1的软件转换启动功能
while(!ADC_GetFlagStatus(ADC1 ADC_FLAG_EOC ));//等待转换结束
if(ADC_Cnt++ {
ADC_sum += ADC_GetConversionValue(ADC1);
}
else
{//1S filter
Average_ADC = ADC_sum/C_ADC_FILTER_COUNT;
ADC_Cnt = 0;
ADC_sum = 0;
//m_GetVolVal = Average_ADC*1830/4096;//ADC = Vol*20/(100+20)*4096/3.3-->Vol = ADC*(122/22)*3.3/4096=ADC*18.3/4096
m_GetVolVal = Average_ADC*1881/4096;//ADC = Vol*10/(47+10)*4096/3.3-->Vol = ADC*(57/10)*3.3/4096=ADC*18.81/4096
}
}
#endif
#if 1//快速获取adc值 6次平均值
#define C_ADC_FILTER_COUNT 60
/************************************************************************
* @描述: 快速获取启动电压
* @参数: NO
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-01-12 22:50 Bsp\
文件 17750 2020-01-11 16:23 Bsp\Bsp.c
文件 3920 2018-05-02 17:58 Bsp\WK_UP.c
文件 4520 2018-05-02 16:49 Bsp\adc.c
文件 217 2018-04-28 12:53 Bsp\adc.h
文件 10006 2018-05-04 14:01 Bsp\bsp.h
文件 1535 2017-05-20 19:32 Bsp\delay.c
文件 238 2016-11-18 01:01 Bsp\delay.h
文件 4788 2017-10-28 16:58 Bsp\ds18B20.c
文件 755 2017-10-28 15:10 Bsp\ds18b20.h
文件 5656 2017-03-22 11:04 Bsp\mc3433.c
文件 2809 2017-03-21 14:12 Bsp\mc3433.h
文件 1822 2018-04-28 15:57 Bsp\mtk.c
文件 278 2018-03-18 20:36 Bsp\mtk.h
文件 1672 2018-05-03 11:38 Bsp\stmbkb.c
文件 208 2018-04-28 11:41 Bsp\stmbkb.h
文件 3094 2016-12-25 21:03 Bsp\stmflash.c
文件 1046 2016-12-25 14:45 Bsp\stmflash.h
文件 1627 2017-05-18 13:44 Bsp\wdg.c
文件 268 2017-02-14 23:21 Bsp\wdg.h
文件 183 2017-10-12 14:48 Bsp\wkup.h
目录 0 2020-01-12 22:50 CORE\
文件 17273 2010-06-07 10:25 CORE\core_cm3.c
文件 85714 2011-02-09 14:59 CORE\core_cm3.h
文件 15503 2011-03-10 10:52 CORE\startup_stm32f10x_hd.s
文件 12765 2020-01-12 21:39 CORE\startup_stm32f10x_md.s
目录 0 2020-01-12 22:56 Project\
文件 339 2020-01-12 00:05 Project\EventRecorderStub.scvd
文件 108146 2020-01-12 21:45 Project\Jli
文件 755 2017-09-07 14:11 Project\Jli
文件 1205 2017-08-18 10:42 Project\MOBD.BAT
............此处省略106个文件信息
相关资源
- 基于STM32F4x9的LCD显示
- VS1053B编解码器的VDR分布式声音采集卡
- stm32的DAC播放音乐文件
- IBM Rational Software Architect 9.0破解文件
- STM32+TMC5160代码电路图.rar
- 基于STM32的深海钻机甲板控制系统
- stm32f103.SchDoc
- STM32F103 USART+DMA
- DMA+stm32 407.zip
- 4_USART串口通信(空闲中断+DMA.zip
- stm32f105-usart-DMA收发demo
- STM32F042F6P6 Uart12DMA;发送中断接收
- 基于STM32的嵌入式双目图像采集系统设
- 基于STM32F103C8单片机的晶联讯电子JL
- 基于STM32的温湿度检测系统实现
- stm32F4+w5300
- 14284969_《STM32单片机应用与全案例实践
-
ST-li
nk-V2的SWD仿真使用方法.docx - 安富莱STM32开发板资料
- Universal Extractor(万能文件解包工具)
- DXperienceUniversal-11.1.7.part06
- DXperienceUniversal-11.1.7.part08
- DXperienceUniversal-11.1.7.part14
- DXperienceUniversal-11.1.7.part15
- DXperienceUniversal-11.1.7.part10
- DXperienceUniversal-11.1.7.part13
- DXperienceUniversal-11.1.7.part03
- DXperienceUniversal-11.1.7.part02
- DXperienceUniversal-11.1.7.part09
- DXperienceUniversal-11.1.7.part19
评论
共有 条评论