自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (1)
  • 收藏
  • 关注

原创 Linux系统编程学习--第6天信号以及管道

信号是进程间通信的一种方式1、为什么要进行通信?2、3、常见的信号4、信号处理方法signal当我们运行程序时按下ctrl+c会阻断程序运行,实际上是给cpu传递了一个2信号。我们可以将2信号的处理方式改成在终端上打印一句《按了一下ctrl+c》。

2024-01-22 18:50:45 355

原创 Linux系统编程学习--第5天多进程

什么是进程?程序被加载到内存中运行,系统中基本的执行单元。什么是程序?可执行的二进制代码文件。1、进程和程序之间的联系?具有一定独立功能的程序的一次运行活动,操作系统动态执行的单元,包含程序从调度到消亡的整个过程是动态的过程运行着的程序都是一个进程,系统本身也运行着许多管理系统资源和用户访问的程序windows任务管理器中就显示很多进程2、如何查看进程在终端输入ps -ef查看进程从左到右是。

2024-01-15 01:15:40 1166 1

原创 Linux系统编程学习--第4天文件属性和目录操作

linux的理念一切皆文件。文件属性结构体,这个结构体里面存储了文件的信息库函数1、stat提供文件名字,获取文件对应属性。通过linux指令ls可以查看文件的属性从左到右属性依次为1:文件类型,linux文件类型一共有七种,普通文件类型(-),目录文件(d),块设备文件(b),字符设备©,套接字文件(s),管道文件§,链接文件(l).我们查看的文件类型是-普通文件2:权限,拥有者、所属组、其它人的权限一共三组,rwx分别是读写执行3:链接到inode的数目4:拥有者。

2024-01-11 20:27:34 787 2

原创 Linux系统编程学习--第3天标准IO非缓冲区文件操作及时间编程

非缓冲的文件操作访问方式,每次对文件进行一次读写操作时,都需要使用读写系统调用来处理此操作,即需要执行一次系统调用,执行一次系统调用将涉及到CPU状态的切换,即从用户空间切换到内核空间,实现进程上下文的切换,这将损耗一定的CPU时间,频繁的磁盘访问对程序的执行效率造成很大的影响非缓冲区的文件操作就是每一次读写操作都要横跨内核层和应用层,没有缓冲区,实时性更高。接口函数1、open非缓冲区打开文件函数umask查看打开方式演示代码结果多出了一个名为2345的文件权限为0775。

2024-01-05 20:50:59 886 1

原创 Linux系统编程学习--第2天标准IO缓冲区文件操作

答:比如声卡,一堆进程要利用声卡发出声音,那不能都给他们分配一个资源指针,这时候利用句柄实际上也就是一个int值,引用了同一个硬件资源指针,句柄在不同进程中是不一样的,比如在第一个进程中句柄可能为1,在第二个进程中句柄可能为2.编译运行上述代码现象如下。比如键盘输入给cpu信息,我输一个字符告诉内核一次,太占用资源,那么就用缓冲区存起来你输入的信息,当达到一定条件时,再上传内核。在我之前的老师讲这个方法时只讲了一种很局限的用法,就是size给1、一个字节一个字节的读取,读取nmemb个。

2024-01-04 22:14:28 897 1

原创 C语言面试题--输入一行字符统计单词

代码分析:string是存储你输入字符串的缓冲区i是指向你string指针的偏移量num是单词的数目word是遇到单词结束符’ ‘的标志位c是取出string中的字符的存储位获得一个屏幕输入的字符串2)for(i=0;=’\0’;i++)依次取出string中的字符判断是否为单词结束符 ’ ’如果是的话就置位word当读取到下一个不是单词结束符时此时word为0,执行num++

2023-12-14 12:54:18 42 1

原创 C语言面试题--把一个单向链表反向

链表变化。

2023-12-13 22:29:58 38 1

原创 C语言面试题--双向链表在节点P后插入一个节点,删除一个节点P

