随笔分类 -  Programming Embedded systems

摘要:GOP group of pictures GOP 指的就是两个I帧之间的间隔. 比较说GOP为120,如果是720 p60 的话,那就是2s一次I帧. 在视频编码序列中,主要有三种编码帧:I帧、P帧、B帧,如下图所示。 1. I帧即Intra-coded picture(帧内编码图像帧),不参考其 阅读全文
posted @ 2019-04-08 22:38 mcdull^0^
摘要:有一次面试给了我一台笔记本,要求现场求素数,虽然感觉有点突兀但是总比上次要求用笔在A4纸张上实现开平方根函数要像样的多。 我没有立马开始写,而是在那里发呆,我在想他想从我这里了解到什么? 至少这个程序需要考虑到以下几个问题: 1、程序原理上的正确性,至少结果必须是100%正确的。 2、程序的性能,求 阅读全文
posted @ 2019-04-02 11:57 mcdull^0^ 阅读(225) 评论(0) 推荐(0)
摘要:机器字节存储有大端小端模式之分 大端模式与小端模式 大端模式(Big-endian)是指数据的低位保存在内存的高地址中,而数据的高位保存在内存的低地址中. 小端模式(little-endian)是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。 一般涉及到网络编程的时候可能涉及到 阅读全文
posted @ 2019-04-02 11:08 mcdull^0^ 阅读(585) 评论(0) 推荐(0)
摘要:最近项目需要一个类似于Android上广播通信机制,方便多进程间相互通信,可以是一对多,多对一,或者多对多。 大致如下 Linux现有的进程间通信能用的只有 管道 消息队列 信号量(这个还只能算同步机制) 套接字 但是这几种几乎都只能在两个进程间来回传递,如果要实现多进程间相互通信,需要自己实现一个 阅读全文
posted @ 2019-03-28 10:18 mcdull^0^ 阅读(2418) 评论(0) 推荐(0)
摘要:热插拔事件是从内核空间发送到用户空间的通知,一般这时候系统配置出现了变化,比如插入/移除耳机,插入/移除SD卡或者USB存储设备等。 热插拔事件默认会调用/sbin/hotplug来加载驱动程序,创建设备节点等。 如果执行该动作的不是/sbin/hotplug,比如,很多都用mdev来做热插拔的处理 阅读全文
posted @ 2019-03-27 16:57 mcdull^0^ 阅读(1427) 评论(0) 推荐(0)
摘要:今天在交叉编译某个编解码库过程中碰到一个configure错误 运行configure的时候设置了一些配置项目 运行结果报错如下: 从我的配置意图来看g++是配置给CPP也就是C++的编译器,C的编译器配置的是gcc,从报错信息来看明显是把我的C++的编译器配置给了C,以前这样配置没碰到这种错误,于 阅读全文
posted @ 2019-03-13 18:07 mcdull^0^ 阅读(2796) 评论(0) 推荐(0)
摘要:最近在做一个wifiap设置的接口,用户首先获取到当前wifi 热点的ssid 和pwd,然后修改,保存。 获取信息的时候是fopen对应的hostapd.conf文件,逐行读取,查找匹配的参数。 修改的时候则是逐行读取当前hostapd.conf文件,逐行写到新的临时配置文件里面,如果匹配到ssi 阅读全文
posted @ 2018-07-21 12:49 mcdull^0^ 阅读(745) 评论(0) 推荐(0)
摘要:最近在搞进程间通信,首先在我的ubuntu 14.04上写了接口和测试demo,编译和执行都OK,,代码如下: 接口文件ipcmsg.h #include <sys/types.h>#include <sys/ipc.h>#include <sys/msg.h>#include <ipcmsg.h> 阅读全文
posted @ 2018-07-07 11:31 mcdull^0^ 阅读(1215) 评论(0) 推荐(0)
摘要:最近在弄一个进程间通信,原始测试demon用c语言写的,经过测试ok,然后把接口封装起来了一个send,一个recv。 使用的时候send端是在一个c语言写的http服务端使用,编译ok没有报错,但是recv的使用在QT里面是C++的,编译的时候出现 undefined reference to ` 阅读全文
posted @ 2018-07-06 10:26 mcdull^0^ 阅读(381) 评论(0) 推荐(0)
摘要:最近有关wifi热点的驱动,启动参数都调试完了,验证可以连接传输数据。 首先要在系统启动脚本中插入wifi驱动,配置wlan0的ip 今天就把wifi ap的start stop脚本给整理了。 经过测试以上脚本可用。 阅读全文
posted @ 2018-06-22 16:47 mcdull^0^ 阅读(401) 评论(0) 推荐(0)
摘要:之前用飞线用旧板子飞线连接了一个wifi模块到usb0口上,调试ok的,现在新设计的板子回来了,wifi模块是连接在usb2口上的,系统起来后发现wlan0不存在,用lsusb查看wifi模块的usb设备竟然没有识别到。 [root@t3_p3 /]# lsusbBus 001 Device 001 阅读全文
posted @ 2018-06-21 10:37 mcdull^0^ 阅读(3067) 评论(0) 推荐(0)
摘要:最近在调试arm与外设iic通讯是,想来个投机取巧,先不写单独的驱动,直接通过iic bus设备是否可以连接到外设,然后发现在板子上找不到“/dev/i2c-n”的设备,标准的系统应该都是有的。 回去看内核驱动 代码位于 lichee/linux-3.10/drivers/i2c/ 查看其中的Mak 阅读全文
posted @ 2018-05-30 18:19 mcdull^0^ 阅读(2369) 评论(0) 推荐(1)
摘要:最近有个项目需要实现快速开机出摄像头预览(2s内),但是我的板子linux上的qt应用起来都要10s左右了,于是在硬件上增加了一个屏驱芯片TW8836,这是一个mcu,可以直接获取摄像头数据送到lcd显示。 板子上电后首先由8836点亮屏幕并输出摄像头预览,待arm起来后控制8836切换显示,883 阅读全文
posted @ 2018-05-30 18:02 mcdull^0^ 阅读(2513) 评论(0) 推荐(0)
摘要:2018-05-30 14:12:46 于深圳南山科技园 最近有个项目,客户需要通过手机app通过机器wifi热点连接,从而实现对机器的设置及视频的实时预览等各种功能。这两天一直在搞rtl8188eu的wifi热点,驱动服务都搭建好了,但是出现设置密码后无法连接,折腾了好几天也没找到原因及解决办法, 阅读全文
posted @ 2018-05-30 14:14 mcdull^0^ 阅读(4961) 评论(2) 推荐(0)
摘要:再给ubuntu系统重启网络服务的时候出现失败,“stop: Job failed while stopping start: Job is already running: networking” 试了好几种方法都不行一直失败,不知道是什么原因导致。 最后因为已经知道了进程的pid号,所以可以直接 阅读全文
posted @ 2018-05-29 16:36 mcdull^0^ 阅读(3470) 评论(1) 推荐(0)
摘要:最近在编译libnl库准备拷贝到其他机器中使用的时候出现无法拷贝问题,原因是sd卡是fat32文件系统格式,这种文件系统不支持linux下的ln软链接文件, 于是只好先将整个文件夹打包,拷贝到别的机器上后再次解压即可 阅读全文
posted @ 2018-05-29 16:30 mcdull^0^ 阅读(1494) 评论(0) 推荐(0)
摘要:最近在搞机器上的wifi热点,需要移植一大堆东西,如hostapd\wpa_suppliant、dhcp等,这些玩意又依赖其他的一大堆库的移植,比如libnl,openssl等,今天在移植编译libnl-3.4.0出现报错“Relocations in generic ELF (EM: 40)” 详 阅读全文
posted @ 2018-05-29 16:23 mcdull^0^ 阅读(5907) 评论(0) 推荐(0)
摘要:今天在调试wifi热点启动hdcpd服务时出现报错"bad subnet number/mask combination. subnet 192.168.1.1", 找到对应配置如下 原因是subnet网络地址最后一位必须是0,修改如下 阅读全文
posted @ 2018-05-29 15:45 mcdull^0^ 阅读(1686) 评论(0) 推荐(0)
摘要:今天在调试机器的WIFI热点,好不容易把dhcp编译打包进去,服务启动出现报错No subnet declaration for wlan0,详细信息如下: 经过排查分析,确认是dhcpd.conf中配置的网络与给wlan0的网络配置存在冲突,不在同一个网段内: /etc/dhcpd.conf配置网 阅读全文
posted @ 2018-05-29 15:27 mcdull^0^ 阅读(2150) 评论(0) 推荐(0)
摘要:最近在一个项目上执行文件的搬移功能时发现总是失败,临时录像文件存放于emmc的/tmp/目录下,当录像完成时候则调用rename企图将此文件搬到/mnt/sdcard/mmcblk1p1/(这是外置的sd卡)上面,但是每次执行rename的时候都返回失败了。 man 2 rename解释如下: EF 阅读全文
posted @ 2017-02-23 12:57 mcdull^0^ 阅读(961) 评论(0) 推荐(0)