天天看点

bj

8月20

vim/gvim
什么是vim/gvim,如果看官连vi都不知道,那就别往下看了。一些对Linux一知半解的人说,vi不就是一个和Win下的note pad一样的工具吗?其实大错特错了,如果仅仅是和note pad一样的功能,那它早就不叫vi了。

Taglist
Taglist是一个vim的源代码浏览插件,具体功能介绍还烦请各位看官自己google一下。很多事情还需要亲身经历才有用,别人代劳是不行的。

需要安装这个插件,插件下载地址:Taglist下载地址

http://www.vim.org/scripts/script.php?script_id=273

里面有很多版本,可以下载目前最新版本:http://www.vim.org/scripts/download_script.php?src_id=7701

下载后,首先解压,怎么解压?自己想办法吧。
然后在用户主目录下建立一个隐藏文件夹.vim,并将Taglist解压得到的目录中的plugin复制到.vim目录中。当然,连同其他目录一同复制进去也没有问题。

Ctags
Ctags是一个用于生产tags文件的软件。下载地址,还是上网搜搜吧,还是说了吧:http://ctags.sourceforge.net。
下载有进行解压编译安装即可。怎么解压编译安装?当然,比Win下直接双击setup.exe要复杂一些,但是不同世界有不同规则,没有办法,呵呵。

如果在ubuntu下,直接使用 新立得 进行安装即可,不再介绍,是不值得介绍。

阅读源代码
首先进入准备查看的源代码的目录,先生成一个tags文件。
$ ctags -R

然后使用vim打开一个C文件。如果要想知道某个人函数或者结构体在什么地方,只要将光标移动到函数上,然后按住CTRL+]即可,看完后安CTRL+O又会回到原来的地方。

查看函数列表。还需要启动Taglist,在Vim的命令状态输入:TlistToggle,在Vim界面的左面就会出现函数列表。安CTRL+WW(2次W),可以切换到函数列表区,移动到函数名称行后按ENTER即可查看函数代码。

gvim
可 能很多看官对vim的命令操作不熟悉,或者不习惯键盘操作,那就可以使用gvim加上以上两个工具即可。只要使用gvim打开C文件,然后启用函数列表, 直接双击函数名称就会跳转到函数处。按住CTRL+鼠标左右键即可跟踪或者回退,操作更加方便,比Win下很多工具还要



1.taglist注意:taglist依赖于ctags,所以要先装ctags,否则taglist装了也没法用!(1)将taglist_45.zip解压得到的两个文件夹:doc和plugin 放到 ~/.vim文件夹里面,如果主目录下没有这个隐藏的文件夹,就建一个。(2)plugin/taglist.vim – taglist插件doc/taglist.txt - taglist帮助文件(3)常用快捷键ctrl+ww    在列表和源文件中切换ctrl + ]     查看函数定义ctrl + o     返回上一级文件。gf             查看头文件gd        转到当前光标所指的局部变量的定义处。*        转到当前光标所在单词的下一次出现的地方。#        转到当前光标所在的单词的上一次出现的地方。<CR>          跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样   o             在一个新打开的窗口中显示光标下tag   <Space>       显示光标下tag的原型定义   u             更新taglist窗口中的tag   s             更改排序方式,在按名字排序和按出现顺序排序间切换  x             taglist窗口放大和缩小,方便查看较长的tag    +             打开一个折叠,同zoctags常用快捷键ctags常用快捷键   -             将tag折叠起来,同zc   *             打开所有的折叠,同zR   =             将所有tag折叠起来,同zM   [[            跳到前一个文件  ]]            跳到后一个文件 q             关闭taglist窗口  
taglist 窗口ENTER 
2.ctags(1)安装ctags : sudo apt-get install ctags(2)使用ctags -R      对当前目录下的文件递归产生tags文件。ctags file.c(3)在.vimrc文件中添加配置:TlistToggle 或 :Tlist     显示函数列表在.vimrc文件中加上键盘映射map <F8> :Tlist<CR>这样我就可以使用快捷键F8直接进入tlist模式了。这里注意<F8>和 : 之间有空格的。在.vimrc下加入一下两行set tags=tags;set autochdir这样使用tags时可以首先在当前目录下查找tags文件,如果没有则转到父目录查找。依次向上。查看帮助文件:help helptags:help taglist.txt3.cscope(1)仔细阅读了cscope的手册后发现,原来cscope在产生索引文件时,只搜索类型为 C, lex和yacc的文件(后缀名为.c, .h, .l, .y),C++的文件根本没有生成索引。不过按照手册上的说明,cscope支持c++和Java语言的文件。于是按照cscope手册上提供的方法,先产生一个文件列表,然后让cscope为这个列表中的每个文件都生成索引。为了方便使用,编写了下面的脚本来更新cscope和ctags的索引文件: #!/bin/sh  find  . -name "*.h" -o -name "*.c" -o -name "*.cc" > cscope.files  cscope  -bkq -i cscope.files  ctags  -R       -R : 在生成索引文件时,搜索子目录树中的代码 -b : 只生成索引文件,不进入cscope的界面 -k : 在生成索引文件时,不搜索 / usr / include目录 -q : 生成cscope . in . out和cscope . po . out文件,加快cscope的索引速度将这个脚本保存到/usr/local/bin/cscopes.sh,以后就可以在源代码目录下使用sudo bash cscope.sh命令直接生成索引拉!(2)cscope常用快捷键:先按 ctrl+\ 然后  c: 查找该函数被调用的位置  d: 查找该函数调用了哪些函数  e: 查找指定的正规表达式 f: 查找指定的文件  g: 查找指定标识符的定义位置  i: 查找该文件在哪些地方被包含  s: 查找指定标识符的使用位置  t: 查找指定的文本字符串