问题描述先来了解一下双向链表的结构体,结构体中有指向下一个节点的指针成员next,既然是双向那就有指向上一个节点的指针成员prior,当然链表要存储数据data。一个个结构体组成数组通过指针链接构成双向链表。

2023-12-13 19:46:58 105 1

原创 STM32 SPI通信

SPI要用到四个管脚分别是使能管脚cs、时钟管脚sck、mosi管脚(主机输出从机输入)有时也叫SDO、miso管脚(主机输入从机输出管脚)又叫SDI;配置过程1、开启GPIOB的时钟、开启spi的时钟2、配置gpio口,cs通用推挽输出、sck和mosi服用推挽输出、miso浮空输入3、配置SPI4、使能spi//SPI2//1,开时钟//2,配置IO口//复用推挽//浮空输入//通用推挽输出//先拉高,避免误操作。

2023-09-25 23:20:06 130 1

原创 STM32F103基本定时器

基本定时器有两个TIM6和TIM7,各包含一个16位的自动装载计数器,可以从0计数到2^16-1.

2023-09-20 22:24:47 418 1

原创 STM32系统滴答定时器

SYSTick系统滴答定时器是Cortex-M处理器内部的一个小型定时器,它是最简单的一个定时器,SysTick是简单的向下计数的24位计数器,可以使用处理器时钟或外部参考时钟。以上信息可以得出(1)它是从大往小计数的(2)它可以从(2^24)-1计到0。

2023-09-19 22:16:33 487 1

原创 STM32外部中断EXTI的学习和使用

介绍了外部中断EXTI的配置和使用

2023-09-19 18:33:55 121 1

原创 STM32F103的DHT11(温湿度传感器模块)的配置和使用

(1)主机通过拉低IO口之后至少延迟18ms,然后拉高IO口与从机通信,这个过程我们站在32芯片单片机的角度来看,io口当然要配置成输出模式。(2)那么从机响应信号后给主机返回信号,信号到达主机,主机通过读取IO口高低电平状态来读取数据,这个过程当然IO口要配置成输入模式。上面一段话中所说的主机就是Stm32单片机,从机就是传感器内的一个8位单片机,传输模式是主机给从机发送一个信号,然后从机应答后返还给主机数据。*****先等待一个将总线拉低54us的信号,然后等待一个将总线拉高23us~27us的信号。

2023-09-18 22:30:50 6334

原创 STM32 串口通信USART1的配置和使用

看了上图我们思考一下管脚各自对应的属性,先看PA9(USART_TX串口1的发送管脚),(1)我们自然要选择GPIO_Pin_9这个参数了(2)输出速率我们选择最高速率(3)我们站在单片机的角度来看,发送管脚自然是输出模式了,再有我们需要输出高电平1(3.3V)、低电平0(0V),那么开漏输出模式自然无法满足,因为开漏是无法给出高电平的,具体可以搜索一下CMOS管的开漏,那么为什么要复用呢?这里我直接判断寄存器的TXD位是否为0,是0代表还有之前的数据没有移入发送移位寄存器,在此阻塞。

2023-09-16 20:26:24 4851

Linux系统编程学习-第7天共享内存、消息队列、信号量集

Linux系统编程学习-第7天共享内存、消息队列、信号量集

2024-02-15

Linux系统编程学习-第5天多进程

Linux系统编程学习-第5天多进程

2024-01-15

Linux系统编程学习-第2天标准IO缓冲区文件操作

Linux系统编程学习-第2天标准IO缓冲区文件操作

2024-01-03

Linux系统编程学习-第1天

Linux系统编程学习-第1天

2024-01-03

Linux驱动学习第12天-输入子系统+LCD屏幕开发

Linux驱动学习第12天-输入子系统+LCD屏幕开发

2023-12-03

Linux驱动学习第11天-平台设备总线

Linux驱动学习第11天-平台设备总线

2023-12-03

Linux驱动学习第03天-内核以及文件系统制作

Linux驱动学习第03天-内核以及文件系统制作

2023-11-25

STM32F103的DHT11(温湿度传感器模块)的配置和使用

DHT11资料

2023-09-18

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

TA关注的人

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