自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

汽车电子从业者,电子爱好者。

记录一些知识点和小项目。

  • 博客(32)
  • 收藏
  • 关注

原创 MCU未使用的GPIO引脚配置介绍

每种模式的选择都应根据你的应用需求和系统设计来权衡。输入模式适合未使用的引脚,但需要小心避免浮空状态,最好启用上拉或下拉电阻。输出模式适合需要确保引脚状态稳定的场合,但可能增加功耗。禁用引脚适用于低功耗应用,能够完全消除未使用引脚的干扰和功耗。特殊功能模式适用于需要复用GPIO引脚来实现其他功能(如ADC、PWM、I2C等)。根据设计要求合理选择引脚模式,可以优化系统的功耗、稳定性和灵活性,并在必要时进行实验验证,以确保电路在各种工作状态下的可靠性。

2024-11-15 09:01:26 2062

原创 MCU GD32A启动流程及各个段的初始化

在启动文件中,首先定义各个段的属性和位置。编译阶段:编译器根据源代码生成不同类型的段。链接阶段:链接器将这些段合并并生成最终的可执行文件,同时生成符号表和重定位信息。启动文件:启动文件中的复位处理函数负责在系统启动时初始化各个段,包括数据段的复制和BSS段的清零。链接脚本:链接脚本定义了各个段在内存中的布局。通过这些步骤,程序能够正确地区分和初始化各个段,确保系统在启动时处于正确的状态。

2024-11-06 13:45:45 878

原创 混合密码系统——用对称密钥提高速度,用公钥密码保护会话密钥

混合密码系统(Hybrid Cryptosystem)是一种结合了多种密码学技术和算法的加密方案,旨在充分利用不同密码算法的优势,以提供更强大的安全性、更高的效率或更好的功能特性。将消息通过对称密码加密,将加密消息时使用的密钥通过公钥密码来加密,这样的密码机制就是混合密码系统的本质。

2024-09-28 12:59:09 1611

原创 集成mcuboot后测试和验证的方法

通过以上全面的测试和验证方法,可以有效地评估在实际项目中集成的 MCUboot 的功能、性能、兼容性和安全性,确保其能够满足项目的要求,并在各种实际应用场景中稳定可靠地运行。在测试过程中,要详细记录测试结果和发现的问题,及时进行分析和修复,以保证最终产品的质量。

2024-09-27 13:11:04 1600

原创 mcuboot使用介绍

MCUboot使用准备工作,如何集成到项目中,使用MCUboot进行如何开发和测试。

2024-09-27 12:44:35 1553

原创 MCUboot 和 U-Boot区别

MCUboot 和 U-Boot 都是用于嵌入式系统的引导加载程序,但它们在一些方面存在区别:

2024-09-26 22:40:02 1262

原创 信息安全国内外现状及技术要求示例(R155/R156)

目前国际法规如 WP29 R155/R156 等已强制实施,欧盟 2022 年 7 月之后上市的新车均需保证其网络安全流程的合规性和产品开发的安全性,并配套了相关的国际标准配合法规落地实施。然而,鉴于信息安全对于汽车行业的重要性,国内也在加快相关强制标准的制定,例如《汽车整车信息安全技术要求》、《汽车软件升级通用技术要求》、《智能网联汽车 自动驾驶数据记录系统》等强制标准已在制定中,相信在不久的将来,随着行业整体技术的积累,方案的成熟,相关强制标准也会制定并实施,实现与国际市场的接轨。

2024-09-11 23:37:06 1922

原创 ISO26262和Aspice之间的关联

ASPICE(Automotive Software Process Improvement and Capability dEtermination)是汽车软件过程改进及能力评定的模型,它侧重于汽车软件的开发过程。ASPICE 定义了一系列的过程和活动,包括需求管理、软件设计、软件实现、软件测试、软件集成、软件配置管理、软件质量保证等方面。其目的是通过评估和改进汽车软件的开发过程,提高汽车软件的质量和可靠性。

2024-09-06 21:36:57 635

原创 ISO26262 功能安全对设计的要求以及评判安全等级的主要参数

ISO 26262 是道路车辆功能安全的重要标准,涵盖了车辆安全相关系统的整个生命周期。其中,ASIL 等级的划分对控制器的要求产生重要影响。随着 ASIL 等级的提高,控制器在设计上需遵循更严格的原则,以确保硬件和软件的可靠性和安全性。在安全机制方面,高 ASIL 等级的控制器需要更强大的故障检测和诊断能力,以及更好的故障容错和恢复能力,以保障系统在故障发生时仍能保持安全状态或快速恢复。在验证和确认环节,高 ASIL 等级控制器需要进行更全面和严格的测试,同时接受更细致深入的评估和审核。

2024-09-06 21:17:54 1812 2

原创 LIN协议栈 AUTOSAR架构下 状态管理

LIN State Manager 通过对这些状态的管理和转换,实现了对 LIN 总线通信状态的精确控制,以满足汽车电子系统中不同场景的需求。

2024-09-04 00:00:58 1692

原创 分组密码的模式AES-CBC模式流程解析附:应用代码实现

