- 博客(763)
- 资源 (45)
- 收藏
- 关注
原创 关于我和我的的故事
1 关于我①我是谁BruceOu,男,90后,出生于重庆市的一个小县城的一个小镇,刚研究生毕业,目前是一名系统工程师,从事芯片研究开发工作。至于大家以后怎么称呼我,我给大家讲讲我的各种称呼,有的叫我欧工,有的叫我龙哥,有的叫我欧老师,也有叫我名字的,这些我都不在意,叫着顺口就行。②我的经历我出生普通,本科普通,研究生普通,我不是什么技术大佬,我只是一个普通人,普通得不能再普通了。小时候家庭不好,到处颠沛流离,不过从小到大,我的学业不曾让父母操过心,现在回想起这二十几年的求学之路,不禁感慨万千。
2020-11-14 19:53:13
2689
4
原创 Linux驱动开发博文导航
Linux驱动开发我已经酝酿很久了,有网友催我尽快有更新,博主今天就把以前的博文整理一下,另外我也会不断更新,希望对感兴趣的朋友有所帮助,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。Linux相关的网站U-BootLinux内核busyboxLinux驱动开发第1章 驱动内核模块开发第2章 字符设备驱动结构第3章 字符设备驱动开发(A)第...
2019-09-19 16:49:45
1606
原创 Linux系统移植博文导航
自博主更新该专栏也很久了,博主今天就把以前的博文整理一下,希望对感兴趣的朋友有所帮助,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。Linux相关的网站 U-Boot Linux内核 busyboxLinux系统移植 Linux系统移植-前言 第1章 环境搭建(Exynos4412+U-boot2013.1) 第1章 环境...
2018-08-22 21:17:34
1999
1
原创 OpenCV 开发笔记博文导航
自博主更新该专栏也很久了,博主今天就把以前的博文整理一下,希望对感兴趣的朋友有所帮助,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。OpenCV相关的网站 OpenCV官网 OpenCV参考文档 OpenCV中文论坛 OpenCV源码-Github Learn OpenCV官网OpenCV开发笔记第一部分 环境搭建 ...
2018-08-19 20:03:08
1970
原创 ZigBee开发笔记博文导航
自博主更新该专栏也很久了,今天博主就给出关于ZigBee开发的一个导航,为的是读者朋友能更好找到自己所感兴趣的那一块,当然博主以后对ZigBee有新的发现和想法也会在第一时间发表在CSDN上,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。OpenWrt相关的网站 ZigBee官网 ZigBee 协议栈ZigBee开发笔记第一部分 入门篇...
2018-07-14 21:02:48
8920
7
原创 博客迁移及联系方式
各位朋友,大家好,感谢大家的厚爱,本人已经将博客迁移,通过以下方式都可访问我的最新博客动态:我的个人博客 CSDN博客欢迎大家访问,留言!...
2018-06-16 08:45:55
1667
原创 OpenWrt开发指南博文导航
自博主更新该专栏也很久了,今天博主就给出关于OpenWrt开发的一个导航,为的是读者朋友能更好找到自己所感兴趣的那一块,当然博主以后对OpenWrt有新的发现和想法也会在第一时间发表在CSDN上,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。OpenWrt相关的网站 OpenWrt官网:包含源码下载和一些参考文档。 中文应用技术网:关于OpenWrt的中...
2017-12-22 13:18:55
8243
3
原创 Git和GitHub资料汇总
今天博主将带给大家的一系列关于Git和GitHub的资料,直接给资料咯!Git和GitHub的相关网站 Git官网 GitHub官网 GitHub Pages:搭建静态网站、博客 Git和GitHub的学习资料 Git-Book:Git 官方教程中文版 Git教程:廖雪峰老师写的入门教程,建议入手 Git权威指南:很经典也很全面,学...
2017-12-11 15:54:38
1941
1
原创 《嵌入式 – GD32开发实战指南(RISC-V版本)》第10章 串口通信
USART(Universal Synchronous Asynchronous Receiver and Transmitter,通用同步-异步接收发射器)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。
2025-10-02 19:26:30
97
原创 《嵌入式 – GD32开发实战指南(RISC-V版本)》第7章 定时器
系统定时器一般用来提供“心跳”作用,而GD32定时器最基本功能也是定时,可以设置不同时间长度的定时。定时器除了最基本的定时功能外,定时器与GPIO有挂钩使得它可以发挥强大的作用,比如可以输出不同频率、不同占空比的方波信号、PWM信号,同时做为输入捕获功能时,可以测量脉冲宽度、实现电容按键检测等等。GD32有三类定时器,基本定时器就是单纯的定时计数器,通用定时器多了四个通道,相对应的增加了功能,高级定时器具有基本,通用定时器的所有的功能,并且添加了其他功能。定时器的对比特性如下表所示。
2025-10-02 19:00:03
288
原创 《嵌入式 – GD32开发实战指南(RISC-V版本)》第5章 跳动的心脏-内核TIMER
开发板:GD32VF103V-EVALRISC-V的内核中包含System Timer (SysTick)了,当然也可以叫做Systick,只要是RISC-V系列的MCU就会有Systick,只是有些名字不同罢了, bumblebee内核数据手册叫它计时器单元(TIMER),为了方便和其他外部timer对比,笔者还是叫它SysTick。下面详细分析。
2025-10-02 15:51:16
169
原创 《嵌入式 – GD32开发实战指南(RISC-V版本)》第4章 GD32VF103启动流程详解
开发板:GD32VF103V-EVAL对于我们常用的桌面操作系统而言,我们在开发应用时,并不关心系统的初始化,绝大多数应用程序是在操作系统运行后才开始运行的,操作系统已经提供了一个合适的运行环境,然而对于嵌入式设备而言,在设备上电后,所有的一切都需要由开发者来设置,这里处理器是没有堆栈,没有中断,更没有外围设备,这些工作是需要软件来指定的,而且不同的CPU类型、不同大小的内存和不同种类的外设,其初始化工作都是不同的。
2025-10-02 15:39:25
197
原创 《嵌入式 – GD32开发实战指南(RISC-V版本)》第3章 GPIO流水灯的前世今生
前面一章一个大概讲解GPIO的配置过程和核心的寄存器,当然啦,关于GPIO的寄存器远不止我上一章列出来的,还有很多,具体请参看《GD32VF103_User_Manual》中GPIO相关的内容吧。根据前面实现的GPIO流水灯,本文将其归纳如下:要想控制LED亮灭,就需要做以上三件事:使能时钟,配置GPIO参数,最后循环控制GPIO的高低电平就能实现流水灯的效果,GPIO的寄存器这里就不说了,更多详细的寄存器描述看官方手册就行,下面先来看看GD32的时钟。
2025-10-01 18:39:44
116
原创 《嵌入式 - 嵌入式大杂烩》ARM Cortex-M寄存器详解
ARM Cortex-M提供了 16 个 32 位的通用寄存器(R0 - R15),如下图所示。前15个(R0 - R14)可以用作通用的数据存储,R15 是程序计数器 PC,用来保存将要执行的指令。除了通用寄存器,还有一些特殊功能寄存器。特殊功能寄存器有预定义的功能,而且必须通过专用的指令来访问。
2024-08-06 23:04:05
1483
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第2部分 外设篇 - 第3章 温度传感器DS18B20
1.DS18B20硬件接口相对简单,但单总线协议对软件要求较高,因此必须严格按照时序要求来设计程序,否则无法正确读出温度值。2.在实际应用的应用中的线缆长度应有所限制,在长距离信号传输过程中要充分考虑总线分布电容和阻抗匹配。3.在总线上一定要接上拉电阻,不然DS18B20的供电不足,会导致数据不准确。如果没有接上拉电阻,把设备的电源接到5V左右也能给设备充足的电能。欢迎访问我的网站BruceOu的哔哩哔哩BruceOu的主页BruceOu的博客BruceOu的CSDN博客BruceOu的简书。
2023-11-19 23:00:27
1366
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第2部分 外设篇 - 第2章 温湿度传感器AHT10
AHT10,新一代温湿度传感器在尺寸与智能方面建立了新的标准:它嵌入了适于回流焊的双列扁平无引脚SMD封装,底面4 x 5mm ,高度1.6mm。传感器输出经过标定的数字信号,标准I2C格式。AHT10 配有一个全新设计的ASIC专用芯片、一个经过改进的MEMS半导体电容式湿度传感元件和一个标准的片上温度传感元件,其性能已经大大提升甚至超出了前一代传感器的可靠性水平,新一代温湿度传感器,经过改进使其在恶劣环境下的性能更稳定。
2023-11-05 11:24:22
761
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第2部分 外设篇 - 第1章 温湿度传感器DHT11
DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。DHT11传感器包括,并与一个高性能 8 位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个 DHT11 传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在 OTP 内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。
2023-09-29 17:40:38
901
原创 《嵌入式 - 嵌入式大杂烩》SVC和PendSV异常详解
在讨论PendSV和SVC异常前,需要先了解Cortex-M的模式和两个特权等级。Figure 1 1 操作模式和特权等级两种模式为handler模式和线程(thread)模式,这两种模式是为了区别正在执行代码的类型;handler模式为异常处理例程的代码;线程模式为普通应用程序的代码。两种特权级包括特权级和用户级,两种特权级别是对存储器访问提供的一种保护机制,然后用户代码不能访问特定的存储区域;在特权级下,程序可以访问所有范围的存储器(如果有MPU,还要在MPU的禁地之外),并且能够执行所有指令;
2023-08-12 17:40:47
1102
原创 《嵌入式 - 工具》J-link读写MCU内部Flash
J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等内核芯片的仿真,是学习开发ARM最好最实用的开发工具。
2023-07-23 11:00:16
8072
3
原创 《C语言杂记》C语言内存泄露分析与检测
在堆上分配的内存,没有及时释放掉,以便后面其它地方可以重用。在C/C++中,内存管理器不会帮你自动回收不再使用的内存。如果你忘了释放不再使用的内存,这些内存就不能被重用,就造成了所谓的内存泄露。一两处内存泄露通常不至于让程序崩溃,也不会出现逻辑上的错误,当然了,量变会产生质变,一旦内存泄露过多以致于耗尽内存,后续内存分配将会失败,程序可能因此而崩溃。内存访问越界,使用的内存超出了向系统申请了一块内存,覆盖该空间之后的一段存储区域,导致系统异常。
2023-07-22 22:53:58
1470
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第22章 SPI
SPI,是Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。是一种高速全双工的通信总线,它由摩托罗拉公司提出,当前最新的为 V04.01—2004 版。它被广泛地使用在ADC、LCD 等设备与 MCU 间通信的场合。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。
2023-02-09 22:41:41
4768
1
原创 《编码 - 代码分析》代码结构分析
官网地址SourceMonitor 是 Campwood Software LLC 拥有版权的自由软件,非商业用途可免费使用。SourceMonitor的主要功能是对代码的一个分析和度量。即使用SourceMonitor软件我们可以清晰的看到代码的总行数,注释比例,语句数以及类的个数和函数的个数。SourceMonitor 有以下特点: 支持对 C、 C++、 C#、 VB.NET、 java、 Delphi、 Visual Basic 以及 HTML 在内的多种语言的源代码的分析;
2023-01-05 21:02:03
2866
原创 《编码 - 代码分析》代码覆盖检测
gcov是一个测试代码覆盖率的程序,正确地使用它搭配 gcc 可以分析、帮助你将代码写得更高效。帮助你优化程序。类似于一个profiling tool,使用 gcov 或者 gprof,可以收集到一些基础的性能统计数据。比如: 每一行代码执行的频度 每个代码文件中实际被执行到的行数 每一个代码块执行使用的时间gcov创建一个logfile叫做 源文件名称.gcxx (这里的源文件名称指的是.c或者.cc文件的文件名),表示的是这个 源文件.c 中每一行所被执行的次数。
2022-12-27 22:29:47
4479
原创 《嵌入式 - 深入剖析STM32》STM32 启动流程详解(GCC)
对于我们常用的桌面操作系统而言,我们在开发应用时,并不关心系统的初始化,绝大多数应用程序是在操作系统运行后才开始运行的,操作系统已经提供了一个合适的运行环境,然而对于嵌入式设备而言,在设备上电后,所有的一切都需要由开发者来设置,这里处理器是没有堆栈,没有中断,更没有外围设备,这些工作是需要软件来指定的,而且不同的CPU类型、不同大小的内存和不同种类的外设,其初始化工作都是不同的。本文将以STMF103(基于Cortex-M3)为例进行讲解。
2022-11-24 23:57:43
3897
原创 《嵌入式 - 嵌入式大杂烩》CoreMark性能测试
CoreMark是由EEMBC(Embedded Microprocessor Benchmark Consortium)的Shay Gla-On于2009年提出的一项基准测试程序,CoreMark的主要目标是简化操作,并提供一套测试单核处理器核心的方法。测试标准是在配置参数的组合下单位时间内运行的CoreMark程序次数(单位:CoreMark/MHz),该数字值越大则说明测试的性能越好。
2022-11-06 12:54:09
2977
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第21章 I2C
I2C总线是PHLIPS公司推出的一种双线式半双工串行总线,是具备多主机系统所需的总线裁决和高低速器件同步功能的高性能串行总线。用于连接微控器及外围设备。I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。 物理层1)它只使用两条总线线路 :一条双向串行数据线(SDA),一条串行时钟线(SCL)。见下图。2)每个连接到总线的设备都有一个独立的地址,主机可以利用这个地址进行不同设备之间的访问。3)多主机同时使用总线时,为了防止数据冲突,会利用仲裁方式决定由哪个设备占用总线。
2022-09-17 23:27:04
3475
2
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第17章 看门狗
开发板:GD32F207I-EVALGD32 有两个看门狗,一个是独立看门狗,另外一个是窗口看门狗,独立看门狗号称宠物狗,窗口看门狗号称警犬,本章我们主要分析这两只看门狗的功能框图和它的应用。
2022-08-24 10:28:31
4471
2
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第16章 RTC
GD32 的 RTC 外设,实质是一个掉电后还继续运行的定时器。从定时器的角度来说,相对于通用定时器 TIMER 外设,它十分简单,只有很纯粹的计时功能(当然,可以触发中断);但从掉电还继续运行的角度来说,它却是 GD32中唯一一个具有如此强大功能的外设。所以 RTC 外设的复杂之处并不在于它的定时功能,而在于它掉电还继续运行的特性。以上所说的掉电,是指主电源 VDD断开的情况,为了 RTC 外设掉电继续运行,必须给GD32芯片通过 VBAT引脚接上锂电池。......
2022-08-16 09:21:29
4497
3
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第13章 DAC
数字/模拟转换模块(DAC)是12位数字输入,电压输出的数字/模拟转换器。DAC可以配置为8位或12位模式,也可以与DMA控制器配合使用。DAC工作在12位模式时,数据可以设置成左对齐或右对齐。DAC模块有2个输出通道,每个通道都有单独的转换器。在双DAC模式下,2个通道可以独立地进行转换,也可以同时进行转换并同步地更新2个通道的输出。DAC可以通过引脚输入参考电压VREF+以获得更精确的转换结果。...
2022-07-25 07:44:51
3119
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第12章 ADC
MDKKeil5.30开发板MCUGD32F207IK。
2022-07-17 22:06:39
6689
2
原创 【嵌入式 – GD32开发实战指南(ARM版本)】第1部分 基础篇 - 第11章 CPU的高级代理-DMA
开发环境:MDK:Keil 5.30开发板:GD32F207I-EVALMCU:GD32F207IKDMA (Direct Memory Access,直接存储器存取),是一种可以大大减轻 CPU 工作量的数据存取方式,DMA传输将数据从一个地址空间复制到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输,因而被广泛地使用。早在 8086 的应用中就已经有 Intel 的 8237 这种典型的 DMA 控制器,而 GD32的 DMA 则是以类似外设的形式添加到 Cortex 内
2022-07-09 23:10:57
3035
第19章 驱动开发之LED驱动程序-附件
2017-12-11
Learning OpenCV 3 英文版
2017-12-08
SSHSeccureShellClient客户端
2017-12-01
第25章 配置OpenWrt支持网络摄像头-附件
2017-12-17
win32diskimager-1.0.0软件
2017-10-19
NetBox软件
2017-10-19
Xshell 软件(免费版)测试可用
2017-10-19
[GPU高性能编程CUDA实战].(桑德斯).聂雪军等.扫描版
2017-10-28
Keil使用Jlink ,dll不兼容的更新库
2020-12-26
4G拨号(移远EC25)Openwrt+RT5350
2018-09-05
第27章 DS18B20温度传感器-附件:ds18b20驱动程序和应用程序
2017-12-17
《A fast learning algorithm for deep belief nets》原文
2018-03-06
手写数字识别数据集
2018-09-12
EasyWebServer网站服务器
2019-04-06
Nearest Neighbor Pattern Classification-1967
2018-09-11
SerialCommunicate.rar
2020-06-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