- 博客(76)
- 收藏
- 关注
原创 操作系统——中断
是指程序在执行过程中遇到紧急事件需要处理时,暂停当前程序在CPU上的运行,转而执行相应的紧急事件,待处理完成后再返回断点继续执行原来的程序。是现代计算机系统的重要组成部分之一;:中断请求信号的来源;
2024-07-25 23:37:05
537
原创 操作系统的进程与CPU资源
3、时间片轮转:每个进程循环的在CPU资源进行执行,每个进程都可以在一定时间片内独占CPU资源进行执行,若在时间段内未执行完毕,则会记录下来了,等到下一次轮到的时候接下去继续执行;这种机制确保了关键任务能够优先获得必要的资源和处理时间,从而提高系统的整体性能和响应能力。是操作系统调度策略的一种,其核心思想是每个进程循环的在CPU资源进行执行,微观上每个进程都可以在一定时间片内独占CPU资源进行执行。进程的优先级会影响时间片的分配,高优先级的进程可能会获得更大的时间片,从而获得更多的CPU时间。
2024-07-24 19:35:08
453
原创 操作系统——笔记(1)
管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合,控制和管理着整个计算机系统的硬件和软件资源,是。操作系统作为系统资源的管理者提供的功能有:处理机管理、存储器管理、文件管理、设备管理;(3)基于用户和任务:单任务操作系统与多任务处理系统、单用户操作系统和多用户操作系统;(4)基于应用领域:服务器操作系统、并行操作系统、网络操作系统、分布式操作系统等;(1)普通用户:GUI用户图形界面,命令接口(联机命令接口和脱机命令接口)(2)基于处理方法:单处理器操作系统,多处理器操作系统;
2024-07-23 23:29:42
588
原创 STM32+USART串口(1)
(3)异步通信 :在异步通信中,数据通常是以字节为最小单位组成数据帧传送,数据帧按照固定“节拍”(即波特率)通过发送端一帧一帧地发送,接送端则一帧一帧地接收。(6)STM32串口通信采用TTL电平,由TxD(发送)、RxD(接收)、GND(信号/电源地)三条线构成,高电平+3.3V代表逻辑“1”,低电平0V代表逻辑“0”技术,要求发收双方具有同频同相的同步时钟信号,只需在传送报文的最前面附加特定的同步字符,使发收双方建立同步,此后便在同步时钟的控制下逐位发送/接收。(1)串口通信分为:串行通信和并行通信;
2024-07-20 12:56:19
425
1
原创 stm32标准库——DMA(1)
DMA(Direct Memory Access,直接存储器访问):可以提供外设和存储器或者存储器和存储器之间的高速数据传输,无须CPU干预,节约了CPU资源;DMA就是CPU的小秘书,帮忙处理数据转移的小事情。从而让CPU处理更重要的事情。
2024-07-19 12:29:39
271
原创 stm32标准库——ADC
量化是将保持的模拟信号值转换为数字形式的过程。量化过程会产生量化误差,这是A/D转换中的一个关键因素,影响转换的精度。:在采样阶段,模拟信号在特定的时间间隔被采样,产生一系列离散的模拟值。这个过程需要满足奈奎斯特定理,即采样频率必须至少是信号最高频率的两倍,以避免混叠现象。:在编码阶段,量化后的离散数值被转换成二进制代码,这通常是一个二进制数,表示数字信号的值。:采样得到的模拟值需要在量化之前保持稳定。在保持阶段,使用保持电路(如采样保持放大器)来保持采样瞬间的模拟电压值不变,直到量化过程完成。
2024-07-18 09:48:44
311
原创 STM32——按键
第一种,在上拉输入模式中,按键按下就是低电平,按键松开就是高电平。如果不是上拉输入,按键松开,就处于浮空的,不稳定的状态。按键需要去抖动处理,软件设计去抖动可以通过设置延时函数,实现;上面两种接法按键按下时引脚是低电平,松手是高电平,下面两种接法按键按下时引脚是高电平,松手是低电平。
2024-07-17 16:20:31
294
原创 stm32基础:GPIO简介
5、输入模式下,可取读端口的高低电平或电压,用于读取按键输入,外接模块电平信号输入,ADC电压采集,模拟通信协议接收数据等;4、输出模式下,可控制端口输出高低电平,用于驱动LED,控制蜂鸣器,模拟输入输出协议输出时序等;输出模式:推挽输出,开漏输出,复用推挽输出,复用开漏输出;输入模式:上拉输入,下拉输入,浮空输入,模拟量量输入;2、使用GPIO_init函数初始化GPIO;3、使用输入或输出函数控制GPIO口;1、使用RCC开启GPIO的时钟;1、GPIO:通用输入输出口;APB2是时钟使能;
2024-07-16 22:19:14
329
原创 *args和**kwargs这个在python中的意思
在这个例子中,**data将字典data解包为关键字参数'a'=1和'b'=2,然后传递给my_function函数。时,它会将字典中的键值对解包为关键字参数传递给函数。这样可以方便地将字典中的数据作为关键字参数传递给函数。在这个例子中,*x将列表x解包为单独的参数1, 2, 3,然后传递给my_function函数。x时,它会将可迭代对象x中的元素解包,然后将这些元素作为单独的参数传递给函数或其他上下文中。x是一个用于解包可迭代对象的操作符。当在函数调用或其他上下文中使用。最后输出:1 2 3。
2024-06-15 21:40:59
219
原创 python+闭包笔记
1、闭包:是一个函数和它所引用的环境组合的一个整体,保证数据不被外界所影响。若想在内嵌函数中改变外部变量,可以使用关键字nonlocal;闭包有一个外部函数和一个内部函数,返回值必须是 内嵌函数。缺点:会导致一部分内存不被释放,占用内存。在不改变原代码的情况下,增加功能。
2024-05-27 17:10:33
340
原创 python多线程
python中多线程可以提供threading模块来实现。1、当程序中有耗时操作时,我们应该使用多线程来进行操作。多线程就像是多辆火车,可以在不同的轨道上同时运行。而进程就像是火车站,正在运行的一个程序的实例。
2024-05-21 10:29:29
554
原创 Can not extract resource from com.android.aaptcompiler.ParsedResource
2、可尝试,清除Gradle缓存和重建项目。在Android Studio中,可以通过菜单栏的"File" -> "Invalidate Caches / Restart..."来清除缓存。1、检查资源文件(如values.XML文件)是否有语法错误、未闭合的标签、错误的属性等。使用Android Studio的XML验证功能可以帮助找到这些问题。
2024-05-19 10:09:35
1012
原创 Android广播+定时管理器AlarmManager笔记
setAndAllowWhiledle:设置一次性的定时器,即使设备属于空闲状态,也会保证定时器的执行。setRepeating:设置重复的定时器,但系统部不保证能按时发送广播。1、定时管理器AlarmManager利用系统 闹钟定时发送广播。cancel:取消指定延迟的 定时器。set:设置一次性的定时器;
2024-05-18 10:38:35
423
原创 SQLiteOpenHelper数据库帮助器
1、继承SQLiteOpenHelper类,需要重写onCreate和onUpgrade两个方法。SQLiteOpenHelper数据库帮助器是Android提供的数据库辅助工具。
2024-05-17 09:18:06
1007
原创 安卓+横竖屏切换
当直接使用模拟机进行横竖屏切换时,会将原来的activity结束,再重新开始一个activity。为了避免切换时的界面重新加载,Android设置了配置变更机制。当执行特定的变更行为时,不需要重启界面。按下Home键,会回到桌面,按下任务键会打开任务列表。这两个键是通过广播发送事件信息的而不是通过相应的点击事件。回到桌面或打开任务列表,需要收听系统广播Intent.ACTION_CLOSE_SYSTEM_DIALOGS。2、修改活动页面的代码,重写onConfigurationChanged方法。
2024-05-16 15:48:24
271
原创 安卓+数据库管理器SQLiteDatabase
通过SQLiteDatabase类,实现数据的持久化存储,并实现数据的增删改查功能。1、SQLiteDatabase是SQLite的数据库管理类,提供若干操作数据表的API。setTransactionSuccessful:设置事务的成功标志。rawQuery:执行拼接好的SQL查询语句,返回结果集的游标。openDatabase:打开指定路径的数据库。query:执行查询操作,返回结果集的游标。4、数据处理类:用于数据表层的操作。2、管理类:用于数据库层面的操作。3、事物类:用于事务层面的操作。
2024-05-16 14:46:45
569
原创 Android+PendingIntent延迟广播
PendingIntent是Intent中的一种,Intent是立即执行的意图,而PendingIntent是在未来的某一时刻发生的意图。如果PendingIntent对象已存在,就取消原有的对象,创建新的PendingIntent对象。PendingIntent支持三种延迟意图:启动Activity、启动Service和发送广播。表示当前的PendingIntent只能被使用一次,然后它就会被自动取消。如果PendingIntent对象已存在,则保留原有的对象,更新其设置。2、关于flags标记。
2024-05-15 09:59:45
450
原创 Python+PySpark数据计算
再python中的lambda只能有行,如果有多行,要写成外部函数;map -> [['123', '123'], ['123', '123']](少了一层[ ])对RDD内的元素进行逐个处理,并返回一个新的RDD,可以使用lambda以及链式编程,简化代码。功能:过滤,保留想要的数据,结果为True就对该结果进行返回;功能:对传入的数据进行去重,不需要传入参数,直接调用该方法即可。功能:传入数据组,能进行分组,并进行逻辑运算。4、reduceBykey算子。6、distinct算子。
2024-05-12 09:40:00
247
原创 Caused by: org.apache.spark.SparkException: Python worker failed to connect back.
的编译器,所以需要我们自己手动配置。
2024-05-09 16:00:50
306
原创 Python+PySpark数据输入
获取方法:1、通过SparkContext的parallelize成员方法,将python数据容器转换为RDD对象。2、通过SparkContext的textFile方法,读取文本文件得到RDD对象。RDD是PySpark中数据计算的载体,提供数据的存储,计算的方法。
2024-05-09 15:24:52
511
原创 安卓intent+传递Serializable接口
从Mainactivity1传递对象给MainActivity2可以通过Serializable对象。
2024-04-28 08:46:14
560
原创 python+图像轮廓opencv
1、findContours(img,mode,method,[...])轮廓查找。RETR_CCOMP=2,每层最多两级,从里到外,从小到大;RETR_TREE=3,按树型存储轮廓,从大到小,从右到左;CHAIN_APPROX_SIMPLE只保存轮廓上角上的点。CHAIN_APPROX_NONE保存轮廓上所有的点。RETR_EXTERNAL=0(只检测外轮廓)2、drawContours()绘制轮廓。RETR_LIST=1(检测所有的轮廓)
2024-04-24 09:41:00
223
原创 python与PySpark
2、P有Spark是Spark的python实现,用于python中完成Spark的任务开发;1、Spark是Apache基金会 下的顶级开源项目,用于对海量数据经行大规模的分布式技术;如果出现乱码,可能是jdk的问题,或者是编码问题。3、安装:可通过cmd终端进行安装。3、执行一个简答的程序进行验证。也可以通过国内镜像网站,
2024-04-22 16:45:09
863
1
原创 python连接数据库2——数据提交
pymysql在执行数据插入或产生其他数据更改的sql语句时,默认是需要提交更改的。通过conn.commit()即可提交;1、commit提交。
2024-04-21 14:14:47
399
原创 python连接数据库1
如果报错pymysql.err.OperationalError: (1049, "Unknown database 'text'");证明没有这个数据库,可以通过下面这个,进行登录,输入SHOW DATABASES;1、建立简单的数据库连接(前提是有数据库)2、通过pycharm创建一个数据库的表。3、通过pycharm进行数据库查询。
2024-04-20 11:16:06
555
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人