- 博客(172)
- 资源 (54)
- 收藏
- 关注
原创 Linux命令技巧
递归删除目录中的指定文件 find ./ -name ‘*.o’ | xargs rm -f 可以通过管道命令来操作,先find出主目录 下想删除的文件,然后通过“xargs”这个构造参数列表并运行命令。...
2018-02-27 15:02:49 3336 1
原创 Git使用及安装
0、git init #使用当前目录作为Git仓库 git init newrepo #使用指定目录作为Git仓库 1、git clone git.example.com:repositories/hello.git #获取 2、git checkout -b branchname #创建并切换到分支 git checkout -f $filena
2017-07-03 10:49:20 3422
原创 android下调试声卡驱动之总结
1、在调试中出现问题后,首先看I2C通信有没有问题,wm8960寄存器的设置是靠I2C来完成,另外I2C通信不成功在开发板中是没 有声卡相关的设备节点。 a、首先查看Machine代码中的I2C的序号、名字和地址与DSP代码中I2C的序号、名字和地址是否相对应。 b、用示波器测量I2C的两根数据线SCLK、SDIN的波形。 c、可以先测试一下w
2015-03-28 18:58:37 12342
原创 android下调试声卡驱动之wm8960介绍二
三、LINPUT输入通道介绍 有关LINPUT的主要配置如下: R32的bit8(LMN1)置1:LINPUT1连接PGA; R00的bit7(LINMUTE)置0:禁止静音; R25的bit5(AINL)置1:PGA使能; R47的bit5(LMIC)置1:Left Bo
2015-03-28 18:24:22 10853
原创 android下调试声卡驱动之wm8960介绍一
经过了一段时间的Android下wm8960驱动的调试,终于实现录音和播放功能了,在调试过程中有了一些心得,与大家分享一下,由于能力有限,错误之处还望海涵和指教。一、总述 wm8960芯片的使用其实就是对该芯片寄存器的设置,要实现的每个功能在芯片内部都是每一个通道,也就是数据从输入端流进沿着你设置的通道从输出端流出,如下图的芯片内部图和通道事例。
2015-03-28 18:03:21 16621 3
原创 android下调试声卡驱动之Machine部分
本文介绍的代码是在CPU(imx6)和Codec(wm8960)上做的调试并且Codec做主模式,在“概篇”中提到Codec部分、Platform部分代码由设备原厂提供和系统提供,所以我们在声卡调试中需要做的只有Machine部分,其他代码在需要的情况下略做微调即可,调试过程中还要注意在BSP文件里配置好I2S(SSI和AUD复用)。1、imx_hifi_hw_params函数介绍
2015-03-23 12:33:30 12067
原创 android下调试声卡驱动之I2S音频通信
一、I2S概述 I2S(Inter—IC Sound)总线是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专责于音频设备之间的数据传输。由4条线组成的数字音频接口,常用于HiFi,STB便携设备。Tx 和Rx信号线用于音频传输。而位时钟和左右时钟(LRC)用于同步链接。I2S具有灵活性,因为控制器和解码器都可以控制位时钟和左右时钟。位时钟因采样率和
2015-03-21 11:17:49 15011
原创 android下调试声卡驱动之概述
在Android中音频系统使用的是ALSA系统架构。ASoC--ALSA System on Chip ,是建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频Codec的一套软件体系,在音频设备驱动中ASoC被分为Machine、Platform和Codec三大部分。 Codec部分:负责音频解码,这部分代码完全无平台无关(设备原厂提供),它包含了一些音频的
2015-03-19 10:45:53 10524
原创 android下调试3G之Ril库分析
Android RIL (Radio Interface Layer)提供了Telephony服务和Radio硬件之间的抽象层。RIL负责数据的可靠传输、AT命令的发送以及response(响应)的解析。一般的,应用处理器(AP)通过AT命令集与无线通讯模块(基带/BP)通信。通信的方式又分为主动请求的request(诸如拨号、发短信……),以及Modem主动上报的例如信号强度、基站信息、来电、来短信等,称之为unsolicitedresponse(未经请求的响应)。系统框架如下图:
2015-01-08 09:30:07 10632
原创 android下调试3G之自动拨号
本章简单讲述下android实现自动拨号的功能,该功能利用了系统启动的rild的服务来实现,因为rild的服务是杀不死的,所以利用这一点,可以使拨号失败或网络断掉后自动重拨,来增强上网的可靠性。这里只实现拨号功能,把ril库实现的一些功能都去掉了。
2014-11-11 11:29:06 10184 2
原创 android下调试3G之手动拨号
当板子识别3G的USB串口设备时,在/dev下会看到ttyUSB0、ttyUSB1、ttyUSB2、ttyUSB3设备文件,就可以进行调试了。在拨号前还需要了解下模块USB串口的各个功能,比如中兴MG3732:Modem—ttyUSB3、AT—ttyUSB0、Debug—ttyUSB2、VoUSB—ttyUSB1,所以这里ttyUSB3用于拨号口,用的移动2G的卡。一、在板子的 /etc/pp
2014-11-11 09:20:31 8707
原创 android下调试3G之gpio控制3G上电
如果是自己开发的板子,需要用GPIO引脚控制3G模块开机/关机时,下面的文章会对你有所帮助,是以处理器IMX6和中兴MG3732模块为例介绍。一、引脚连接 处理器的gpio3_GPIO[9]连接3G模块的ON/OFF(29)引脚来控制3G的开机/关机。二、开关机条件 给ON/OFF引脚连续2500~3500毫秒低电平则开机,给再ON/OFF引脚连续2500~
2014-10-31 15:54:55 7647
原创 android下调试3G之模块设备识别
3G模块设备和Android系统主要通过USB接口进行数据通信。Android系统上的Linux内核需要根据3G模块设备上报的USB设备接口加载USB驱动,USB驱动正确加载后,3G模块才能正常工作。下面以添加华为模块设备识别为例: 一、修改 .../kernel/drivers/usb/serial/option.c文件 1、在option_probe()函数内添加红色框部
2014-10-31 09:34:04 9498
原创 android下调试3G之USB串口驱动集成配置
一、修改Android内核的编译配置 vi ~/myandroid/kernel_imx/.config文件中,确保下面的的配置项已经被选定。 (假如源码在~/myandroid目录下) 1、 USB电源管理特性的相关配置项: CONFIG_USB_SUSPEND=y 2、 USB串口驱动相关的配置项:
2014-10-29 18:48:48 9491
原创 android dlopen问题
其实我们的dlopen()或者dlsym()并没有发生错误,是Android系统自己的某些dlopen使用导致报了错。然后没有地方用dlerror()清空,导致我们使用时报错。在Android中通过JNI调用dlopen()或dlsym()时,有时打印dlerror()会出现:“undefined symbol: JNI_OnLoad”
2024-04-12 15:15:14 127
原创 ubuntu16.04升级openssl
Ubuntu16.04 默认带的openssl版本为1.0.2。查看:openssl version。1.下载openssl。
2023-12-04 17:58:53 7886 1
原创 房贷计算器python版
根据贷款总额、年利率、贷款年限计算还款明细。支持利率调整、提前还款后的还款明细计算。输出结果:result.txt。代码:LoanCalc.py。
2023-10-11 14:00:07 8107
原创 Win10命令出问题
问题:[0x7FF919EBE824] ANOMALY: use of REX.w is meaningless (default operand size is 64)解决:(该方案重启电脑好像会失效)win+r 输入:regedit 回车找到:HKEY_LOCAL_MACHINE\SOFTWARE\TEC\Ocular.3\agent\config新建“字符串值“:hookapi_disins 值为1修改:hookapi_filterinj_external 值增加 cmd.exe (
2023-09-25 10:51:13 285
原创 NAT种类和NAT穿越
此外,如果外部主机想要发送数据给这个内网主机,除了需要知道这个PublicIP:PublicPort外,内网主机在这之前必须用这个 socket 曾向这个外部主机的IP 发送过数据。这种NAT与Restricted Cone类似,唯一不同的是,如果外部主机想要给内网主机发送数据,它除了必须知道 PublicIP:PublicPort外,而且内部的主机必须事先向该外部主机的IP:Port发送过数据,并且该公网主机必须使用相应的IP:Port通过 PublicIP:PublicPort给内网主机发送数据。
2023-07-19 11:13:42 409
原创 ubuntu虚拟机 立即使用客户机 灰色
环境Ubuntu16.04VMware 16.2.2Windows 10错误the system is running in low graphicCtrl+ALT+F1 进入控制台输入用户名和密码进入系统cd /etc/X11sudo cp xorg.conf.failsafe xorg.conf重启分辨率低、无法适应客户机器sudo apt-get updatesudo apt-get upgrade界面卡顿将xorg.conf的内容清空,变成一个空的文件
2023-06-07 15:31:32 789
原创 TCP使用技巧
SO_REUSEADDR用于对TCP套接字处于TIME_WAIT状态下的socket,才可以重复绑定使用。TCP,先调用close()的一方会进入TIME_WAIT状态。是网络的一个选项设置,它允许多个进程/线程 bind/listen 相同的 IP/PORT,在 TCP 的应用中,它是一个新连接分发的负载均衡功能,它提升了新连接的分配性能(针对 accept )一般来说,一个端口释放后会等待两分钟之后才能再被使用,SO_REUSEADDR是让端口释放后立即就可以被再次使用。
2023-05-23 15:18:06 71
原创 Linux 开机、关机启动
删除启动项:sudo update-rc.d -f hslong.sh remove。添加到启动:sudo update-rc.d hslong.sh defaults。修改权限:sudo chmod a+x hslong.sh。
2023-05-17 15:12:30 881
原创 Linux安装Docker(Debian11)
可以添加docker组,并将非root账户加入到该组中。下面的命令创建docker组并将当前用户加入docker组,执行完成之后重新登陆生效。Containerd通过在启动时指定一个配置文件夹,使后续所有镜像仓库相关的配置都可以在里面热加载,无需重启Containerd。配置Containerd运行时镜像加速器(阿里云为例)非root执行docker命令不加sudo。使用镜像加速(阿里云为例)
2023-04-27 16:12:07 818
兼容PHP5.5的ECShop2.7.3
2016-03-09
HTML5高级程序设计2
2015-04-03
《牛奶音视频播放器》支持h264文件播放
2023-01-11
KGM转MP3或者FLAC
2022-12-23
YUV Player 播放器
2022-12-22
wireshark中获取H264码流lua脚本
2022-10-14
nginx-1.16.1.tag.gz
2019-12-06
mos-pesq.zip
2019-10-21
libev-4.15.0.tar.gz
2019-08-30
Django开发练习源码
2019-01-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人