10月18

ircut日夜模式相关




白天:day_night_mode=0
晚上:day_night_mode=1
自动:day_night_mode=2
/dm368/ipnc_rdk/av_capture/framework/alg/src/alg_aewb_control.c  白黑
            571 ALG_aewbSetDayNight

/home/hsp/dm3683/ipnc_rdk/av_capture/application/ipnc/av_server/src/video/video2aThr.c
 122 VIDEO_aewbTskRun 
            ALG_aewbRun  1072
                   ALG_aewbSetDayNight 1123
av_capture/framework/drv/usermod/src/imgs_IMX122_CXD4191/drv_imgs_IMX122_CXD4191.c
      DRV_imgsGetDayNightStatus() 获得日夜模式




av_capture/framework/drv/usermod/src/imgs_IMX122_CMD4191/drv_imgs_IMX122_CXD4191.c
DRV_ispInit


DAY_N_HOLD  0
DNCNT_TH_ND 1
DNCNT_TH_ND 1
DAY_N_TH_A 17c3
DAY_N_TH_B 0584








av_capture/application/ipnc/av_server/src/common/avServerUi.c

 
其他
恢复默认:sys_cmd=load_default
/dm368/ipnc_rdk/ipnc_app/sys_server/src/system_control.c/   213   SetDefault



最大曝光时间增加两项:1/8000 --- 13, 1/10000 --- 14
nc_rdk/ipnc_app/network/boa-0.94.13/src/appro_api.c/appro_api.c    set_maxexposure   



抓包:
host 192.168.0.65 and port 80
(ip.src==192.168.0.65&&ip.dst==192.168.0.249)||(ip.src==192.168.0.249&&ip.dst==192.168.0.65)

烧写:
1.按照给的sdk开发包和文档,编译烧录,程序能够正确运行;xvf
--1.参照/home/lms/.bashrc修改自己的环境变量;
   ..bashrc(source .bashrc)
--2.进入ipnc_rdk/,执行make sysclean   	make sysall编译通过;

2.配置nfs运行模式ok;
--1.配置/etc/exports,/home/hsp/rootfs *(rw,sync,no_root_squash,no_all_squashp/rootfs)

service nfs restart重启nfs服务;
--2.复制文件系统:cp -rfa target/filesys ~/rootfs
--3.u-boot中修改bootargs参数支持nfs启动;