自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 Python 中使用 open() 报错 UnicodeDecodeError: ‘charmap‘ codec can‘t decode byte 0x9d in position 3054030

Python 中使用 open() 报错 UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 3054030

2023-11-17 15:43:48 337

原创 Trace32 部分命令

Trace32部分命令

2023-09-03 12:27:26 450

原创 ((*(volatile unsigned long *) (reg)))

(*(volatile unsigned long *) 详解

2023-08-15 15:40:38 205

原创 NvM学习笔记(一)以TC387为例,分析为什么要使用Flash 模拟 EEPROM ?

为了降本增效,工程师们就想出了一个结合EEPROM和Flash优点的存储方法,采用uc内部的DFLASH 模拟EEPROM,来存储ECU下电时需要保存到非易失性存储器中的数据,在AUTOSAR软件架构中,存储协议栈可以实现这部分功能。

2023-06-05 23:03:20 1720

原创 Dem和NvM(NVRAM Manager)的交集

Dem 和NvM的交集

2023-02-19 12:15:27 1903

原创 python脚本中有parser.add_argument语句时的运行方法

python脚本中有parser.add_argument语句时的运行方法parser.add_argument('--ProjectPath', type=str,help='Path of the project.', required=True) # 指定程序需要接受的命令参数args = parser.parse_args() # 通过 parse_args() 方法解析参数proj

2021-09-09 09:53:29 1283

原创 Windows 系统中导入 from Crypto.Cipher import AES 报错之解决方案,亲测有效

Windows 系统中导入 from Crypto.Cipher import AES 报错之解决方案,亲测有效。1.安装cryptopip install crypto2.Windows系统上安装 pycryptodomepip install pycryptodome3. 在该目录C:\Users…\Python\Python38\Lib\site-packages下找到这两个文件夹,并将目录名中的小写c改为大写C即可。此时便不会报错...

2021-09-07 10:18:12 885

原创 用matlab绘制线性分段函数图像

假设线性分段函数如下所示在matlab中建立m文件:输入以下代码:x = 0:0.01:5;y = zeros(size(x));for i = 1:length(x) if x(i)<0.9 y(i) = 0; elseif x(i)>=0.9 && x(i)< 4.34 y(i) =29.0698.*x(i)-26.1628; else y(i) = 100; end end

2021-03-11 16:30:13 3709 1

原创 在matlab中用代码绘制模糊控制器里面的隶属度函数

a=readfis(‘模糊系统名称’);plotmf(a,‘input’,1) 绘制输入到模糊系统的第一个变量的隶属度函数plotmf(a,‘input’,2) 绘制输入到模糊系统的第二个变量的隶属度函数plotmf(a,‘output’,1) 绘制输入到模糊系统输出的第一变量的隶属度函数gensurf(a)绘制模糊系统输入和输出的三维mapp图。再在Figure编辑器中对图片的属性进行设置,出图。.

2021-03-11 09:24:13 6153 1

原创 实现将已知字符串s中的前导空白字符和尾随的空白字符去掉,并将字符串字符之间的连续多个空白字符缩减为一个空白符

编制一个字符串处理程序,实现将已知字符串s中的前导空白字符和尾随的空白字符去掉,并将字符串字符之间的连续多个空白字符缩减为一个空白符。算法分析:首先用一个跳过空白符的循环,去掉字符串s中的前导空白字符;然后顺序访问字符串s的其余字符,对每个顺序访问的当前字符,检查该字符是否为空白字符,若是,用一个循环跳过后随的多余空白字符,直至字符串s访问结束;最后要考虑的是压缩过程结束时,若其最后一个复制字符若为空白字符,则要把该空白字符改成字符串结束符。#include<stdio.h>#inc

2021-03-05 17:25:10 1508 1

原创 在一个字符串的任意位置上插入一个字符

在一个字符串的任意位置上插入一个字符**要求:**插入字符的位置由用户从键盘输入。分析:首先提醒用户输入一段字符串;输入要添加的字符;输入要添加的位置(第几个字符的后面);将添加后的数组向后移动一位,其余不变。源程序一(不用指针):从strlen(s)开始,position结束,将最后一位向后移动,将倒数第二位移动到最后一位,直到position这个位置,从后面开始移动不会影响到数组内容,如果是从前面开始,则会对后面的数组进行覆盖,会对结果造成影响。#include<stdio.h

2021-03-04 18:10:41 5961 3

原创 统计输入的一个字符串中每个数字出现的次数

统计输入的一个字符串中每个数字出现的次数要求:用一个二维数组分别记录数字和数字出现的次数。源程序:#include<stdio.h>#include<string.h>main(){ char str[100]; int digital_num[2][10] = { {0,1,2,3,4,5,6,7,8,9},{0,0,0,0,0,0,0,0,0,0} }; /*第一行记录出现的数字,第二行记录该数字出现的次数*/ int i, j; printf("Inpu

2021-03-04 15:23:23 4226 2

原创 将十进制转换为二进制

问题:将任一十进制整数转换为二进制形式。方法一分析:将十进制转换为二进制的方法很多,本方法利用C语言能够对位进行操作的特点。对于C语言来说,一个整数在计算机内就是以二进制形式存储的,所以没有必要再将一个整数经过一系列运算转换为二进制形式,只要将整数在内存中的二进制表示输出即可。源程序:#include<stdio.h>void printb(int,int);void main(){ int x; printf("Input number:"); scanf("%d",&am

2021-03-02 15:23:41 477

原创 将一个字符串逆序输出

将输入的一个字符串逆序输出。例如,输入abcde,则输出edcba。用普通函数和递归函数实现。普通函数源程序:#include<stdio.h>#include<string.h>int main( ) /*该函数调用后返回的结果为int型,如果没有返回值,此时返回值类型为void*/{ int i; char str[100]; /*数组在定义时必须指明长度,以便C编译程序根据此处信息确定出数组分配存储空间的大小*/ gets(str); /*从键

2021-03-02 11:44:24 22827 6

原创 指向由5个元素组成的一维数组的指针变量

下面程序的输出结果为2和5。#include <stdio.h>int main(){ int intArray[] = {1, 2, 3, 4, 5}; int *p = (int *)(&intArray+1); printf("%d,%d",*(intArray+1),*(p-1)); return 0; }程序说明:intArray[ ]是一个长度为5的整型数组;主要是要理解这句话:int *p = (int *)(&intArray+1

2021-02-20 22:03:24 1193

原创 (十一)指针数组

因为指针也是一种数据类型,所以相同类型的指针变量就可以构成数组指针,在指针数组中每一个元素都是一个指针变量,并且指向同一数据类型。指针数组的定义形式为:*数据类型 数组名{整型常量表达式};例如:char *a[3]={“abc”,“bcde”,“fg”};由于[ ]比*优先级高,所以首先是数组形式,然后才是与*的结合。因此指针数组a含3个指针a[0]、a[1]、a[2],分别为这三个字符串的起始地址。指针数组适合用于存储若干个字符串的地址,使字符串处理更加方便灵活。与普通数组的规定一样,指

2021-02-19 00:09:27 321

原创 (十)指针与字符串

1. 字符串可以用字符数组来表示,也可以用指针来处理指向字符串首地址的指针变量称做字符串指针,它实际上是字符类型的指针。其定义的一般形式为*char 变量名;利用一个字符串指针访问字符串通常可以采用以下两种方式:**(1)将一个字符数组的起始地址赋值指针变量。**例如:char *p;char s[]=“abc”;p=s;字符串“abc”存储在字符数组s中,数组s的起始地址赋值给指针变量p,则指针p就指向字符串“abc”。**(2)将一个字符串常量赋值给指针变量。**例如:char

2021-02-18 23:27:30 3340 1

原创 (九)指向一维数组和二维数组的指针(数组指针)

所谓数组的指针,即指数组的起始地址,数组元素的指针是指数组元素的地址。1.一维数组的地址在C语言中,数组名是个不占内存的地址常量,它代表整个数组的存储首地址。一维数组元素a[i]的地址可以写成表达式&a[i]或a+i,&a[i]是用下标形式表示的地址,a+i是用指针形式表示的地址,二者结果相同。元素a[i]的地址等于数组首地址向后偏移若干字节,偏移的字节数等于a[i]与首地址之间间隔元素的数目乘以一个元素所占存储单元的字节数。那么,*(a+i)表示a+i地址中的内容,就是a[i]的值

2021-02-18 22:05:20 6321 1

原创 (八)指针运算

指针只能用地址表达式表示,不能像普通整数那样对指针进行任意的运算。除单目的&和*运算外,指针所允许的运算还包括有限的算术运算和关系运算。1.算术运算指针的算术运算包括:指针加、减一个整数和两个指针相减运算及++、–运算。(1)指针与整数的加减运算。指针变量加上或减去一个整数n,是将指针由当前位置向前或向后移动n个数据的位置。通常这种运算用于将指针指向一个数组中的其他位置。对于指向一般数据的指针变量,加减运算操作的作用并不大。由于各种类型的数据的存储长度不同,因此在数组中加减运算使指针移动n

2021-02-18 19:43:15 1846

原创 (七)字符与字符串的输入/输出函数

一、字符输入/输出函数1.putchar()函数putchar()函数是C语言提供的标准字符输出函数,其作用是在显示显示器上输出给定的一个字符常量或字符变量,与printf( )函数中的%c相当。putchar( )必须有一个输出项,输出项可以是字符型常量(包括控制字符和转义字符)、字符型变量、整型变量、整型常量、表达式,但只能是单个字符而不能是字符串。例如:putchar(‘A’) /输出字母A/putchar(65)

2021-02-17 20:47:46 3300

原创 (六)字符数组与字符串的区别

字符串在计算机应用中,除了要处理大量的数值型数据外,还不可避免地要处理大量的文字信息。比如,学校的学籍管理系统在存储学生成绩的同时,还应存储学生姓名、性别、家庭住址等相关信息。通常文字在计算机中是用字符串来表示的。1.字符串常量用双引号括起来的一串字符就是字符串常量,它的末尾将由系统自动添加一个字符串结束标志‘\0’。‘\0’作为转义字符,其ASCII码值为0,是一个非显示字符,也称为“空字符”,在使用中与数字0、预定义标识符NULL具有相同的作用。它表示字符串到此结束,因此利用它可以很方便地测定字符

2021-02-17 17:46:32 14806 3

原创 (五)字符数组的定义与操作

字符数组的定义与操作存放字符数据的数组称为字符数组,每一个元素存放一个字符。同其他类型的数组一样,字符数组既可以是一维的,也可以是多维的。1.字符数组的定义一维字符数组的定义形式为:char 数组名[整形常量表达式];例如:char a[10];定义了一维数组a是具有10个元素的字符数组,这10个元素分别用a[0],a[1],a[2],…,a[9]表示。二维字符数组的定义形式为:char b[3][4]定义了二维数组b是具有3行4列12个元素的字符数组,这12个元素分别为b[0][0

2021-02-16 17:45:18 10100

原创 (四)C语言中的字符类型

(四)C语言中的字符类型C语言中的字符型数据分为字符和字符串数据两类。**字符数据是指由单引号括起来的单个字符,**如‘a’、‘2’、‘&’等;字符串数据是指由双引号括起来的一串字符序列,如“good”、“0132”、“a”等。1、基本类型定义类型说明符: char2、字符型数据的存储与取值范围字符型数据的取值范围为ASCII码字符集中的可打印字符。一个字符型数据的存储占1个字节,存储时实际上存储的是对应字符的ASCII码值(即一个整数值)。ASCII编码(American Standa

2021-02-16 11:44:00 9906

原创 (三)C语言数据类型——指针类型

(三)C语言——指针类型指针是C语言的特色之一,熟练掌握和正确使用指针对一个成功的C语言程序设计人员来说是十分重要的。正确灵活地运用指针,可以使程序编写简洁、紧凑、高效。利用指针变量可以有效地表示各种复杂的数据结构,如队列、栈、链表、树、图等。一.指针的概念1.变量的地址与变量的内容在计算机中,所有的数据都是以二进制形式存放在内存储器中。一般把内存中的一个字节成为一个内存单元,不同的数据类型所占用的内存单元数不等。为了正确地访问这些内存单元,必须为每个内存单元编号。根据一个内存单元的编号即可准确地找

2021-02-10 23:21:56 2427 1

原创 100以内两个整数的(随机产生)的加法运算练习程序

C语言实例一问题描述编制100以内两个整数的(随机产生)的加法运算练习程序。算法分析首先需要考虑定义哪些变量。因为此题是用来计算100以内的两个整数的和,所以至少要定义三个短整型变量a、b、c,分别表示加数、被加数、和。a和b使用产生随机数的库函数为其赋初值,通过键盘输入a和b的和,即c的值,由计算机自动判断输入的和是否正确,若不正确给出正确结果。本程序中用到了一些库函数。其中,printf()是输出函数,可以输出一个字符,也可输出表达式或变量的值;scanf()是输入函数,通过键盘输入一个数据

2021-02-06 10:39:36 7841

原创 (二)C语言——数据输入语句scanf()函数

(二)C语言——数据输入语句scanf()函数输入语句是动态赋值,即在程序运行过程中接受输入数值。与数据的输出一样,C语言也提供了标准的数据输入函数。1.scanf()函数的一般格式scanf()函数的一般格式为:scanf(格式控制字符串,输入项表);其功能是按照指定的格式接收由键盘输入的数据,并存入输入项变量所在的内存单元中。其中的格式控制字符串构成的内容与printf()函数类似,包含格式说明和普通字符。输入项表中的各输入项用逗号隔开,各输入项必须为地址引用,通常由“&”后面跟变量名

2021-02-05 18:33:54 5426

原创 (一)C语言——数据的输出printf()函数

C语言——数据的输入printf()函数**(一)******数据的输入和输出是程序设计中使用最普遍的基本操作。程序运行所需的数据通常要从外部输入设备(如键盘、文件、扫描仪等)输入,程序的运行结果通常也要输出到外部设备(如打印机、显示器、绘图仪、文件等)。一个程序通常缺少不了数据的输入和输出,如果没有输入,数据的处理只能固定写在程序中,要想改变数据,必须通过修改源程序才能实现,非常不方便;如果没有输出,程序的运行结果就无法告知用户。因此,输入、输出是用户与程序之间交互的主要手段。C语言本身并没有直接提

2021-02-05 12:20:08 4108

原创 (三)人工神经网络的工作过程及其特点

人工神经网络的工作过程和人的认知过程一样,人工神经网络存在学习的过程。在神经网络结构图中,在信号的传递过程中要不断进行加权处理,即确定系统各个输入对系统性能的影响程度,这些加权值是通过对系统样本数据的学习确定的。当给定神经网络一组已知的知识,在特定的输入信号下,反复运算网络中的连接权值,使其得到期望的输出结果,这一过程成为学习过程。对于前馈型神经网络,它从样本数据中取得训练样本及目标输出值,然后将这些训练样本当做网络的输入,利用最速下降法反复调整网络的连接权值,使网络的实际输出和目标输出值一致。当输入

2020-11-20 15:50:44 3542

原创 (二)从生物神经元来学习人工神经元基本模型的工作原理

生物神经元:上图所示为生物学中一种最常见的神经元类型,主要由树突、细胞体和轴突组成。其各部分主要职责为:1.树突:从其他多个神经元处接受神经递质并转为电信号;2.细胞体:处理从树突得来的所有电信号,如果信号值达到了动作电位,则会向轴突方向传递新的电信号;3.轴突:向其他神经元发送信号。因为一个神经元树突上的分支很多,因此可以接受很多来自其他神经元的信号,但是轴突只有一个,因此即使轴突与其他很多神经元相连,该细胞发送给其他细胞的信号只能是相同的。人工神经元:人工神经元是对生物神经元的一个抽象,.

2020-11-20 09:21:01 3400

原创 人工神经网络 is what?

因为自己文章的创新点有待提高,所以引入神经网络算法进行相关方面的优化,现在将自己的学习收获进行整理。要了解什么是人工神经网络,我们先来了解一下,什么是神经网络?从生物学的角度说,“神经”就是“神经系统”的缩写,是生物体内起主导作用的系统,包括中枢神经和周围神经两部分,中枢神经通过周围神经与其他各个器官、系统发生着广泛的联系。那么这种联系是如何发生的?这与神经系统的生物结构有关系,神经系统由神经细胞(神经元)和神经胶质组成。在人体的神经系统里,神经元的神经纤维主要集中在周围神经系统,许多神经纤维集结

2020-11-19 21:14:01 94

原创 Carsim/Simulink联合仿真时调出matlab主页

Carsim和simulink联合仿真时,点击send to simulink后,只是出现了MATLAB的命令窗口,如下图所示。可是我们再很多时候需要在MATLAB的主页面处理一些数据会更方便一些,此时我们可以在命令窗口输入desktop回车后即可打开MATLAB主页,如下图所示。...

2020-11-16 17:45:27 412

原创 Carsim/Simulink联合仿真Wrong version of Vehicle Solver DLL

Carsim/Simulink联合仿真时总是提示错误,Wrong version of Vehicle Solver DLL,如下图所示。解决方法:1.打开Send to Simulink下面的浅蓝色链接框后,选择我们所安装的MATLAB的位数,有32bit和64bit两种选项,设置完成之后重新send to simulink,运行;2.若方法1设置完成之后,问题仍然存在,可尝试将specify alternative VS solver DLL files这一项前面的对勾去掉。...

2020-11-16 17:09:51 2831 7

原创 Carsim与指定Matlab版本进行联合仿真

Carsim与指定Matlab版本进行联合仿真问题1:电脑上面装了好几个版本的matlab时,如何与指定的MATLAB版本进行联合仿真?问题2:电脑上面装了MATLAB,但进行联合仿真时总是显示“Matlab not found.Be sure that Matlab is installed.”问题分析:CarSim是通过COM接口来实现对MATLAB/Simulink进行调用的,所以我们只要将特定版本的MATLAB/Simulink注册到COM服务,就可以让CarSim调用了:在启动matlab.

2020-11-16 16:42:58 2786 2

空空如也

空空如也

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

TA关注的人

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