![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
树莓派
文章平均质量分 86
最全树莓派学习:opencv、登录联网、文件共享、分文件编程、库(动态库、静态库)、外设开发编程、交叉编译、Ubuntu虚拟机搭建、驱动、地址、io操控代码编程。细化到每一步、每一个指令、每一份代码。
行不地上
专业:电子信息科学与技术,希望与大家一起进步,加油鸭!
展开
-
树莓派——opencv打开树莓派摄像头调试记录
指令:cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON ..如果没有问题,OpenCV 可以正常使用。第二步:你应该可以看到摄像头在直播。由于没有镜头,画面会比较模糊,不用担心。选择Advanced Options(光标移动,Tab键选择,空格键确认)如果显示错误,请使用网络进行问题排查。当系统询问是否启用相机时,选择“是”当要求重启树莓派时,选择“是”原创 2022-09-07 14:07:05 · 6013 阅读 · 0 评论 -
树莓派——9、IO操控代码编程
这样直接定义是不对的,linux中代码访问的是虚拟地址,所以我们需要在入口函数把物理地址转化为虚拟地址寄存器地址先初始化为NULLvolatile的作用:防止编译器对代码优化,变量值是直接从变量地址中读取和存储的驱动加载的时候在入口函数对寄存器地址赋值在open的时候配置pin4为输出引脚在write函数获取用户层的数据,根据这个数据来操作io口输出高电平或者低电平//从用户空间拷贝数据到内核空间*to :将数据拷贝到内核的地址*from :需要拷贝数据的地址n :拷贝数据的长度(字节)原创 2022-09-02 13:35:03 · 1205 阅读 · 0 评论 -
树莓派——8、树莓派博通BCM2835芯片手册导读
我们在编写驱动程序的时候,IO空间的起始地址是0x3f000000,加上GPIO的偏移量0x2000000,所以GPIO的物理地址应该是0x3f200000开始的,然后在这个基础上进行Linux系统的MMU内存虚拟化管理,映射到虚拟地址上。该函数返回映射后的内核虚拟地址(3G-4G). 接着便可以通过读写该返回的内核虚拟地址去访问之这段I/O内存资源。注意:我们配置的底层引脚对应得是BCM。:要映射的IO空间和权限有关的标志。:要映射的起始的IO地址。电路图:通过电路图找到。:要映射的空间的大小。原创 2022-09-01 23:49:21 · 1207 阅读 · 0 评论 -
树莓派——7、总线地址、物理地址、虚拟地址
【代码】树莓派——7、总线地址、物理地址、虚拟地址。原创 2022-09-01 22:49:43 · 421 阅读 · 0 评论 -
树莓派——6、驱动
驱动结构分为三层:用户、内核、硬件首先从用户空间来看,用户空间包含应用和c库。像我们学习中编译完成,可执行的a.out这类项目属于应用,基础c和c库属于C library,像文件、进程、进程间通信、线程这类都属于c库,也就是说 open、read、fork、socket、pthread等在c库中,换而言之c库就是提供了APP支配内核工作的接口。内核空间,上述所说的进程等都由内核处理,上层只需要直接调用fork等API即可,同样的设备驱动也由内核来实现。硬件,硬件包括各种io口和磁盘等。原创 2022-09-01 22:38:31 · 792 阅读 · 0 评论 -
树莓派——5、Ubuntu18-04虚拟机搭建VMware版本
1、打开VMware——创建新的虚拟机——自定义2、下一步3、 光驱——下一步4、5、(选择磁盘空间大的位置,不要选C盘!!!)6、6、7、8、9、10、11、12、13、完成上下左右键有问题:安装gcc:安装ifconfig:启用共享文件夹:。。。要安装VMwareTool!!!!!!原创 2022-09-01 17:47:34 · 641 阅读 · 0 评论 -
树莓派——4、交叉编译
用途:当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(类似windows快捷方式),不必重复的占用磁盘空间。)文件,使用注意要掐头去尾。交叉编译工具藏的很深(如下图所示,在其他路径底下就识别不出来交叉编译链),每次要敲那么多的路径或者进入这个路径中来使用,很麻烦。这个软链接不占内存是个假的, 实际用的是它所指向的一个可执行文件,软链接不占内存只是一个符号指向了这个位置,本质是为了简写。..原创 2022-08-27 19:53:06 · 642 阅读 · 0 评论 -
树莓派——3、树莓派外设开发编程
树莓派外设开发接口文档参考wringPi库(特定平台,特定功能的接口)原创 2022-08-26 21:03:33 · 716 阅读 · 0 评论 -
树莓派——2、文件共享、分文件编程、库(动态库、静态库)
②程序升级简单,因为app里面没有库的源代码,升级之后只要库的名字不变,函数名以及参数不变,只是实现做了优化,就能加载成功。静态库文件名命名规则“libxxx.a”,库名前面加“lib”,后缀用“.a”,“xxx”为静态库名。①链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,但是这样的环境变量仅是临时的,只针对于这个窗口,换了一个窗口又不行了。命名规则:与静态库类似,前缀相同为“lib”,后缀变为“.so”。相当于进行了加密,别人可以使用库,但是看不到库中的内容。原创 2022-08-24 20:40:35 · 240 阅读 · 0 评论 -
树莓派——1、登录、联网
设备破解:默认情况,树莓派串口和蓝牙连接。想办法断开蓝牙连接,把串口用来数据通信。sudo apt-get install xrdp 让树莓派允许远程桌面连接。默认的源是国外的,apt-get 安装的时候失败,我们更新成国内的源。Ctrl+o 保存,会有提示是否写入。(默认账号:pi 默认密码:raspberry)a、观看树莓派的启动过程,字符。Nano是文档编辑器,已进入便可以编写。(这就是树莓派的操作系统Linux)闪电——Serial ——。ifconfig 查看连接状态。原创 2022-08-23 20:21:50 · 527 阅读 · 0 评论