导航

    全志在线开发者论坛

    • 注册
    • 登录
    • 搜索
    • 版块
    • 话题
    • 在线文档
    • 社区主页
    1. 主页
    2. iamseer
    I
    • 资料
    • 关注 0
    • 粉丝 0
    • 我的积分 570
    • 主题 3
    • 帖子 5
    • 最佳 1
    • 群组 0

    iamseerLV 4

    @iamseer

    570
    积分
    1
    声望
    1
    资料浏览
    5
    帖子
    0
    粉丝
    0
    关注
    注册时间 最后登录

    iamseer 取消关注 关注

    iamseer 发布的最佳帖子

    • 回复: 请教OV9281摄像头在V851SE的Tinyvision板子上的移植。

      更新一下,
      这两份教程对于驱动编写很有帮助

      Tina Linux Camera开发指南
      https://www.cnblogs.com/weidongshan/articles/17183702.html

      全志Linux Tina-SDK开发完全手册
      https://tina.100ask.net/SdkModule/Linux_MIPI_CSI_DevelopmentGuide-05/

      我的配置里没有 info->time_hs 项。加入后调为0x30,仍然不出图。但是改为0x20,就可以出图了。

      发布在 V Series
      I
      iamseer

    iamseer 发布的最新帖子

    • 请问V851se的NPU是否可以做通用并行计算?

      你好,我看到NPU的介绍上提到支持OPENCL等框架。但是我没有找到任何介绍和例程。请问V851se的NPU是否可以配置成执行自定义并行代码的模式?

      发布在 V Series
      I
      iamseer
    • 回复: 请教OV9281摄像头在V851SE的Tinyvision板子上的移植。

      更新一下,
      这两份教程对于驱动编写很有帮助

      Tina Linux Camera开发指南
      https://www.cnblogs.com/weidongshan/articles/17183702.html

      全志Linux Tina-SDK开发完全手册
      https://tina.100ask.net/SdkModule/Linux_MIPI_CSI_DevelopmentGuide-05/

      我的配置里没有 info->time_hs 项。加入后调为0x30,仍然不出图。但是改为0x20,就可以出图了。

      发布在 V Series
      I
      iamseer
    • 请教OV9281摄像头在V851SE的Tinyvision板子上的移植。

      我这边需要实现200帧以上的灰度图抓取,所以选用了OV9281摄像头。但是由于没买到引脚顺序一致的摄像头,所以自己用扩展板焊了一个,飞线确实可能影响信号完整性,正经的等长板子在打了,需要几天才能寄来。暂时先用这个测。
      PXL_20240510_091851565.jpg
      驱动的部分是用默认的GC2053改的,参考了Rockchip的OV9281驱动。附上DTS和驱动文件(没改完):

      ov9281_mipi.c
      board.dts

      目前/dev/video0出现了,使用camerademo也能看到I2C通讯和MIPI输出。

      Screen Shot 2024-05-13 at 12.53.31 AM.png

      但是报错
      [CAMERA_ERR] camera0 select timeout,end capture thread!
      帧率显示为0

      我尝试观察了MIPI的输出,把逻辑分析仪挂到FPC连接器17,18脚,即DP0,DN0。能看到LP向HS转换时的LP01状态,所以正反应该没接错。另外通过修改传感器寄存器,可以让DP1,DN1不输出,也可以让CP和CN进入Gated clock观察到LP01。所以接线应该没有错。

      我怀疑问题还是在时序上,目前寄存器配置PLL1 pix clk为800M,PLL1 sys clk为80M。所以我猜测像素时钟是80M,每lane的输出是800Mbps (初次调MIPI不一定对)。

      Rockchip里对于1280x800x30fps的设置是:
      #define OV9282_VTS_30_FPS 0xe48
      #define OV9282_HTS_30_FPS 0x2d8
      那3656(E48)*728(2D8)*30 = 79.84M,似乎和80M的时钟能对上。
      只是728比800还少,不太明白为什么,但很多驱动都是用这个数。

      突发的数据传输每33.3ms一次,应该对应是30帧。
      Screen Shot 2024-05-13 at 1.48.02 AM.png
      其中突发的传输是7.4ms,802个下降沿,应该对应800的分辨率。至于7.4ms,我实在算不出这个数据是和什么对应。

      进一步放大图像,这应该是每一行的传输。
      Screen Shot 2024-05-13 at 1.52.50 AM.png
      空闲为14.3us,传输为8.4us。这两个数据我也没有算出对应的设置。

      另外摄像头卖家提供的驱动似乎来自君正,
      hts 0x5b0=1456
      vts 0x71c=1820
      此时800个LP模式的空闲为14.56ms,占33.33ms的比例与800/1280基本一致。
      但是每个LP为9.8us,后面高速数据为8.3us,这个数据我也没有算出对应的设置。

      这两种hts和vts设置都有camera0 select timeout错误。还烦请有经验的前辈分享一下经验和建议。

      发布在 V Series
      I
      iamseer
    • 分享 TinyVision 板子SDK编译的docker文件

      最近折腾了两天终于搞定了SDK编译,而且成功生成了img也烧录启动了。分享兼备份一下docker文件。毕竟docker比vmware这类的方便迁移多了。

      这里我跳过docker的介绍和安装过程。首先需要确认docker的内存要给足。我观察到编译到opencv的dnn模块时内存占用能上升到26G,如果内存不够,编译会失败。我使用的这台电脑有16G内存而docker默认是使用50%的内存以及25%的swap空间。这样一共12G是不够的。我设置内存分配12G和20G的swap空间,这样一共32G,可以编译。

      另外说明一点,这台主机的所有源全部可以直连,如果你不能的话需要添加或者更改源。另外Dockerfile里面的用户名密码要改成你的。

      如果你不用docker,也可以参考一下Dockerfile来手工安装。

      Dockerfile

      Compose.yaml

      容器启动以后,首先可以执行top看看内存和swap够不够。然后依次执行:

      # supress some git warning
      git config --global --add safe.directory /tina-v853-open/brandy/brandy-2.0/u-boot-2018
      source build/envsetup.sh
      echo "Y" | lunch v851se-tinyvision-tina
      # setup needed, can just save and exit
      m menuconfig 
      # for debug: make -j1 V=s
      make -j4
      pack
      #then copy the compiled img to host and use Phoenixcard 
      

      然后就可以把生成的img文件复制到主机上,然后用Phoenixcard烧写TF卡。如果你是用随附的yaml构建容器,那复制到/opt/script里就能出现在主机里了。

      另外附上Dockerfile内容,谨防附件失效。

      # Use the Ubuntu 20.04 minimal image as the base
      FROM ubuntu:20.04
      
      # Set environment variable to prevent tzdata asking for geographic area
      ENV DEBIAN_FRONTEND=noninteractive
      
      # Install any dependencies or packages required by your application
      RUN apt-get -y update
      
      # install dependencies
      RUN apt-get install -y build-essential subversion git libncurses5-dev zlib1g-dev gawk flex bison quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip lsof python3 python2 python3-dev android-tools-mkbootimg python2 libpython3-dev
      
      # add i386 architecture
      RUN dpkg --add-architecture i386
      RUN apt-get update
      RUN apt-get install -y gcc-multilib 
      RUN apt-get install -y libc6:i386 libstdc++6:i386 lib32z1
      
      # Install Repo tool
      RUN curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/local/bin/repo
      RUN chmod a+x /usr/local/bin/repo
      
      # Start to set up the tina-v853 SDK
      RUN mkdir /tina-v853-open
      WORKDIR /tina-v853-open
      
      # # set up git credential
      RUN git config --global credential.helper store
      
      RUN git config --global user.name "名字"
      RUN git config --global user.email "邮箱"
      
      # Add credentials to credential store
      RUN echo "https://aw-ol的用户名:aw-ol的密码@sdk.aw-ol.com" > ~/.git-credentials
      
      ENV REPO_COLOR=0
      
      #initialize the repo
      RUN repo init -u https://sdk.aw-ol.com/git_repo/V853Tina_Open/manifest.git -b master -m tina-v853-open.xml
      
      #sync the repo, took about 30 minutes in midnight
      RUN repo sync
      
      #start SDK
      RUN repo start devboard-v853-tina-for-awol --all
      
      RUN curl -LO https://github.com/YuzukiHD/TinyVision/releases/download/tina.0.0.2/tina-bsp-tinyvision.tar.gz
      
      RUN tar xvf tina-bsp-tinyvision.tar.gz
      
      #init SDK
      
      # Use bash to run commands
      RUN apt-get install -y python wget rsync vim bc u-boot-tools cpio busybox
      
      #RUN ls openwrt/package/allwinner/vision/libAWIspApi/machinfo/v851se/
      #make sure it exists
      RUN cat openwrt/package/allwinner/vision/libAWIspApi/machinfo/v851se/build.mk
      
      #root can compile
      ENV FORCE_UNSAFE_CONFIGURE=1
      
      
      
      发布在 V Series
      I
      iamseer
    • 回复: 【水经验混下载权限专用贴】如何升级LV2拉取SDK

      我也水一条吧。。

      发布在 灌水区
      I
      iamseer