- 博客(21)
- 资源 (3)
- 收藏
- 关注
原创 【Android】Binder机制在Android中的原理和使用
Binder机制运用的是一个C/S(Client/Server)架构,客户端进程发送请求,服务端进程接收请求并返回结果。Binder机制的实现是基于Linux的Binder驱动,Binder驱动可以理解为一个消息传递的通道,各个进程通过读取和写入这个通道来实现跨进程通信。当Client进程调用Server中的binder方法时,Binder驱动会将这个方法调用转换成一条Binder消息,这条消息会发送到Server进程。
2023-04-24 18:30:54
1632
原创 【按钮事件】非阻塞式按钮事件(包含消抖)新思路
非阻塞式按钮事件新思路背景在蓝桥杯嵌入式组的比赛中,总是会用到按钮操作,一方面需要按钮具有按下、单击、释放、长按等事件,另一方面还需要有消抖的能力。同时又对按钮的响应事件有要求(0.1秒以内)。为什么会有这样的要求呢?原理因为常规的消抖都是使用的delay进行消抖,即检测多少秒后是否还是保持同样的状态。常规操作都是阻塞式的,能不能在0.1s内按钮做出正确的响应,就要看个人的逻辑思维能力了,可能就没有办法再使用阻塞式按钮事件。同时主循环中也有一些实时更新的传感器数据,如果阻塞式,可能会造成数据刷新不及
2021-06-14 18:32:33
1355
3
原创 【JS】不依赖界面显示的input元素上传下载
【JS】不依赖界面显示的input元素上传下载上传//基于jQuerylet inputElement = $('<input type="file" accept="文件格式filter" name="file"/>'); // 动态创建组件inputElement.change(() => { let file_info = inputElement[0].files[0];//选取第一个文件。files可能有很多个 // 一系列操作})inputElem
2021-02-09 14:16:31
236
原创 【算法】简单线性插值采样
简单线性插值采样def LinearSampling(A, B): x0 = A[0] x1 = B[0] y0 = A[1] y1 = B[1] if x1 - x0 == 0: #在同一条竖直线上 pos = np.array(list(zip([x0] * 256, np.linspace(y0, y1, 256) + 0.5))) pos = pos.astype(np.int32) # 采样为整数 retur
2021-02-09 14:06:17
656
原创 【Matplotlib】去除绘制图像的白色边框
fig, ax = plt.subplots()ax.一系列绘图操作()plt.axis("off")# 去除图像周围的白边plt.gca().xaxis.set_major_locator(plt.NullLocator())plt.gca().yaxis.set_major_locator(plt.NullLocator())plt.subplots_adjust(top=0, bottom=0, left=0, right=0, hspace=0, wspace=0)...
2021-02-09 13:55:39
3334
1
原创 【Django】获取crsf_token
废话不多说,直接上代码<div id="csrf_token" hidden="hidden">{{ csrf_token }}</div>Django会自动将crsf_token填充到以上的隐藏div中,然后可以在js中写入以下代码进行获取const csrf_token = $('#csrf_token').text() //基于jQueryconst csrf_token = document.querySelector("#csrf_token").textCon
2021-02-09 13:44:29
427
原创 【JS/Django】上传下载文件以及转换为URL
目录需求实施前端主要其他后端主要需求前端向后端传递数据,后端接收到数据后将其进行处理,然后返回给前端,前端将其显示在img标签上或者下载下来。简化一下就是前端向后端请求–>#mermaid-svg-9lPIGmx5t26o4ock .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-9lPIGmx5t
2021-02-09 13:31:43
745
原创 Verilog 实现74138译码器
Verilog 实现74138译码器代码编写首先明确有哪些输入和输出:Enable 使能 En0 En1 En2Input 输入 I0 I1 I2Output 输出 O0 ~ O7然后把数据类型用Verilog实现://使能端为三个 只有当使能为1 0 0的时候芯片才正常译码input wire[2:0] En;//输入端为三个二进制位,对应2^3 = 8,即3-...
2020-03-30 21:04:57
16310
10
原创 教程 Manim安装教程
Manim安装教程去GitHub下载代码 https://github.com/3b1b/manim pip install -r ./requirements.txt 如果失败,手动安装PyCairo https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycairo 安装MikTex http://www.miktex.org/ 配置环境变...
2020-03-18 14:19:15
2526
原创 C语言 表达式转换 中缀表达式转后缀表达式
算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。输入格式:输入在一行中给出不含空格的中缀表达式,可包含+、-、*、\以及左右括号(),表达式不超过20个字符。输出格式:在一行中输出转换后的后缀表达式,要求不同对象(运算数、运算符号)之间以空格分隔,但结尾不得有多余空格...
2020-03-05 20:26:25
1528
原创 C语言 符号配对 (20分)
符号配对(20分)请编写程序检查C语言源程序中下列符号是否配对:/*与*/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不超过100个。输出格式:首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右...
2020-03-05 17:06:13
6387
原创 C语言 一元多项式的乘法与加法运算
C语言 一元多项式的乘法与加法运算设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。...
2020-03-01 13:50:35
1567
原创 C语言 按课程总成绩从高到低排序输出各个学生的信息
按课程总成绩从高到低排序输出各个学生的信息题目内容:设计一个结构体类型,包含姓名、学号、语文成绩、数学成绩、英语成绩。输入n个学生的信息,输出按三门课程总成绩从高到低排序的各个学生的姓名、学号和各科成绩。输入格式:首先第1行输入一个整数n(1<=n<=20),表示学生人数,然后输入n行,每行包含一个学生的信息:姓名(不超过20个字符)、学号(不超过12个字符)以及三门课程...
2020-02-17 14:31:49
14385
1
原创 C语言 计算日期间隔
C语言 计算日期间隔题目内容:用结构体实现计算日期的差值:(1)编写一函数,计算两个日期之间的时间差,并将其值返回。日期以年、月、日表示。“时间差”以天数表示。注意考虑日期之间的闰年。函数的输入参数为日期1和日期2,为了计算简便,假设用户输入的日期1总是早于日期2。函数的返回值为时间差,单位为天数。(2)编写一程序,在主函数中输入两个日期,调用上述函数计算两个日期之间的时间差,并将结果输...
2020-02-17 12:24:42
4983
原创 C语言 分享小技巧(一)
C语言 分享小技巧(一)诶,在刷OJ的时候,会遇到输入一堆数据,找最大值啦,统计字母啦,统计数字啦,统计不辣不辣的一般来说,我们会建立一个数组,对√,没错,就是建立数组。一说到建立数组就得开辟内存,一说到开辟就想到了,当年五指山下……停停停。开辟了内存,那就是吃
2019-03-29 22:33:58
685
1
原创 C语言 控制台输入输出入门
C语言 控制台输入输出入门刚入门的时候练习C语言有很多途径。如鉴赏前辈的代码,临摹等。也有一种方法就是刷OJ(Online Judge)那么本文就针对OJ中常见的输入输出做一个小的总结或是入门指引。一、常见输入单行第一行输入总行数n,后跟n行每一行开始一个数据个数n,后跟n个数据遇到某标记结束以上4种的任意组合接下来针对以上五种情况展开讨论。1.单行输入对于单行的格式化输...
2019-03-28 22:04:33
4929
原创 VirtualBox设置Ubuntu与windows共享文件夹
一、在VBox的该虚拟机设置里的共享文件夹设置里添加共享文件夹二、在菜单栏选择 设备——安装增强功能如果失败,一种情况是 提示安装 gcc make perl执行 sudo apt-get install gcc make perl三、再次安装增强功能,此时发现文件管理器中出现了sf_shared,完成。若提示无权限访问执行sudo adduser “你的用户名” vboxsf...
2019-01-25 17:53:59
234
原创 C语言 求第N大的元素
C语言实现求第N大的元素(第N小的元素同理)思路(以全局最大值举例):1. 找到全局最小值2. 找到全局最大值3. 将全局最大值赋值为 全局最小值-14. 重复2-3步骤N-1次(N为第N大的N)5. 再次找到最大值,此最大值即为 第N大元素目的:这样写的好处就是时间复杂度低,对于大量的数据,比起先排序再取第N最大值来说效率要高得多优化:针对不同的要求以及不同的环境,可以进...
2019-01-12 17:18:26
487
原创 C语言 计算某年某月某日在该年的第几天
废话不多说,上代码通过传入year,month,day来获取天数int getDay(int y, int m, int d) { int rtnDay = d; int day[] = { 31, 28, 31, 30, 31, 30, 31, 31,30, 31, 30 }; int moon = !(y % 4) && y % 100 || !(y % 400);...
2019-01-12 11:58:07
1749
2
InsertData.sql
2020-04-17
InsertData.sql
2020-04-17
InsertData.sql
2020-04-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人