- 博客(748)
- 资源 (45)
- 收藏
- 关注

原创 关于我和我的的故事
1 关于我①我是谁BruceOu,男,90后,出生于重庆市的一个小县城的一个小镇,刚研究生毕业,目前是一名系统工程师,从事芯片研究开发工作。至于大家以后怎么称呼我,我给大家讲讲我的各种称呼,有的叫我欧工,有的叫我龙哥,有的叫我欧老师,也有叫我名字的,这些我都不在意,叫着顺口就行。②我的经历我出生普通,本科普通,研究生普通,我不是什么技术大佬,我只是一个普通人,普通得不能再普通了。小时候家庭不好,到处颠沛流离,不过从小到大,我的学业不曾让父母操过心,现在回想起这二十几年的求学之路,不禁感慨万千。
2020-11-14 19:53:13
1809
4

原创 Linux驱动开发博文导航
Linux驱动开发我已经酝酿很久了,有网友催我尽快有更新,博主今天就把以前的博文整理一下,另外我也会不断更新,希望对感兴趣的朋友有所帮助,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。Linux相关的网站U-BootLinux内核busyboxLinux驱动开发第1章 驱动内核模块开发第2章 字符设备驱动结构第3章 字符设备驱动开发(A)第...
2019-09-19 16:49:45
1144

原创 Linux系统移植博文导航
自博主更新该专栏也很久了,博主今天就把以前的博文整理一下,希望对感兴趣的朋友有所帮助,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。Linux相关的网站 U-Boot Linux内核 busyboxLinux系统移植 Linux系统移植-前言 第1章 环境搭建(Exynos4412+U-boot2013.1) 第1章 环境...
2018-08-22 21:17:34
1497
1

原创 OpenCV 开发笔记博文导航
自博主更新该专栏也很久了,博主今天就把以前的博文整理一下,希望对感兴趣的朋友有所帮助,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。OpenCV相关的网站 OpenCV官网 OpenCV参考文档 OpenCV中文论坛 OpenCV源码-Github Learn OpenCV官网OpenCV开发笔记第一部分 环境搭建 ...
2018-08-19 20:03:08
1422

原创 ZigBee开发笔记博文导航
自博主更新该专栏也很久了,今天博主就给出关于ZigBee开发的一个导航,为的是读者朋友能更好找到自己所感兴趣的那一块,当然博主以后对ZigBee有新的发现和想法也会在第一时间发表在CSDN上,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。OpenWrt相关的网站 ZigBee官网 ZigBee 协议栈ZigBee开发笔记第一部分 入门篇...
2018-07-14 21:02:48
7786
7

原创 博客迁移及联系方式
各位朋友,大家好,感谢大家的厚爱,本人已经将博客迁移,通过以下方式都可访问我的最新博客动态:我的个人博客 CSDN博客欢迎大家访问,留言!...
2018-06-16 08:45:55
1243

原创 OpenWrt开发指南博文导航
自博主更新该专栏也很久了,今天博主就给出关于OpenWrt开发的一个导航,为的是读者朋友能更好找到自己所感兴趣的那一块,当然博主以后对OpenWrt有新的发现和想法也会在第一时间发表在CSDN上,在此感谢CSDN这个平台给出了这个一个交流的机会,也感谢大家的支持。OpenWrt相关的网站 OpenWrt官网:包含源码下载和一些参考文档。 中文应用技术网:关于OpenWrt的中...
2017-12-22 13:18:55
7182
2

