- 博客(39)
- 资源 (1)
- 收藏
- 关注
原创 Python默认参数是函数定义时计算的值
在python中,当你定义一个函数时,默认参数的值并不是每次调用时都重新按默认参数的值进行确定,而是在函数定义时(即函数的声明)就以默认参数值进行保存在一个变量a,多次调用该函数时默认参数都是引用变量a,这样子默认参数会保持上一次的状态(值)。
2025-01-20 17:45:31
137
原创 网络编程UDP—socket实现(C++)
UDP通信需要哪些必要信息IP地址用于定位通讯双方端口号用于标识通信的具体应用或服务。传输层通信都需要端口号的。网络要求双方必须是可以进行ip通信的UDP依赖IP协议栈(IPv4或IPv6)完成路由、传输双方需要用同一协议bind 函数用于将套接字绑定到特定的IP地址和端口号,通常用于服务端监听套接字。服务器先运行监听特定的IP地址和端口号;然后客户端再sockfd:套接字描述符,由 socket 函数返回。
2024-12-25 18:09:59
1517
原创 CAN(Controller Area Network )入门
CAN简介CAN 是控制器局域网络 (Controller Area Network) 的简称,它是由研发和生产汽车电子产品著称的德国 BOSCH 公司开发的,并最终成为国际标准(ISO11519),是国际上应用最广泛的现场总线之一。CAN适应的需求在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 L
2024-12-24 20:14:05
1219
原创 Bazel新手入门
Bazel是一个开源的构建工具,用于高效地管理和自动化大型项目的构建和测试。在软件开发中,构建工具可以自动化帮助你将源代码转化为可执行文件。(当然前提是你得按照bazel语法编写好构建脚本)。下载和管理项目依赖(像第三方库)。编译源代码,生成可执行文件或者库文件。执行测试,确保代码按预期工作。如果不用构建工具的话,我们就得手动 下载依赖(甚至还得更新依赖),编译源代码、执行测试。
2024-12-09 11:31:13
1041
原创 malloc、calloc、realloc、alloca的区别
malloc、calloc、realloc、alloca这些都是用于内存分配的函数,但是作用 以及 分配的内存区域不同。malloc、calloc、realloc分配的内存是在堆中的alloca分配的内存是在栈中的alloca: 临时内存需求,快速分配和自动释放,但注意栈溢出风险。realloc: 动态调整已分配内存的大小,适用于动态增长或缩减内存。calloc: 分配并初始化为 0,适用于需要清零的动态内存。malloc: 动态分配内存,适用于不需要初始化的内存需求。
2024-12-05 11:19:45
799
原创 FPGA存在的意义:为什么adc连续采样需要fpga来做,而不会直接用iic来实现
每次调用iic驱动的时间间隔太长了,adc连续采样的速率高且没有多的寄存器缓存数据,所以用户得及时取数据,否则就会产生数据丢失;于是就需要一个快速的取数据方式,而fpga的时间以8ns为单位,它可以做到快速取数据;但是用户没法这么快的从fpga那边取数据,于是就需要用DMA,给fpga存放数据,最后用户再从DMA中取数据
2024-11-30 16:23:33
1652
原创 git配置远程仓库的认证信息
git配置远程仓库的的认证信息:用户在使用 Git 与远程仓库交互(比如:从远程仓库拉取/推送代码)时,远程仓库需要验证用户身份信息(不然岂不是谁都可以拉取代码了)来控制用户对远程仓库的访问权限,而这个身份信息就是认证信息。如果我们不配置认证信息的话,
2024-11-14 23:53:03
1299
原创 为什么代码需要编译?
为什么代码需要编译呢?主要还是因为程序员用的编程语言 与 CPU能识别的语言 不是同一种语言,所以需要一种转化的过程,这个过程就叫编译
2024-11-13 22:56:59
318
转载 在virtualbox中为虚拟机增加磁盘大小
使用虚拟机时总会遇到之前分配的磁盘内存不够,这时就要为虚拟机分配更多的磁盘内存;否则会连开启都开不了
2024-10-23 15:01:59
167
原创 标准输入输出(Standard Input/Output)、重定向、管道
在操作系统和shell脚本编程中,标准输入输出(I/O)、重定向和管道是核心概念,它们允许用户和程序之间高效地传递和处理数据。每个运行在终端的程序默认都会打开这三个文件描述符。
2024-10-09 20:17:34
975
原创 Linux驱动框架
在Linux系统中,绝大多数硬件设备都有一套非常成熟的驱动框架了,驱动工程师可以使用这些驱动框架来实现板子相关的硬件支持,建立硬件与Linux内核的联系,内核再通过统一文件系统接口呈现给用户,用户则通过对应的设备文件控制硬件统一文件系统接口在/sys/class下面设备文件如何与硬件相关联?设备文件相当于设备驱动层的函数参数一样,当每次对设备文件进行读写操作时都会触发驱动代码执行。每次对设备文件进行写入操作时,会触发驱动代码以这次写入设备文件的内容作为参数去修改设置相应的硬件设备。
2024-10-08 19:43:13
306
原创 四级阅读——导读
一、四级考试大板块的分值比例既然我们是去考试,那就从规则的角度去看待,我们要了解考什么?多少分?分值比例是多少?以及时间?这些都有助于我们去结合自身去拿分,最终达到目的(考过)。二、阅读部分的题型、分值比例及题目数量了解各个小部分,有助于我们更有倾向性得去拿我们能拿的最高分。从上可知:从分值来看,重要程度反而是倒序的;所以我们做前面题所花时间不能多,或者可以采取倒着做。当然个人建议开始顺序做好一点,这样可以逼迫自己一直有一个总的时间观念。从上表(总30分钟):我们根据分值占比,调节出
2021-12-08 12:38:32
306
原创 四级词汇——不择手段记单词new
//spespeculate //calculator计算器suspectspyaspectinspectprosperprospectprospectiveperspectivespecifyspecific//tang=touchtangiblebarrier//prienterprisepraiseefficientmanufacturedefectprofitfirefirm//cur=当前occurrecurcurrentcur
2021-12-08 10:39:38
2107
原创 语法学习总结——英译汉
本文纯粹处于自我感受及学习方法!!!不喜勿喷!!!首先,找 谓语动词 或者 系动词,毕竟一个句子最重要的意思就来源于它其次,结合 主语接着找宾语(先找好一个句子主干表达的东西)比如:我要打一个 之前打了我的 人主干:我要打人(这一步运用四级语法1简单句的知识就好,我们只要很简单的找好我们的主谓宾、主系表 就好)然后再 来寻找一个详细的关系,从句或时态语态之类的这一步就结合 四级语法2、3、4我们要运用英语的表达,英语中,他不会把一些形容啊啥的直接形容人或物,更多会运用从句,它们反而先表达出一
2021-12-03 19:51:54
299
原创 四级语法4——定语从句
一. 课前思考:定语是什么?定语从句是什么及其构成?定(限定/缩小范围)语:adj定语从句:adj写成一句话用一个形容词作定语修饰名词或代词。若要表达更复杂的意思,需借助一个句子来修饰名词。定语从句理解及其构成:1.形容词作定语与从句作定语的比较I don’t like lazy peoples.I don’t like people who don’t love their own country.定语从句构成、先行词和关系词构成:先行词+关系词+定语从句各个词语解释:
2021-12-03 17:29:23
2101
原创 四级语法3——名词从句
一.课前思考:什么是复合句?复合句的分类?一个主句和一个或多个从句,主句表达主要意思,从句表达次要意思。复合句又分为名词性从句、形容词性从句、副词性从句。名词性从句的分类?各种名词性从句的理解?名词性从句分为:主语从句、宾语从句、表语从句、同位语从句。主语从句主语从句 主语从句,说明啊:充当主语的从句就叫主语从句!!that引导的主语从句例句:1、That the little boy got the first prize made his family relatives so
2021-12-03 00:25:40
1208
原创 四级语法2——主谓一致+时态语态
一.课前思考:上一篇当中,主要讲了简单句及并列句,总的来说就是讲了最基本的去传递信息。上一篇主要就是讲了谓语动词,通常我们传递信息最主要的成分就是谓语动词,接着结合动作的发起着(主语)及动作的接受者(宾语)来表达完整的信息。但是呢,还有在英语中还有一些细节的东西:1、主语单复数 对 谓语的要求 (主谓一致)2、主语跟动作的关系:主语是被动还是主动 去执行这个动作(为了表达主动被动,无奈之举) 对谓语的要求 (语态)3、动作是过去、现在还是将来发生的 对 谓语的要求 (时态)
2021-11-30 22:34:37
2320
原创 四级语法1——简单句+并列句基本知识
简单句+并列句基本知识一. 课前思考:英语句型主要分为哪几种?分别是什么?它们之间有什么区别?什么是简单句? 有哪几种常见形式?二.英语句子分类:简单句(单单一件事,清楚就好)小明这次考试考了100分。并列句(多件并列的事,就是没有主次之分)这次考试,小明考了100分,小李考了80分。事件A:小明考了100分事件B:小李考了80分特点:并列关系复合句(多件事,但是有主次之分)小邹同学是如此的聪明以至于他每次都考全班第一。事件A:小邹同学是如此的聪明事件B:他每次都考全班第.
2021-11-23 22:40:21
2298
原创 CAN入门书1
CAN是什么?CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO*1 国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 LAN,进行大量数据的高速通信”的需要, 1986 年德国电气商博世公司开发出面向汽车的 CAN 通信协议。此
2021-11-23 20:52:54
999
原创 第一章 计算机的三大原则
章前问题初级问题硬件和软件的区别是什么?答:硬件是看得见摸得着的设备,比如计算机主机、显示器、键盘等。而软件是计算机所执行的程序,即指令和数据。软件本身是看不见的。解释:硬件( Hardware) 代表“硬的东西”, 而软件( Software)代表“软的东西”。 是硬的还是软的取决于眼睛能否看得到, 或者实际上能否用手摸到。中级问题存储字符串“中国”需要几个字节?答:在 GBK 字符编码下,存储“中国”需要 4 个字节。解释:存储汉字时, 字符编码不同, 汉字所占用的字节数也就不同。 在
2021-11-19 11:17:43
668
原创 计算机是怎样跑起来的——概述
前面(目的)随着计算机的不断发展,为了便于人们使用,前人们开发的各种各样的技术,为的就是让大部分人能够轻松使用计算机的,但是同时也带来了另一方面的弊端,就是人们对计算机本身是怎么运作的了解甚少,对于一般纯粹只是使用计算机的人而言,也许确实不需要知道那么多;但是对于一名程序猿,我觉得有必要了解一下计算机是怎么运作的,随着计算机技术的不断发展,各种各样的新技术,我们由于各种原因,我们很少去管这些底层的东西,但是我觉得自己写的程序还是有必要知道最后计算机会怎么去运行它的,我们了解了计算机运行之后,也会更加知道前
2021-11-18 12:25:32
805
原创 四级词汇——不择手段记单词
prospersuspectspyinspecttangiblebarrierenterprisepraiseefficientmanufacturedefectprofitfire
2021-11-14 13:52:37
760
原创 GPIO(General Purpose Input Output通用输入/输出)
GPIO简介GPIO是通用输入输出的简称,说白了就是芯片的引脚,这些引脚用来与外部设备连接,从而实现与外部设备通信或者控制外部设备的功能。最基本的例子:用GPIO连接外部设备(LED灯),控制芯片让GPIO引脚输出高低电平,从而控制LED灯的亮灭。GPIO 框图剖析通过 GPIO 硬件结构框图,就可以从整体上深入了解 GPIO 外设及它的各种应用模式。该图从最右端看起,最右端就是代表 STM32 芯片引出的 GPIO 引脚,其余部件都位于芯片内部。引脚的两保护个二级管可以防止引脚外部过高或过低的
2021-10-30 10:04:34
111
原创 新建工程——寄存器版本
新建工程存放的文件夹建一个文件夹,文件夹名字为项目名,在里面再创建两个文件夹分别为Listing和Objects。startup_stm32f40xx.s启 动 文 件, 系 统 上 电 后 第 一 个 运 行 的 程 序, 由 汇 编 编 写, C 编 程 用 的 比 较 少, 可 暂时 不 管, 这 个 文 件 从 固 件 库 里 面 拷 贝 而 来, 由 官 方 提 供。 文 件 在 这 个 目 录: F4 固 件\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Lib
2021-10-30 09:25:49
44
原创 初识STM32
什么是 STM32STM32,从字面上来理解, ST 是意法半导体, M 是 Microelectronics(微电子学)的缩写, 32 表示 32 位,合起来理解, STM32 就是指 ST 公司开发的 32 位微控制器。选型看《STM8 和 STM32 产品选型手册》看引脚信息看《STM32F407ZGT6》中的第三部分Pinouts and pin description知道每个 IO 的功能说明,这个我们可以从官方的数据手册里面找到。在学习的时候,有两个官方资料我们会经常用到,一个是参考手
2021-10-30 08:59:55
94
原创 STM32——开发环境
开发环境所用软件:Keil5温馨提示:安装路径不能带中文,必须是英文路径安装目录不能跟 51 的 KEIL 或者 KEIL4 冲突,三者目录必须分开KEIL5 的安装比起 KEIL4 多了一个步骤,必须添加 MCU 库,不然没法使用。安装芯片包KEIL5 不像 KEIL4 那样自带了很多厂商的 MCU 型号, KEIL5 需要自己安装。我们可以去 keil 的官网下载: http://www.keil.com/dd2/pack/,或者直接用我们下载好的包。另外也可以直接用keil5的
2021-10-29 15:57:59
56
原创 串口通信-1
同步通信与异步通信**同步通信**:进行数据传输时,发送和接收双方要保持完全的同步。如何传输:通过时钟来决定什么时候发送接收数据,当然也要用时钟线来规定传输的开始与结束等。为了实现同步,要求接收和发送设备必须使用同一时钟,所以同步通信需要一根时钟线(SCL),因此判断是否是同步通信,我们可以通过是否有时钟线来判断,有时钟线则该通信为同步通信。异步通信:以字符为单位进行传输的,字符之间没有固定的时间间隔要求,而每个字符中的各位则以固定的时间传送。如何传输:通过制定好通信协议(即制定好起始位、数
2021-10-23 14:53:51
463
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人