树莓派
文章平均质量分 75
◣星河◢
这个作者很懒,什么都没留下…
展开
-
树莓派 安装 MJPG-streamer 使用摄像头(编译失败相关问题处理)
如果detected=0,说明摄像头模块没接好,重新排查下硬件。supported=1说明摄像头已经使能,摄像头已经可以使用。supported=0则说明CSI摄像头没有使能,需要使能下摄像头模块。要实现互联网视频监控,需要另外实现内网穿透。如果脚本执行发生错误,则执行更改./start.sh权限。再把图片传到windows系统下打开,即可看到拍到的图片。板的性能要求不高,主频200MHZ的ARM芯片也能实现。执行成功如下,生成一些.so插件。重新安装一下JPEG支持库。一目了然,便于学习。原创 2022-09-30 23:15:19 · 903 阅读 · 0 评论 -
树莓派 IO 口驱动代码编译和测试
但是CPU不会为这些已知的外设IO内存资源预先指定虚拟地址的值,所以驱动程序不可以直接就通过外设的物理地址访问到IO内存,而必须要将其映射到虚拟地址空间(通过页表),然后才能根据内核映射过后的虚拟地址来通过内存指令访问这些IO内存,并对其进行操作。我们在编写驱动程序的时候,IO空间的起始地址是0x3f000000,加上GPIO的偏移量0x2000000,所以GPIO的物理地址应该是从0x3f200000开始的,然后在这个基础上进行Linux系统的MMU内存虚拟化管理,映射到虚拟地址上。原创 2022-09-22 12:46:42 · 463 阅读 · 0 评论 -
树莓派博通BCM2835芯片手册导读
驱动开发的两大利器就是开发手册和电路图,但是树莓派在开发手册中就已经将相应的寄存器已经写出来了,所以不需要看电路图,只看开发手册就可以进行开发。进行IO口的驱动,所以在开发手册中找到对应的IO篇章,通过I/O口导读我们了解到:共有54条通用I/O(GPIO)线路分为两组。所有GPIO引脚都具有BCM内至少有两个可选功能。替代功能通常是外围IO,每个库中可能会出现一个外围设备,以便灵活选择IO。GPIO有41个寄存器,所有访问都是32位的。Description是寄存器的功能描述。原创 2022-09-20 21:54:17 · 772 阅读 · 0 评论 -
总线地址、物理地址、虚拟地址
树莓派也是32位 ,一个G的内存,但它只能访问949M,剩下的另作他用。BCM2835是树莓派3B CPU的型号,是ARM-cotexA53架构,cpu Bus是地址总线,00000000~FFFFFFFF是CPU寻址的范围,就是4294967296bit。若CPU的地址总线宽度是32位,那么CPU的寻址范围是4G(2的32次方位),所以最多支持4G内存。)是一种计算机总线,是CPU或有DMA能力的单元,用来沟通这些单元想要访问(读取/写入)计算机内存组件/地方的物理地址。上,以电子形式存在的,使得。原创 2022-09-19 23:14:31 · 2593 阅读 · 0 评论 -
Linux文件系统、虚拟文件系统、分区、文件系统目录结构、Linux内核结构
文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。也指用于存储文件的磁盘或分区,或文件系统种类。因此,可以说"我有2个文件系统"意思是他有2个分区,一个存文件,或他用 “扩展文件系统”,意思是文件系统的种类。原创 2022-09-18 10:24:24 · 1200 阅读 · 0 评论 -
配置Linux内核适合树莓派相关操作
到https://.com/raspberrypi/下载对应版本的Linux内核源码拷贝到Ubuntu,下载交叉编译工具安装到Ubuntu并配置环境变量。原创 2022-09-14 21:43:24 · 354 阅读 · 0 评论 -
Linux内核源码目录树结构及作用
包含和硬件体系结构相关的代码,每种平台占一个相应的目录。和32位PC相关的代码存放在i386目录下,其中比较重要的包括kernel(内核核心部分)、mm(内存管理)、math-emu(浮点单元仿真)、lib(硬件相关工具函数)、boot(引导程序)、pci(PCI总线)和power(CPU相关状态)。内核的最核心部分,包括进程调度、定时器等,和平台相关的一部分代码放在arch/*/kernel目录下。内存管理代码,和平台相关的一部分代码放在arch/*/mm目录下。网络相关代码,实现了各种常见的网络协议。原创 2022-09-13 17:04:52 · 349 阅读 · 0 评论 -
Windows、安卓、嵌入式设备相关启动流程
启动过程: 电源-》BootLoader(引导操作系统启动)-》Linux内核-》文件系统(根据功能性来组织文件夹,带访问权限)-》KTV点歌机,启动过程: 电源-》 fastBoot/Bootloader/-》linux内核-》文件系统-》虚拟机-》HOME应用程序-》点某图标打开某APP。启动过程: 电源 -》 BIOS -》windows内核-》C,D盘-》 程序启动(QQ)C51,STM32(裸机)》》》》》》C直接操控底层寄存器实现相关业务。业务流程型的裸机代码。遥控灯: while(1)原创 2022-09-12 23:16:20 · 230 阅读 · 0 评论 -
树莓派Linux内核开发准备
com/raspberrypi/下载树莓派的linux源码和交叉编译工具链到共享文件夹。Ubuntu安装交叉编译工具和树莓派Linux源码。拷贝到Ubuntu之后解压树莓派linux源码和。选择对应版本的linux rpi 版本。查看arm-linux编译工具是否可用。原创 2022-09-12 23:12:08 · 174 阅读 · 0 评论 -
交叉编译工具链安装与应用、带wiringPi库的交叉编译
两种,软链接就是ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的目录下用ln命令链接(link)就可以,不必重复的占用磁盘空间。注意,libwiringPi.so是软链接文件,在拷贝到Ubuntu后软链接消失,需要创建。原创 2022-09-09 16:27:39 · 438 阅读 · 0 评论 -
嵌入式开发中的交叉编译
比如文件A.c引用了文件B.c中的变量,A.c和B.c分别编译生成A.o和B.o,A.o中并没有变量的定义,必须依靠B.o才能形成完整的代码。这里的平台指的是:体系结构+操作系统,同一个体系结构可以运行不同的操作系统,同样,同一个操作系统可以在不同的体系结构上运行。编译器需要检查源代码的语法,没有错误才能被编译通过,源代码经过编译后 ,并没有生成最终的可执行文件,而是生成一种被称为目标文件的中间文件,比如gcc的目标文件的后缀名为.o。是指编译源代码的平台和执行源代码编译后程序的平台是两个不同的平台。原创 2022-09-05 14:57:46 · 576 阅读 · 0 评论 -
树莓派串口通信
串口通信常用于多机通信,串口通信属于全双工通信,可同时进行数据交互,半双工则只允许数据单向传输。使用时需要包含头文件:#include 树莓派第一次使用串口, 要用串口进行通信,需要对串口配置。串口通信需要提供波特率、数据位、校验位、停止位。串口地址:默认一般是"/dev/ttyAMA0"(支持Mac,Windows,Ubuntu)我上面示例所用的串口助手。补充:串口输出中文时乱码的问题。修改cmdline.txt文件。串口助手不支持字符编码方式。...原创 2022-08-31 22:48:59 · 1720 阅读 · 0 评论 -
树莓派外设开发
3、在Codeblocks环境下是无法使用sleep函数的,因为在windows上Codeblocks采用mingw(Gnu在Window环境下的编译器,可以充分使用WindowsApi)作为编译器,而在stdlib.h中sleep的说明如下:_CRTIMP void __cdecl __MINGW_NOTHROW _sleep (unsigned long) __MINGW_ATTRIB_DEPRECATED;delay()的参数单位是毫秒,对于长度超过几千微秒的延迟,应该使用delay()函数。...原创 2022-08-28 10:13:35 · 301 阅读 · 0 评论 -
Linux库
简单的说库就是模块,用于提供不同功能的模块。库从本质上来说是一种可执行代码的二级制形式,可以被载入到内存中使用,就是将源代码转化为二进制格式的源代码,相当于进行了加密,别人可以使用库,但是看不到库中的内容。在Linux系统中,库以文件的形式存在,并且可以分为动态链接库和静态链接库,简称静态库和动态库。其中,静态库文件的后缀为.a,动态库文件的后缀为.so。无论是动态库还是静态库,它们无非是向调用的人提供变量、函数或者类。...原创 2022-08-17 16:28:52 · 236 阅读 · 0 评论 -
树莓派刷机
树莓派(Raspberry Pi)是一款小型的专门为学习而设计的ARM开发板,支持Raspbian,Ubuntu Mate, Ubuntu Server等多种Linux操作系统。接下来就简单的讲解下如何烧录树莓派系统。转载 2022-08-12 18:05:50 · 260 阅读 · 0 评论 -
树莓派登录
先将烧写器插入电脑,在SecureCRT 软件中建立串口连接,按照如图所示选择(注意选择协议、串口、波特率,其余默认即可),其中端口根据个人设备的不同会有所不同,点击连接后,把树莓派供电就会观看树莓派的字符启动过程。然后将SD卡取下插入树莓派,将烧写器与树莓派接线,烧写器的T、R分别接到树莓派的R、T,注意:是交叉连接,不要接错。默认的源是国外的,apt-get安装的时候会失败,我们要更新成国内的,如图,访问的是国外的IP地址,无法找到。默认情况下,树莓派的串口是与蓝牙连接的。固定树莓派的IP地址。...原创 2022-08-12 17:46:56 · 215 阅读 · 0 评论