原创 Git和GitHub资料汇总
今天博主将带给大家的一系列关于Git和GitHub的资料,直接给资料咯!Git和GitHub的相关网站 Git官网 GitHub官网 GitHub Pages:搭建静态网站、博客 Git和GitHub的学习资料 Git-Book:Git 官方教程中文版 Git教程:廖雪峰老师写的入门教程,建议入手 Git权威指南:很经典也很全面,学...
2017-12-11 15:54:38
1522
1
原创 《嵌入式 – GD32开发实战指南》第22章 SPI
SPI,是Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。是一种高速全双工的通信总线,它由摩托罗拉公司提出,当前最新的为 V04.01—2004 版。它被广泛地使用在ADC、LCD 等设备与 MCU 间通信的场合。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。
2023-02-09 22:41:41
3085
2
原创 《编码 - 代码分析》代码结构分析
官网地址SourceMonitor 是 Campwood Software LLC 拥有版权的自由软件,非商业用途可免费使用。SourceMonitor的主要功能是对代码的一个分析和度量。即使用SourceMonitor软件我们可以清晰的看到代码的总行数,注释比例,语句数以及类的个数和函数的个数。SourceMonitor 有以下特点: 支持对 C、 C++、 C#、 VB.NET、 java、 Delphi、 Visual Basic 以及 HTML 在内的多种语言的源代码的分析;
2023-01-05 21:02:03
1273
原创 《编码 - 代码分析》代码覆盖检测
gcov是一个测试代码覆盖率的程序,正确地使用它搭配 gcc 可以分析、帮助你将代码写得更高效。帮助你优化程序。类似于一个profiling tool,使用 gcov 或者 gprof,可以收集到一些基础的性能统计数据。比如: 每一行代码执行的频度 每个代码文件中实际被执行到的行数 每一个代码块执行使用的时间gcov创建一个logfile叫做 源文件名称.gcxx (这里的源文件名称指的是.c或者.cc文件的文件名),表示的是这个 源文件.c 中每一行所被执行的次数。
2022-12-27 22:29:47
3024
原创 《嵌入式 - 深入剖析STM32》STM32 启动流程详解(GCC)
对于我们常用的桌面操作系统而言,我们在开发应用时,并不关心系统的初始化,绝大多数应用程序是在操作系统运行后才开始运行的,操作系统已经提供了一个合适的运行环境,然而对于嵌入式设备而言,在设备上电后,所有的一切都需要由开发者来设置,这里处理器是没有堆栈,没有中断,更没有外围设备,这些工作是需要软件来指定的,而且不同的CPU类型、不同大小的内存和不同种类的外设,其初始化工作都是不同的。本文将以STMF103(基于Cortex-M3)为例进行讲解。
2022-11-24 23:57:43
1843
原创 《嵌入式 - 嵌入式大杂烩》CoreMark性能测试
CoreMark是由EEMBC(Embedded Microprocessor Benchmark Consortium)的Shay Gla-On于2009年提出的一项基准测试程序,CoreMark的主要目标是简化操作,并提供一套测试单核处理器核心的方法。测试标准是在配置参数的组合下单位时间内运行的CoreMark程序次数(单位:CoreMark/MHz),该数字值越大则说明测试的性能越好。
2022-11-06 12:54:09
1421
原创 《嵌入式 – GD32开发实战指南》第21章 I2C
I2C总线是PHLIPS公司推出的一种双线式半双工串行总线,是具备多主机系统所需的总线裁决和高低速器件同步功能的高性能串行总线。用于连接微控器及外围设备。I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。 物理层1)它只使用两条总线线路 :一条双向串行数据线(SDA),一条串行时钟线(SCL)。见下图。2)每个连接到总线的设备都有一个独立的地址,主机可以利用这个地址进行不同设备之间的访问。3)多主机同时使用总线时,为了防止数据冲突,会利用仲裁方式决定由哪个设备占用总线。
2022-09-17 23:27:04
1977
2
原创 《嵌入式 – GD32开发实战指南》第17章 看门狗
开发板:GD32F207I-EVALGD32 有两个看门狗,一个是独立看门狗,另外一个是窗口看门狗,独立看门狗号称宠物狗,窗口看门狗号称警犬,本章我们主要分析这两只看门狗的功能框图和它的应用。
2022-08-24 10:28:31
2604
2
原创 《嵌入式 – GD32开发实战指南》第16章 RTC
GD32 的 RTC 外设,实质是一个掉电后还继续运行的定时器。从定时器的角度来说,相对于通用定时器 TIMER 外设,它十分简单,只有很纯粹的计时功能(当然,可以触发中断);但从掉电还继续运行的角度来说,它却是 GD32中唯一一个具有如此强大功能的外设。所以 RTC 外设的复杂之处并不在于它的定时功能,而在于它掉电还继续运行的特性。以上所说的掉电,是指主电源 VDD断开的情况,为了 RTC 外设掉电继续运行,必须给GD32芯片通过 VBAT引脚接上锂电池。......
2022-08-16 09:21:29
2311
3
原创 《嵌入式 – GD32开发实战指南》第13章 DAC
数字/模拟转换模块(DAC)是12位数字输入,电压输出的数字/模拟转换器。DAC可以配置为8位或12位模式,也可以与DMA控制器配合使用。DAC工作在12位模式时,数据可以设置成左对齐或右对齐。DAC模块有2个输出通道,每个通道都有单独的转换器。在双DAC模式下,2个通道可以独立地进行转换,也可以同时进行转换并同步地更新2个通道的输出。DAC可以通过引脚输入参考电压VREF+以获得更精确的转换结果。...
2022-07-25 07:44:51
1765
原创 《嵌入式 – GD32开发实战指南》第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
1675
原创 《Linux操作系统 - RK3568开发笔记》第5章 基于V4L2拍照
开发环境:主机:Ubuntu 18.04开发板:OK3568-C开发板Video for Linuxtwo(Video4Linux2)简称V4L2,是V4L的改进版。V4L2是linux操作系统下用于采集图片、视频和音频数据的API接口,配合适当的视频采集设备和相应的驱动程序,可以实现图片、视频、音频等的采集。在远程会议、可视电话、视频监控系统和嵌入式多媒体终端中都有广泛的应用。本文将基于V4L2使用usb摄像头(UVC)拍照。1.配置内核进入内核目录,配置linux内核2.启用摄像头支持最后一步时
2022-06-21 07:38:02
1791
2
原创 《HarmonyOS开发 – OpenHarmony开发笔记(基于小型系统)》第6章 环境监测系统
开发环境:开发系统:Ubuntu 20.04开发板:Pegasus物联网开发板MCU:Hi3861OpenHarmony版本:3.0.1-LTSPegasus物联网开发板有很多模块,笔者就使用环境检测板来实时检测环境变化。环境检测板有三个设备:AHT20 温湿度传感器,半导体可燃气体传感器 MQ-2,蜂鸣器MLT-8530。6.1.1 温湿度传感器AHT20简介AHT20是一款精度高,完全校准,贴片封装的温湿度传感器,采用标准IIC通信方式,超小的体积、极低的功耗。温湿度传感器均在高精度的恒温恒湿
2022-06-19 20:02:31
1608
5
原创 《HarmonyOS开发 – OpenHarmony开发笔记(基于小型系统)》第5章 WiFi联网(STA模式)
开发环境:开发系统:Ubuntu 20.04开发板:Pegasus物联网开发板MCU:Hi3861OpenHarmony版本:3.0.1-LTSHI3861默认已经初始化了WiFi,因此这里讲解如何使用WiFi联网。串口终端上执行相应的AT命令,即可使Hi3861 WLAN模组联网,依次执行如下AT命令,启动STA模式,连接指定路由器,并开启DHCP功能配置IP地址。查看Hi3861 WLAN模组与网关联通是否正常,如下所示。下面具体演示:有上图可知Hi3861 WLAN模组联网成功。当然也可在
2022-06-18 22:37:02
1573
4
原创 《HarmonyOS开发 – OpenHarmony开发笔记(基于小型系统)》第4章 OpenHarmony应用开发实例
开发环境:开发系统:Ubuntu 20.04开发板:Pegasus物联网开发板MCU:Hi3861OpenHarmony版本:3.0.1-LTS1.新建工程及源码在applications/sample/myapp中新建src目录以及myapp.c文件,代码如下所示。新建编译组织文件新建applications/sample/myapp/BUILD.gn文件,内容如下所示:static_library中指定业务模块的编译结果,为静态库文件libmyapp.a,开发者根据实际情况完成填写。
2022-06-12 12:58:49
1120
原创 《嵌入式 - 开源项目》一个小而美的嵌入式shell - letter shell
源码地址熟悉Linux的朋友的都知道,shell包裹在内核之外的人机交互界面,用于用户和内核之间打交道的功能,类似于windows CMD。 通过Shell将输入的命令与内核通讯,好让内核可以控制硬件开正确无误的操作工作。Shell有着不同的分类,比如Bourne shell(sh),Korn shell(ksh)、C shell (csh)、Bourne-again shell(bash)、tcsh。其中最常用的有csh和bash。Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的
2022-06-12 07:35:44
1220
原创 《Linux操作系统 - RK3568开发笔记》第4章 基于 Select Poll的TCP发服务器
开发环境:主机:Ubuntu 18.04开发板:OK3568-C开发板并发服务器支持多个客户端的同时连接,最大可接入的客户端数取决于内核控制块的个数。当使用Socket API时,要使服务器能够同时支持多个客户端的连接,必须引入多任务机制,为每个连接创建一个单独的任务来处理连接上的数据,多任务可以是多线程或者多进程,这是最常用的并发服务器设计。但是多线程/多进程消耗资源多,处理起来也比较复杂,本文将基于Select/Poll机制实现并发服务器。在具体讲解基于Select/Poll机制实现并发服务器之前,
2022-06-09 22:38:16
555
1
原创 《嵌入式系统 - RT-Thread开发笔记》手把手教你使用RT-Thread制作GD32 RISC-V系列BSP
熟悉RT-Thread的朋友都知道,RT-Thread提供了许多BSP,但不是所有的板子都能找到相应的BSP,这时就需要移植新的BSP。RT-Thread的所有BSP中,最完善的BSP就是STM32系列,但从2020年下半年开始,国内出现史无前例的芯片缺货潮,芯片的交期和价格不断拉升,STM32的价格也是水涨船高,很多朋友也在考虑使用国产替代,笔者使用的兆易创新的GD32系列,我看了下RT-Thread中GD系列BSP,都是玩家各自为政,每个人都是提交自己使用的板子的BSP,充斥着大量冗余的代码,对于有强迫
2022-06-09 21:58:37
1043
1
原创 《Linux操作系统 - RK3568开发笔记》第3章 源码编译
开发环境:主机:Ubuntu 18.04开发板:OK3568-C开发板1.创建工作目录2.拷贝源码将用户资料中的源码文件 OK3568-linux-source.tar.bz2.a*拷贝到虚拟机~/rk3568 目录。拷贝文件的方式有很多,笔者使用的是共享文件夹方式。【注】OK3568源码使用分段压缩,每段最大4G,这样方便拷贝,因此有些存储器单文件最大支持4G。3.解压源码耐心等待完成即可,解压时间有点久。4.进入源码目录结构1.编译前配置在 device/rockchip/ok3568/
2022-06-04 20:23:04
1655
1
原创 《Linux操作系统 - RK3568开发笔记》第2章 固件下载
OK3568-C开发板可以使用USB和TF卡烧写,USB是最常用的烧写方式,一般在系统变转后使用该方式。在更新固件前,需要安装RK USB驱动。下载 Release_DriverAssistant.zip,解压,然后运行里面的 DriverInstall.exe。安装成功后,PC的设备管理器显示信息如下:说明驱动安装成功。这里可以使用飞凌官方的固件,在这里需要对RK3568的固件做一个简单介绍,RK3568固件文件一般有两种:单个统...
2022-06-04 19:45:35
1085
原创 《Linux操作系统 - RK3568开发笔记》第1章 开发环境搭建
Windows 下有很多虚拟机软件,目前市面上流行的有 VMware 和 VirtualBox。 VMware 分为收费专业版 Workstation Pro 和非商用免费版 Workstation Player,推荐使用 Workstation Player。笔者这里使用的编译主机的Ubuntu 18.04,关于Workstation和Ubuntu安装笔者这里不在赘述,网上资料很多,笔者默认已经装好Workstation和Ubunt...
2022-06-04 19:05:14
1119
原创 《HarmonyOS开发 – OpenHarmony开发笔记(基于小型系统)》第3章 OpenHarmony源码编译与下载
Pegasus物联网开发板基于华为海思Hi3861芯片,对应的产品名字是wifiiot_hispark_pegasus。接下来编译wifiiot_hispark_pegasus,这里采用hb工具编译,在代码根目录下执行这里我们选择wifiiot_hispark_pegasus可使用上下键进行选择,也可使鼠标选择。然后输入以下命令开始编译:等待编译完成即...
2022-06-03 23:34:33
455
6
原创 《HarmonyOS开发 – OpenHarmony开发笔记(基于小型系统)》第2章 OpenHarmony开发环境搭建
开发环境:开发系统:Ubuntu 20.04开发板:Pegasus物联网开发板MCU:Hi3861OpenHarmony版本:3.0.1-LTS本文将介绍如何搭建OpenHarmony开发环境,OpenHarmony主要在Linux平台上开发,因此需要使用Linux环境开发,要想使用Linux开发环境,可以选择安装Linux系统,也可在Windows上安装虚拟机,笔者就是使用的该方式,这种方式的好处是可以随时拷贝,非常方便。笔者的虚拟机使用的是VMware Workstation,Linux系统
2022-05-28 17:11:38
761
原创 《HarmonyOS开发 – OpenHarmony开发笔记(基于小型系统)》第1章 OpenHarmony与Pegasus物联网开发套件简介
1.1 OpenHarmony简介OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目,目标是面向全场景、全连接、全智能时代,基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。OpenHarmony可以说是一种新的平台,采用分层思想,从下向上依次为:内核层、系统服务层、框架层和应用层。内核层::采用多内核(Linux内核或者LiteOS)设计,支持针对不同资源受限设备选用适合的OS内核。驱动子系统:驱动框架(H
2022-05-28 16:44:01
524
原创 《HarmonyOS开发 – 小凌派-RK2206开发笔记》第5章 使用WiFi联网
开发环境:开发系统:Ubuntu 20.04开发板:小凌派-RK2206开发板OpenHarmony版本:3.0.0-LTSRK2206开发板自带WiFi,SDK也提供了相应的驱动,只需要打开连接WiFi的线程即可。WiFi的初始化线程函数在device/rockchip/rk2206/sdk_liteos/board/src/config_network.c中。UINT32 ExternalTaskConfigNetwork(VOID){ UINT32 ret; //ret
2022-05-27 23:09:38
844
1
原创 《HarmonyOS开发 – 小凌派-RK2206开发笔记》第4章 串口应用开发
开发环境:开发系统:Ubuntu 20.04开发板:小凌派-RK2206开发板OpenHarmony版本:3.0.0-LTS4.1串口简介串口是一个泛称,UART、TTL、RS232、RS485、RS422都可以说是串口。一般的MCU内部集成了UART接口,即通用异步收发器(Universal Asynchronous Receiver/Transmitter);MCU的串口一般为遵循TTL电平的TTL串口;RS232、RS485、RS485则通常作为设备的外设串口使用。当然啦,要想了解更多串口的
2022-05-27 00:16:57
891
2
第25章 配置OpenWrt支持网络摄像头-附件
2017-12-17
第19章 驱动开发之LED驱动程序-附件
2017-12-11
Learning OpenCV 3 英文版
2017-12-08
SSHSeccureShellClient客户端
2017-12-01
[GPU高性能编程CUDA实战].(桑德斯).聂雪军等.扫描版
2017-10-28
NetBox软件
2017-10-19
win32diskimager-1.0.0软件
2017-10-19
Xshell 软件(免费版)测试可用
2017-10-19
Keil使用Jlink ,dll不兼容的更新库
2020-12-26
SerialCommunicate.rar
2020-06-20
EasyWebServer网站服务器
2019-04-06
手写数字识别数据集
2018-09-12
Nearest Neighbor Pattern Classification-1967
2018-09-11
4G拨号(移远EC25)Openwrt+RT5350
2018-09-05
《A fast learning algorithm for deep belief nets》原文
2018-03-06
第27章 DS18B20温度传感器-附件:ds18b20驱动程序和应用程序
2017-12-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人