自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 STM32调试TIC12400笔记

工作中需要用到,但是有关这个芯片的参考资料好少,自己写一下调试过程,持续更新中,还没调完。用的是正点原子的mini板,芯片是stm32f103RCT,需要知道spi的相关知识,先配置spi,用cubemx,用硬件spi,下面会细说为什么用硬件,不用模拟。

2024-09-19 15:10:25 639

原创 STM32CubeMX IIC实现六轴姿态陀螺仪模块JY61P

看手册可以知道,f1系列的板子留给IIC的是 PB6 PB7,但是我手里的mini板这两个引脚是没有上拉电阻的,所以用PC11 PC12,正点的板子给这两个引脚加了上拉电阻,CubeMX里只需要给这两个引脚选择开漏输出即可。最近需要用到陀螺仪这个模块,选取的是JY61P这个模块,单片机是正点原子f103的mini板,查资料的过程中发现用串口的代码很多,用iic的几乎没有,而我又需要iic,所以写移植iic代码的笔记。就来到了对应的教程界面,下载链接下的对应例程代码,我用的是STM32F1的。

2024-07-11 16:14:15 1579

原创 STM32Cubemx配置定时器PWM

首先要知道定时器的原理,我用的是通用定时器,简单说一下,就是把握两个寄存器的值,自动重载寄存器ARR和比较寄存器CCR,ARR决定PWM方波的频率,CCR决定占空比,方波什么时候翻转。要是原理一点不懂,建议先看看课。

2024-06-03 14:52:28 432

原创 stm32cubemx控制zigbee

先配置时钟,选择外部时钟源配置时钟树,始终可以根据需要配置,频率不固定,我就按最大配置了SYS配置如果需要使用中断,则勾选中断,这里发送端不用中断,接收端用,接收端勾选,发送端不用选接下来就是给工程命名,IDE要选MDK记得勾选分文件编程最后选择generate code即可生成工程文件在MDK-ARM文件夹下找到工程文件打开,在上面写文件名那一步,有文件的路径,去里面找MDK-ARM文件夹双击MDK-ARM文件夹进入 ,找到工程文件打开就是生成好的代码。

2024-05-28 14:28:01 1376 5

原创 linux驱动开发(三)

在过去的arm-linux内核源码树中arch/arm/plat-xxx和arch/arm/mach-xxx 等目录下边充斥着大量的垃圾代码,相当多数的代码只是在描述板级细节信息,而这些板级细节信息对于内核来说都是垃圾代码,比如板上的 platform_device、 resource、 i2c_board_info、 spi_board_info 以及各种硬件的 platform_data.

2023-09-21 14:54:11 250

原创 实验7 - IIC/I2C接口实验

1. I2C总线是PHLIPS公司在八十年代初推出的一种"同步串行半双工"总线,主要用于连接整体电路。SOC和各自传感器外设之间的通信,一般使用的都是IIC或者SPI两个设备之间的通信,一般使用UART,485,CAN,USB2. I2C总线为"两线制",只有两根双向信号线。一根是"数据线SDA",另一根是"时钟线SCL"。3. I2C硬件结构简单,接口连接方便,成本较低。因此在各个领域得到了广泛的应用。4. I2C总线的通信的速度一般为100k-400kbps之间。

2023-09-03 10:30:56 534

原创 Linux驱动开发(二)

ioctl完成,数据的读写通过read/write函数完成。例如在编写串口启动的时。linux内核开发者想要将设备的控制和数据读写分开操作,设备的控制通过。候,串口需要设置波特率,数据位,停止位,校验位等信息通过ioctl设置。先看myled.c里对驱动的详解,按照流程梳理思路,流程已经标好号了。完成,通过read/write函数完成数据的收发工作。h文件里的东西,随用随定义,根据流程定义使用的东西。

2023-08-03 22:04:28 252

原创 linux驱动开发(一)

因为内核模块都是运行在3-4G的内核空间中,假如demoA模块中有一个add,需要将add函数的符号表导出,在编译demoB模块的时候使用这个符号表,此时在运行demoB模块的时候就可以调用demoA模块中的add函数。

2023-08-03 16:26:20 751

原创 实验五 按键中断

​ GICD层全局中断控制使能寄存器​ GICC层全局中断控制使能寄存器。

2023-07-30 22:10:03 216

原创 实验四 - PWM实验

up:递增计数器 down :递减计数器 up/down:递增递减计数器。

2023-07-27 17:47:36 444

原创 实验三 UART串口实验

串口接口实物图及串口引脚的功能说明:串口常用的硬件连接主要使用3根线:RXD, TXD, GNDRXD : 接收数据线TXD : 发送数据线GND : 共地。

2023-07-25 20:34:56 1527

原创 实验二 按键轮询检测实验