AES-CBC模式中,首先将明文分组与前一个密文分组进行XOR运算,然后再进行加密。密文分组像链条一样相互连接在一起。

2024-09-02 21:51:29 3650 3

原创 AES加密算法介绍

AES(Advanced Encryption Standard)算法是一种对称加密算法,它对数据进行加密时执行了一系列复杂的变换。本文介绍了AES的算法,AES不同模式的特性及优缺点,以及S-box的来源,并对AES携带的数据进行了简单的介绍。

2024-09-01 12:17:12 1550 1

原创 分组密码的模式AES-ECB流程解析(应用代码实现)

ECB模式全程Electronic CodeBook模式。在ECB模式中,将明文分组加密之后的结果直接成为密文分组。使用ECB模式加密时,相同的明文分组会被转换为相同的密文分组,可以理解为“明文分组->密文分组”的对应表,因此ECB模式也称为**电子密码本模式**。当最后一个明文分组的内容小于分组长度时,需填要用一些特定的数据进行**充**。

2024-08-31 23:20:39 727 1

原创 字符串 敲笨钟 稳赢 C语言

敲笨钟分数 20作者 陈越单位 浙江大学微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。为了增加敲钟的趣味性,还会糟改几句古诗词。其糟改的方法为:去网上搜寻压“ong”韵的古诗词,把句尾的三个字换成“敲笨钟”。例如唐代诗人李贺有名句曰:“寻章摘句老雕虫,晓月当帘挂玉弓”,其中“虫”(chong)和“弓”(gong)都压了“ong”韵。于是这句诗就被糟改为“寻章摘句老雕虫,晓月当帘敲笨钟”。现在给你一大堆古诗词句,要求你写个程序自动将压“ong”韵的句子糟改成“敲笨钟”。

2024-04-22 00:26:23 735 1

原创 通过CubeMX配置,编写IO接收信号串口发送数据的功能-代码讲解含部分生成代码

【代码】通过CubeMX配置,编写IO接收信号串口发送数据的功能-代码讲解。

2024-04-22 00:08:45 330

原创 通过CubeMX配置,编写IO接收信号串口发送数据的功能-配置部分

SYS选项栏中设置Debug为Serial Wire,使PA13 PA14作为下载调试功能,可防止未设置该功能而。针对首次使用的伙伴,查看自己是否已经下载对应MCU的固件包。点击右上角generate code即可生成配置代码。成其它功能导致下载程序异常。

2024-04-21 21:34:19 1274

原创 GD32A503-EVAL GPIO配置

此MCU最多支持 88 个通用 I/O 引脚(GPIO),每个 GPIO 引脚可以由软件配置为输出(推挽或开漏)、输入、外设备用功能或者模拟模式。此篇主要讲解GPIO端口配置。所有的端口都有外部中断的能力,如果想使用端口的外部中断功能,需要配置为输入模式。

2024-01-28 15:41:48 1176

原创 通过CubeMX配置串口通信(示例CT117E-M4 )

串口通信(Serial Communication), 是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。(来源百度百科)从产品手册上中截取上图可以看出USB是连接到串口的可以通过传输线直接接收调试串口数据,根据CT117E-M4可以看到产品上自带DAP不需要再接其它的下载器。

2023-05-31 17:06:21 699

原创 CT117E-M4 使用HAL库点亮LED (锁存器控制)

通过控制74HC573锁存器来控制CT117E-M4产品的LED(主芯片STM32G431RBT6)

2022-11-13 10:29:07 500

原创 核心层交换机

进入特权模式 enable进入全局配置模式 configure terminal进入 GigbitEthernet 0/1 的端口配置模式,因为它是工厂汇聚层交换机和万事通公司核心层交换机相连的端口将端口升级三级端口配置端口的ip地址和子网掩码保持本端口为开启状态退回到特权模式将当前配置写入工厂汇聚层交换机的内存中在工厂的网络拓扑旁边建立办公楼的网络拓扑并对接入层和汇聚层进行相同的配置,得到整个公司的接入层和汇聚层的网络拓扑。

2022-10-01 21:53:06 3324

原创 堆的建立 C语言

堆的建立分数 20作者 张志梅单位 青岛大学所谓“堆的建立”,是指将已经存在的N个元素调整成最大堆或最小堆。输入格式:第一行是一个整数N,表示元素的个数,N<=10000。第二行N个元素的值。输出格式:输出2行,第一行是输入序列调整为最大堆后的元素序列,元素之间用空格分开。第二行是输入序列调整为最小堆后的元素序列,元素之间用空格分开。输入样例:在这里给出一组输入。例如:87 5 8 4 2 3 6 1输出样例:在这里给出相应的输出。例如:8 5 7 4 2 3 6 11

2022-04-28 21:50:28 3123

原创 树莓派入门 WiFi配置(ssh连接)及基本器件的使用方法

