自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海小皮hxp

学习记录

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

原创 STM32 CubeMX开发 f103 超详细MDK在线调试(Debug)教程

STM32 CubeMX开发 超详细MDK在线Debug教程1 CubeMX配置2 Debug设置3 Debug功能演示3.1 断点调试3.2 单步调试3.3 变量监视X 往期文章本教程在上一期呼吸灯的基础上增加在线debug讲解,通过变量监视完成代码调试1 CubeMX配置这里以stm32f103为例,在它的开发手册里我们可以找到SWJ调试端口的定义及其对应引脚我们可以选择不同的模式,不同的模式占用引脚情况不相同在CubeMX中的SYS项中我们可以选择debug模式,选择好模式后会自动使能相

2021-11-30 10:49:04 8433 1

原创 鸿蒙(HMOS)开发基础篇(三)开发工具特性介绍

DevEco Studio特性介绍1 开发平台介绍1.1 应用开发1.2 设备开发2 分布式应用开发2.1 UI设计Preview2.2 调试X 往期文章1 开发平台介绍鸿蒙开发包含了分布式应用开发和分布式设备开发1.1 应用开发鸿蒙应用是在多设备运行的,同一个工程可以在多设备自适应,根据设备选择交互方式、UI布局,这个问题还在不断的发展和完善,需要开发者共同推进鸿蒙应用框架一个跨设备抽象的应用框架,统一的多设备框架便利的API实现同步、共享、数据分发多设备自适应,布局、交互、控件多

2021-11-28 13:43:54 12794 2

原创 STM32 CubeMX开发 F1通用定时器

STM32 CubeMX开发 F1通用定时器1 新建工程2 配置时钟3 配置Timer4 配置LED灯引脚5 生成工程编写呼吸灯6 中断处理7 编译下载与演示X 往期文章我手上有一块精英板,型号是STM32F103ZET6,就以此为例介绍一下32单片机的定时器怎么在CubeMX下配置,并用一个呼吸灯展示一下定时器的效果1 新建工程配置工程信息2 配置时钟从原理图中找到开发板上的外部晶振为8M设置RCC的高速时钟源为外部晶振设置时钟图芯片手册中也可以看到APB1的上限频率,和时钟图

2021-11-27 18:12:39 1479 1

原创 STM32 CubeMX开发及f103开发环境搭建

STM32 CubeMX开发即f103开发环境搭建1 安装包及HAL库包下载2 安装与环境配置2.1 CubeMX安装2.2 MDK5安装2.3 f1开发环境配置3 生成工程3.1 配置时钟3.2 生成X 往期文章1 安装包及HAL库包下载CubeMX530安装压缩包MDK5安装包F1系列库函数包下载链接链接:https://pan.baidu.com/s/1TZWsszEpIpUN9aj11TxcaQ提取码:hxp62 安装与环境配置2.1 CubeMX安装新建文件夹CubeMX

2021-11-16 14:59:19 2290 1

原创 鸿蒙(HMOS)开发基础篇(二)开发初体验-多设备协同

开发初体验-多设备协同1 鸿蒙应用基础知识1.1 应用简介1.2 编写鸿蒙应用2 多设备协同应用开发2.1 创建应用项目1 鸿蒙应用基础知识1.1 应用简介同一应用一次开发,多端部署可在不同设备间迁移,并完成自适应布局鸿蒙应用的结构层次如下图所示分布式任务调度支持跨设备远程访问启动、远程调用、远程连接、迁移等操作,选择合适的设备完成分布式任务1.2 编写鸿蒙应用应用结构:鸿蒙应用以APP pack形式发布,由多个hap包及描述hap包的info组成hap:ability的部署包,

2021-11-14 16:04:57 2408 2

原创 鸿蒙(HMOS)开发基础篇(一)环境搭建 & Helloworld

开发环境搭建&hello world1 搭建步骤2 软件安装3 偏好设置4 Hello WorldX 往期文章1 搭建步骤橙色:可选(若为公司网络,需要设置代理),我的网络无需设置代理,需要设置代理请参考官方教程黄色:易出错、特别留意2 软件安装IDE安装华为官方下载地址IDE:DevEco Studio功能:工程模板创建、代码开发、编译、调试、测试、发布支持语言:Java Js C/C++安装路径可自定义Node.Js安装官方下载地址(下载速度可能比较慢,耐心等待)

2021-11-10 10:25:25 1178 1

原创 《现代操作系统》03章 存储管理(四)

