- 博客(67)
- 资源 (6)
- 问答 (1)
- 收藏
- 关注
原创 编译cedet-1.1时出现错误
In end of data:semantic-tag-file.el:207:1:Warning: the function ‘ede-toplevel’ is not known to be defined.Eager macro-expansion failure: (invalid-function class-p)Eager macro-expansion failure:...
2019-01-13 18:08:02 352
原创 stm32f103通过中断接受,定时器记时,获取红外遥控码值
由于个人原因,无法截图,但是代码亲自测试可以使用。硬件:正点原子stm32f103开发板。代码如下:功能代码remote.c#include "remote.h"#include "stdio.h"u32 receiveBuffer;u32 CodeTime=0;u32 CodeTimeBuff=0;u8 hRevFlag=0;u8 Rev_Count=0;#d...
2018-12-06 18:01:43 2024
原创 超星nm10 aarch64平台ubuntu使用移远EC200-CN4G/5G卡
AT+qnetdevctl=1,1,1播号回复ok表示成功。在串口中查看4G卡网口如下为enx020c29a39b6d。输入如下命令启动自动获取3s后按ctrl+c。
2024-02-18 15:34:48 467
原创 03_PCI设备的访问方法_桥设备(type1)
需要访问一块PCI设备需要配置,配置是给其分配一块PCI地址空间。进行读写时设备发现是自己地址后会回应信号。
2023-12-25 16:05:02 373
原创 01_从软件开发角度看待PCI和PCIe
不能直接访问至外设芯片的地址。而PCIe可以向访问内存一样直接对外设芯片进行读写。其他控制器需要 起始信号, 读、写、结束 ,初始化等操作。PCIe中间有个转换,这个转换可以直接操作外设。通常访问外设芯片通过。
2023-12-25 09:56:43 349
原创 11.3_从构造描述符的角度理解Gadget框架
文件如下: drivers/usb/gadget/legacy/zero.c。那最后就放到了usb_udc。那目前数据结构就达成了这一步。测试程序 zero.c。其注册函数如上:通过。
2023-12-04 11:41:51 83
原创 04.1_USB协议层数据格式_事务_包_域
虽然USB定义了数据在总线上传输的基本单位是包,但是我们还不能随意地使用包来传输数据,必须按照一定的关系把这些不同的包组织成事务才能传输数据。事务通常由两个或者三个包组成:令牌包、数据包、握手包。PID:包的方向、包的类型。
2023-11-28 15:15:50 59
原创 shell编程
使用shell进行程序设计的原因之一是。你可以快速、简单地完成编程。哲学:Linux 具备自动文件类型处理功能,所以使用这些工具 的用户一般不必了解它们是用哪种语言编写的。如果想要这些工具运行得更快,常见的做法是首先在shell中实现工具的原型,一旦确定这么做,然后再用C或者C++、Perl或者其他执行得更快的语言来重新实现它们。如果 在shell中这些工具...
2023-10-25 18:10:12 156
原创 docker
Docker启动、停止、删除容器的相关指令_docker关闭容器命令-CSDN博客Docker启动、停止、删除容器的相关指令_docker关闭容器命令-CSDN博客查看所有容器docker ps -a
2023-10-10 17:12:50 238
原创 repo操作
同步 操作删除所有的改动:https://blog.csdn.net/kongbaidepao/article/details/54983069https://www.thinbug.com/q/5012163
2023-06-09 11:25:47 110
原创 2-(13/24)_输入系统_输入系统_Dispatcher线程_分发dispatch
2-(13/24)_输入系统_输入系统_Dispatcher线程_分发dispatch
2022-07-01 15:09:48 594
原创 2.7_Binder系统_transaction_stack机制_REPLY
总体发送回复如下:A进程发送BC_TRANSACTION驱动改为BR_TRANSACTION发给进程B。B进程发送bc_REPLY 驱动改为BR_REPLY给进程A。 1、发给谁?handle只表明了进程,发给进程 ?还是进程下的某个线程?一般放在binder_proc的todo链表中,唤醒等待于binder_proc,wait的空闲进程。在porc数据成员中。对于双向传输,则放在binder_thread.todo里唤醒该线程情景分析client发送BC_TRANSACTI
2022-05-31 19:50:32 299
原创 2.9_Binder系统_server的多线程实现
1、有多个client发送请求时server会忙不过来,导致创建多个线程。谁来判断忙不过来呢?client请求时会将数据放至todo链表,并且会唤醒等待wait队列的线程,如果有线程在wait队列中等待表示server忙得过来,如果没有表示忙不过来。此时驱动会向应用程序反馈,你应该多创建一些线程来处理。驱动向APP发出“创建新线程请求”的条件proc->requested_threads=0, 未处理的新线程请求。 proc->ready_threads为0,空闲的线程数pr..
2022-05-27 14:37:48 342
原创 2.7_Binder系统_transaction_stack机制_REPLY
总体流程:有两个问题1、发给谁:test_server中可能有多个线程,binder_proc进程中有todo链表, 进程的thread中也有多个链表。数据一般放在bind_proc的todo链表中,线程中哪个空闲哪个来执行(唤醒等待于binder_proc,wait的空闲进程)。proc中有todo链表与wait对于双向传输,则放放在binder_thread.todo里,如何判断是否为双向传输通过 binder_transaction判断一开始没有数据,那就放至p.
2022-05-27 10:44:20 201
原创 笨叔__内存学习
早期内存的使用方法分段分页(按需分配,不用的交换地放到磁盘中)逻辑地址:程序使用的地址。线性地址:逻辑地址转换到实际地址的中间层arm将二者统统叫为虚拟地址。CPU访问内存的过程内存管理硬件结构CPU最开始访问的是虚拟地址通过MMU进行虚拟地址到物理地址的转换。转换需要查询页表,页表存储在主存储器中。MMU为了加快转换的速度使用TLB单元,TLB中保为上一次转换的表项如果是,命中(TLB hit)如果不是,(TLB miss)如果已经查找到页表了,查看..
2021-12-21 15:54:55 306
原创 Wei_Android_1_基础知识Android消息处理机制
原理在一个循环下有多个线程,当一个线程休眠时另一个线程如何唤醒的呢?1、通过epoll机制,当没有数据时就休眠,有数据就立刻唤醒。2、A线程不断地发送消息给B线程,当B线程消息处理不过来时,得用消息队列Android源码分析...
2021-10-21 17:47:14 858
原创 wei_Linux_字符设备驱动
一、设备注册 1.1、file_operations数据结构 1.1.1、注册 注册字符设备名称为“sixth_drv”自动分配主设备号。可使用major = register_chrdev(0, "sixth_drv", &sencod_drv_fops); 1.1.2、查看文件系统下查看字符设备 ls -l /dev,c开头为字符设备,主设备号为5、次设备号为1。1.2、注册类1....
2021-09-26 11:30:59 64
原创 hi3518ev200移植rtl8188e驱动失败解决方案
1、问题insmod rtl81883驱动后无法启动wlan。2、解决方案在如下路径文件中添加 /etc/init.d/rcS加入如下himm 0x200f006c 0himm 0x20180400 0xffhimm 0x20180040 0x0ircut 0如图所示:
2021-09-22 17:22:13 304
原创 基于Hi3518ev200实现雷神“最简单的基于librtmp的示例:发布H.264(H.264通过RTMP发布)“
前言sudo apt-get install libncurses5-dev sudo apt-get install u-boot-tools
2021-09-17 09:25:53 455 4
原创 ubuntu18.04实现雷神“最简单的基于librtmp的示例:发布H.264(H.264通过RTMP发布)“
前言系统:ubuntu18.04代码下载:git clone https://gitee.com/zhang-rong-1042412/linux_rtmp.git启动nginx参考文章:Ubuntu18.04搭建nginx rtmp服务器_u010798513的博客-CSDN博客启动rtmpcd linux_rtmp/rtmp/main./rtmp “rtmpIP地址”./rtmp: error while loading shared libraries: librt
2021-09-15 15:12:10 228
原创 Ubuntu18.04搭建nginx rtmp服务器
1、前言系统:ubuntu18.042、 下载PCRE 并安装pcre-8.37.tar.gz_ubuntunginxrtmp-C代码类资源-CSDN下载安装命令如下:tar -xzvf pcre-8.37.tar.gzcd pcre-8.37./configuremakemake instal3. 安装nginx安装nginx需要设置依赖三方代码nginx-rtmp-module-master与openssl安装三方依赖库文件sudo apt-get in.
2021-09-15 11:12:12 772
原创 通过华为云实现RTMP流媒体推流拉流
准备直播工具1、下载并安装推流工具OBS。2、下载并安装播放工具VLC。推流1、运行OBS工具,单击界面左下角的“文件”选择“设置”。2、在左侧菜单栏选择“输出”,将“输出模式”选择“高级”,“关键帧间隔”配置为2。3、在左侧菜单栏选择“推流”,“服务”选择“自定义”,输入“服务器”和“串流密钥”。单击“确定”,完成推流地址的配置。rtmp://push.hwvideo.hwcloudlive.com/live/4、 点击开始推流。拉流打开vlc点击“媒.
2021-09-14 23:03:30 2667
TA创建的收藏夹 TA关注的收藏夹
TA关注的人