按下后,电压为0,低电平。分析电路可知,当按键没按下时,key1处电压为3.3V,gaodianping。禁用上下拉电阻(按键自带上拉电阻)在main里进行判断判断,哪个按键按下,哪个灯亮。key的初始化key_init(){将按键的状态返回出去。

2023-07-24 13:16:12 342

原创 ARM架构

灰色表示不存在1. 每个小方块是一个寄存器,32位处理器,每个寄存器都是32位的。2. 寄存器是没有地址的,通过寄存器的编号进行访问,R0-R15,cpsr,spsr寄存器为什么没有地址?编译生成32位的机器码32位机器码中需要存储add的信息,r0,r1,r2(如果用地址的话,地址就占32位,r0,r1,r2每个寄存器都有32个地址,32位的机器码存不下,溢出了,所以不用地址指向寄存器)的信息。add被编译生成4位机器码r0,r1,r2也会被编译生成4位机器码。

2023-07-23 23:10:19 4775

原创 网络编程(二)

服务器模型分为两种:循环服务器 并发服务器循环服务器:同一时刻只能处理一个客户端的请求并发服务器:同一时刻可以处理多个客户端的请求TCP的服务器默认的就是一个循环服务器,因为他有两个阻塞的函数accept和recv之间相互影响UDP服务器默认的就是一个并发服务器,因为只有一个阻塞的函数 recvfrom。

2023-07-23 23:09:31 129

原创 实验1 : GPIO接口实验

按照不同功能分成不同的文件led.c led.h gpio.c gpio.h main.c。在根据原理图找到LED1,LED2,LED3连接的GPIO引脚,后面配置的时候就配置相应的组。代码要有可读性,为了增加可读性,以及方便使用,采取封装库的方式,使调用者一看便知在干嘛。单片机的代码一般都分文件编程,上面的方式不常用,下面是自己封装固件库的方式。灯的网络标识,LED1。

2023-07-23 22:46:15 1495

原创 网络编程(一)

协议:通信的双方的约定的好的,如何发送数据以及受到数据后如何进行解析的一个规则。

2023-06-08 23:54:49 343

原创 C++笔记(三)

面向对象的三大特征(封装、继承、多态)其中,描述类与类之间的关系的,就是继承。

2023-05-09 18:04:27 110

原创 C++笔记(二)

是由结构体演化而来的。

2023-05-09 13:11:36 118

原创 IO进程(二)

PID就是操作系统给进程分配的编号,他是进程的唯一的标识。linux系统中,PID的值是一个大于0的值。linux系统中,创建的进程的个数是有限的(可以使用下面的命令查看)系统中正在运行的进程,可以在 /proc 目录下查看到(以数字命名的每个编号都是一个进程)

2023-05-01 18:30:20 409

原创 C++笔记

1.命名空间的使用方式1:std::cout;2.命名空间的使用方式3:3.命名空间的使用方式3:4.当名字出现冲突的时候,需要使用命名空间名::来区分5.没有被任何命名空间包住的名字,都在匿名空间 使用时::名字即可6.当命名空间中的名字和局部变量名冲突时,采用“局部优先”原则7.命名空间可以嵌套使用--不常用& 定义引用时,起到标识的作用,标识定义的是一个引用。在C++中,&有三个作用:1.定义引用时,起到标识的作用,标识定义的是一个引用。

2023-04-27 21:51:53 217

原创 IO进程笔记(一)

IO_FILE是一个结构体,当使用 fopen 函数打开一个文件的时候,就会产生一个FILE结构体,该结构体中保存着所有和当前文件相关的信息,后面再对文件进行IO操作的时候,使用的就是这个结构体。函数原型:size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);函数原型:size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

2023-04-23 21:04:07 615

原创 数据结构(一)

逻辑结构:线性,一对一存储结构:链式存储,在内存中不一定连续链表中的每个元素都分为 :数据域和指针域,数据域存放数据,指针域指向下一个节点链表中的元素也叫做节点,单向链表都有一个头指针和头节点,头指针指向头节点,头节点中的数据域不存放有效数据。

2023-04-09 22:28:23 108

原创 linux笔记二

linux笔记2

2023-03-27 20:09:54 60

原创 linux笔记一

linux学习笔记

2023-03-21 21:14:27 163

原创 C查漏补缺

四色字体是我没记住的,黄色是标注,需要知道的,红色是重点

2023-03-03 21:19:07 340

原创 笔记(七)IIC

IIC部分

2023-02-14 15:06:05 297

原创 笔记(六)RCC,EXTI,SysTick

RCC部分

2023-01-24 15:44:50 793

原创 STM32笔记(五)按键、启动文件

20、21、22

2023-01-15 18:20:32 811

原创 常用存储器

存储器介绍

2023-01-12 19:11:34 123

原创 DMA部分

40-42

2023-01-06 19:54:17 1081

原创 stm32串口UASART

串口部分笔记

2022-12-10 20:32:26 1271

原创 真·入门笔记(四)p16、17、18、19

p16、17、18、19

2022-12-07 09:19:42 802

原创 C51基础知识

郭天祥十天学会单片机笔记,这个笔记只记了我有疑问的地方,可读性不高,不如32的笔记记的详细

2022-12-02 08:29:47 1253

原创 学习笔记(三)

p12 p13 p14 p15

2022-11-14 21:56:32 1232

原创 stm32真·入门笔记(二)

对应视频P7,P8,P9

2022-11-04 13:51:02 1128

原创 stm32初学笔记(一)真·入门笔记

最近在学习stm32,看的是野火的,b站就有视频,此博客记录我在学习中的重点与困惑

2022-11-03 23:17:49 2268 3

zigbee程序源代码

zigbee程序源代码

2024-06-25

空空如也

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

TA关注的人

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