一.基础配置1.树莓派登录1.1.使用软件Xshell 远程终端Xftp 传输助手1.2.WiFi配置 默认账号:pi 默认密码:raspberry输入命令:sudo nano /etc/wpa_supplicant/wpa_supplicant.confNano是文档编辑器,已进入便可以编写。Ctrl+o 保存,会有提示是否写入。我们按回车。Ctrl+x退出由于该树莓派找不到nano数取TF卡新建wpa_supplicant.conf文件并将以下配置信息写入,并新建

2021-07-01 12:52:29 1135 2

原创 7-8 超速判断 (10 分)(JAVA and C)

模拟交通警察的雷达测速仪。输入汽车速度,如果速度超出60 mph,则显示“Speeding”,否则显示“OK”。输入格式:输入在一行中给出1个不超过500的非负整数,即雷达测到的车速。输出格式:在一行中输出测速仪显示结果,格式为:Speed: V - S,其中V是车速,S或者是Speeding、或者是OK。输入样例1:40输出样例1:Speed: 40 - OK输入样例2:75输出样例2:Speed: 75 - Speeding作者 杨起帆单位:浙大城市学院代码长度限制:16

2021-03-23 12:49:56 942 3

原创 7-9 用天平找小球 (10 分) (C and JAVA)

三个球A、B、C,大小形状相同且其中有一个球与其他球重量不同。要求找出这个不一样的球。输入格式:输入在一行中给出3个正整数,顺序对应球A、B、C的重量。输出格式:在一行中输出唯一的那个不一样的球。输入样例:1 1 2输出样例:CC课程组单位 :浙江大学代码长度限制:16 KB时间限制:400 ms内存限制:64 MBJAVA:import java.util.Scanner;public class Main { public static void main(S

2021-03-23 09:25:25 781 7

原创 7-7 12-24小时制 (15 分)(JAVA and C)

编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。输入格式:输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。提示:在scanf的格式字符串中加入:,让scanf来处理这个冒号。输出格式:在一行中输出这个时间对应的12小时制的时间,数字部分格式与输入的相同,然后跟上空格,再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意,在英文的

2021-03-19 09:48:40 2731 9

原创 7-6 混合类型数据格式化输入 (5 分)(JAVA and C)

本题要求编写程序,顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。输入格式:输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。输出格式:在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。输入样例:2.12 88 c 4.7输出样例:c 88 2.12 4.70JAVA:import java.util.Scanner;public class Main { public static

2021-03-17 18:26:23 2353 2

原创 7-3 逆序的三位数 (10 分)(C and Java)

程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。输入格式:每个测试是一个3位的正整数。输出格式:输出按位逆序的数。输入样例:123输出样例:321C代码如下:#include<stdio.h>int main(){ int num1, b; int num2=0,w=100; //w为权重,num1,num2分别为输入值和输出值,b为临时变量可以略去 s

2021-03-17 11:13:41 836 6

原创 L1-026 I Love GPLT (5 分)(Java and C)

这道超级简单的题目没有任何输入。你只需要把这句很重要的话 —— “I Love GPLT”——竖着输出就可以了。所谓“竖着输出”,是指每个字符占一行(包括空格),即每行只能有1个字符和回车。输入样例:无输出样例:ILoveGPLT注意:输出的两个空行中各有一个空格。Java:public class Main{ public static void main(String[] args) { String str = "I Love GPL

2021-03-16 10:19:13 289 1

原创 冒泡排序和快速排序的实现

一、实验(实训)目的掌握冒泡排序和快速排序的两种方法并加以实现:二、实验(实训)原理或方法冒泡排序: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个,即需要进行length-1次。第一次是对n个数进行n-1次比较,进行到最后第n个的一个是最大的;第二次是对n-1个数进行n-2次比较,进行到最后第n-1个的一个是最大的;持续每次对越来越少的元素重复上面的步骤

2020-12-14 21:18:33 1093 1

原创 插入排序和折半插入排序实现

一、实验(实训)目的掌握插入排序的两种方法并加以实现:二、实验(实训)原理或方法直接插入排序:插入排序从第二个数开始,拿出第二个数进行向前插入排序,一直到最后一个数向前做插入排序。算法稳定。折半插入排序:顺序地把待排序的序列中的各个元素按其关键字的大小,通过折半查找插入到已排序的序列的适当位置。三、仪器设备、材料VSCODE + gcc.exe四、实验(实训)步骤代码:复制或者截图(完整)void insertSort(int *L, int n){ int i, j;

2020-12-14 21:13:59 793

原创 明解C语言第三版入门篇整理 第一章---初识C语言

C语言入门第一节电脑也称为电子计算机,对它来说,任何任务都是通过计算来完成的。示例代码1-1/* 显示整数15和37的和*/#include<stdio.h>//stdio是standard I/0(标准输入输出)的缩写。int main(void){ printf("%d, 15 + 37 ");//%d->用十进制数显示整数15和37的和 return 0;}运行结果:52运行源代码需要安装必要的软件环境,也就是编译器。初学者建议使用dev-c++程序和编

2020-08-19 08:22:52 1548

原创 机器学习knn算法基础解析

大一信息工程学院在读,想看看同龄码农的时候,借鉴大佬们的经验。望大家多多指教!ヾ(▽*)))

2020-05-26 21:57:49 315 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除