《现代操作系统》03章 存储管理(四)0 前文5 分页系统中的设计问题5.1 局部分配策略与全局分配策略5.2 负载控制5.3 页面大小X 往期文章0 前文《现代操作系统》03章 存储管理(一)《现代操作系统》03章 存储管理(二)《现代操作系统》03章 存储管理(三)5 分页系统中的设计问题5.1 局部分配策略与全局分配策略主要问题怎样在相互竞争的可运行进程之间分配内存局部置换算法(局部分配):缺页中断发生时仅在本进程内使用置换算法分配固定大小内存 一种是平均分配页框并留有一些页

2021-11-09 21:47:20 794

原创 《现代操作系统》03章 存储管理(三)

《现代操作系统》03章 存储管理(三)0 前文4 页面置换算法4.1 最优页面置换算法4.2 最近未使用页面置换法(NRU)4.3 先进先出页面置换算法(FIFO)4.4 第二机会页面置换算法4.5 时钟页面置换算法4.6 最近最少使用页面置换算法X 往期文章0 前文《现代操作系统》03章 存储管理(一)《现代操作系统》03章 存储管理(二)4 页面置换算法前面讲到,当访问的内容不在内存中时会产生缺页中断,在缺页中断的处理中要完成页面置换。当然并不是只有在虚拟内存管理中才需要页面置换算法,在高速缓

2021-10-19 21:45:10 139 1

原创 《现代操作系统》03章 存储管理(二)

《现代操作系统》03章 存储管理(二)0 前文3 虚拟内存3.1 简介3.2 分页3.2.1 page & page frame3.2.2 MMU的工作机制3.3 页表3.4 加速分页过程3.4.1 转换检测缓冲区(TLB)3.4.2 软件TLB管理3.5 针对大内存的页表3.5.1 多级页表X 往期文章0 前文《现代操作系统》03章 存储管理(一)3 虚拟内存为什么需要虚拟内存呢?这是软件发展带来的需求,软件功能越来越丰富导致体积越来越大,即使内存的空间也在不断增大但依然无法赶上软件的

2021-08-29 11:05:11 495 1

原创 《现代操作系统》03章 存储管理(一)

《现代操作系统》03章 存储管理(一)0 前导1 无存储器抽象2 地址空间2.1 何为地址空间2.2 交换技术2.3 空闲内存管理2.3.1 位图与存储管理2.3.1 使用链表的存储管理X 往期文章又是周末到来时,学习成果分享之!0 前导帕金森定律:不管存储器有多大,程序都可以把它填满(我的理解:即使你的手机存储空间有128G甚至256G,你也会把它装满或是出现运行卡顿,有些信息的使用频率过低但任然会占用存储资源)程序员的梦想:廉价、私有、无限、高速、永久(掉电不丢失)的存储器但愿程序员的梦想能由

2021-04-02 20:09:11 283 1

原创 《现代操作系统》02章 进程与线程(三)

《现代操作系统》02章 进程与线程(三)5 经典的IPC问题5.1 哲学家就餐问题5.2 读者-写者问题6 有关进程和线程的研究第二章做一个收尾,即将进入第三章的学习!!5 经典的IPC问题5.1 哲学家就餐问题单独写了一篇,戳链接哲学家不会吃饭了,我们快来帮帮他们(C语言、进程通信)5.2 读者-写者问题单独写了一篇,戳链接今天,我是数据库的BOS(读者-写者问题)6 有关进程和线程的研究对于进程和线程的研究已经较为成熟了,已经不是当下研究的重点,接下来我们要研究一些更新颖的课题。如果

2021-03-20 20:27:47 206 2

原创 今天,我是数据库的BOS(读者-写者问题)

读者-写者问题概述读者优先写者优先概述数据库的管理通常涉及到数据的读取与写入,为数据库访问建立模型,可以允许同时读,但凡有一个在写其他的都不能读取,那么该如何实现呢?注意:本文涉及到进程通信的信号量、临界区、互斥等知识,如有困惑请移步下方文章,目录中即可查找到相关概念的索引。《现代操作系统》02章 进程与线程(一)读者优先我们用一个场景来模拟:数据库大厅有一个柜台,柜台内仅有一位柜员,这个柜员只上过小学一年级,只会加减法,有读者来了就加一、有读者走了就减一,如果柜台空闲他随机叫醒一位等待使用柜

2021-03-12 22:45:00 322 1

原创 哲学家不会吃饭了,我们快来帮帮他们(C语言、进程通信)

哲学家不会吃饭了,我们快来帮帮他们皮老师课堂开课啦皮老师:同学们,今天我们来讨论讨论哲学家吃饭问题,哲学家吃法问题是由大名鼎鼎的Dijkstra提出的,大家看黑板,看看什么是哲学家吃饭问题。每个哲学家面前一碗面条子,每碗面间有一根筷子哲学家就会干两件事,吃饭、思考哲学家吃饭的时候要依次把左右两侧的筷子拿起来(不分次序)才能吃面吃完了把筷子放回去继续思考皮老师:如何才能不发生死锁呢?张三同学抢答:拿不到筷子就等着呗,等别旁边的吃完了不就拿到了么?皮老师:假如五个人都同

2021-03-03 18:06:07 319 2

原创 《现代操作系统》02章 进程与线程(二)

《现代操作系统》02章 进程与线程(二)4 调度4.1 调度介绍4.2 批处理系统调度4.3 交互式系统调度4.3.1 轮转调度4.3.2 优先级调度4.3.3 多级队列4.3.4 最短进程优先4.3.5 保证调度4.3.6 彩票调度4.3.7 公平分享调度4.4 实时系统中的调度4.5 策略和机制4.6 线程调度4 调度调度进程——需要决定多个就绪的进程或线程哪个可以运行调度算法——调度进程使用的算法4.1 调度介绍进程行为CPU运算——CPU密集型IO活动——IO密集型何时

2021-03-02 18:40:06 827 1

原创 《现代操作系统》02章 进程与线程(一)

《现代操作系统》02章 进程与线程(一)1 进程1.1 进程模型1.2 创建进程1.2.1 触发进程创1.2.2 创建过程1.3 进程终止1.3.1 触发进程终止1.3.2 注意1.4 进程层次结构1.5 进程状态与转换1 进程1.1 进程模型多道程序设计:(单核CPU)CPU在各进程间来回切换任意时刻只有一个进程在运行进程运行时将其内存中的逻辑PC放入硬件PC进程结束或暂停时将硬件PC存入逻辑PC每个进程执行其运算的速度不可确定,当再次运行时其运算速度也不可再现,进程编程不能对时序做确定

2021-02-10 23:38:51 1266 1

原创 《现代操作系统》01章 基本概念

《现代操作系统》01章 基本概念1 操作系统概念1.1 概述1.2 任务2 操作系统历史(简述)3 计算机硬件简介3.1 处理器3.1.1 执行过程3.1.2 寄存器3.1.3 其他的概念3.2 多线程、多核芯片3.2.1 多线程3.2.2 多核芯片3.3 存储器3.3.1 分层存储3.3.2 寄存器3.3.3 高速缓存3.3.4 主存3.3.5 磁盘3.3.6 磁带4 IO设备4.1 设备控制器4.2 IO设备调用方式5 总线6 启动6.1 **BIOS**(basic I/O system):6.2 启

2021-02-02 20:37:55 1816 1

原创 Python+OpenCV+imutils的简单图片处理(放缩、翻转、旋转、灰度RGB提取)

Python简单图像处理一、图像读取与保存需要的库读取保存二、简单地处理函数缩放绕中心旋转RGB分离、灰度提取翻转三、测试代码运行结果四、结语欢迎来到海小皮的CSDN博客,今天学习了python的简单图像处理,在这里分享给大家,话不多说,直接上代码,依然是注释超详细!一、图像读取与保存需要的库使用pip到镜像站安装即可import cv2 as cvimport imutils as imtimport numpy as np读取road是路径orf_name是文件名temp_ima

2021-01-04 23:33:06 1481 9

原创 python手写K-means实现二维聚类

欢迎来到海小皮的CSDN博客今天人工智能的实验,简单学习了K-means的二维聚类,在这里介绍给大家,注释非常详细哦!1、思路介绍这个方法理解起来不是特别的难,首先我来介绍一下基本思路,我以比较通俗易懂的比喻来讲解:(1)现在往地面上撒了一把豆子(随机散布),每个豆子有自己的二维坐标(两个维度的变量)(2)首先随机选K个豆子作为初始的代表人物(初始中心点),他们代表了各自的团体(聚类子集)(3)每个豆子都计算自己到各个代表人物间的距离,加入距离自己最近的代表人物的团队,得到初始聚类(4)计算每

2020-12-30 00:20:11 4206 11

空空如也

空空如也

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

TA关注的人

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