Navigation

    全志在线开发者论坛

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • 在线文档
    • 社区主页
    1. Home
    2. q1215200171
    • Profile
    • Following 0
    • Followers 6
    • my integral 17650
    • Topics 263
    • Posts 401
    • Best 44
    • Groups 1

    budboolLV 8

    @q1215200171

    平平无奇搬运工

    17650
    integral
    68
    Reputation
    200
    Profile views
    401
    Posts
    6
    Followers
    0
    Following
    Joined Last Online
    Location everywhere

    q1215200171 Unfollow Follow
    Global Moderator

    Best posts made by q1215200171

    • 【送开发板啦】百问科技基于全志D1-H定制的开发板——东山哪吒STU第一堂系统开发直播课堂

      DONGSHANSTU.jpg

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 【FAQ】全志XR806芯片FAQ汇总(你不知道的和你想知道的的这里都有)

      01、【FAQ】全志XR806芯片 系统异常重启如何解决?
      02、【FAQ】全志XR806芯片 如何更换打印log口?
      03、【FAQ】全志XR806芯片 为什么开机时候串口以及部分gpio会有电平跳变?
      04、【FAQ】全志XR806芯片 mac地址要如何存放以及如何获取?
      05、【FAQ】全志XR806芯片 固件烧录完成后,程序不是预期烧录程序或者甚至无法启动如何解决?
      06、【FAQ】全志XR806芯片 如何使用timer命令行命令?
      07、【FAQ】全志XR806芯片 如何修改中断优先级?
      08、【FAQ】全志XR806芯片 如何设置AP模式默认IP地址、子网掩码、网关?
      09、【FAQ】全志XR806芯片 低功耗蓝牙BLE断开连接错误码和分析?
      10、【FAQ】全志XR806芯片 select引发崩溃如何解决?
      11、【FAQ】全志XR806芯片 如何打开 LwIP 调试信息?
      12、【FAQ】全志XR806芯片 执行扫描动作时,偶尔会扫描不到目标的AP如何解决?
      13、【FAQ】全志XR806芯片 如何解决编译错误undefined reference to?
      14、【FAQ】全志XR806芯片 standby模式下gpio的电平状态是如何变化?
      15、【FAQ】全志XR806芯片 如何清除扫描列表缓存?
      16、【FAQ】全志XR806芯片 RTC时钟不能跑、有时候时间不准是什么原因?
      17、【FAQ】全志XR806芯片 如何使用watchpoint功能?
      18、【FAQ】全志XR806芯片getsockopt、setsockopt失败如何解决?
      19、【FAQ】全志XR806芯片 串口修改波特率后与目标波特率不匹配如何解决?
      20、【FAQ】全志XR806芯片 Xradio Skylark 中的无线网络回调事件含义
      21、【FAQ】全志XR806芯片 如何使用phoenixMC软件把应用固件与etf固件合并在一起?
      22、【FAQ】全志XR806芯片 RF参数是如何保存的?
      23、【FAQ】全志XR806芯片 汇编代码调试技巧
      24、【FAQ】全志XR806芯片 如何解决第三方静态库函数符号重复?
      25、【FAQ】全志XR806芯片 如何创建自定义状态回调函数?
      26、【FAQ】全志XR806芯片 如何获取ap的rssi值?
      27、【FAQ】全志XR806芯片 XR806如何添加本地音频到flash?
      28、【FAQ】全志XR806芯片 XR MCU的外设驱动为什么修改无效?
      29、【FAQ】全志XR系列 XRMCU如何播放xip中的音频?
      30、【FAQ】全志XR系列 XRMCU如何修改录音编码器的输入数据?
      31、【FAQ】全志XR系列 如何调试wifi频偏问题?
      32、【FAQ】全志XR系列 如何统计XRMCU的内存使用情况
      33、【FAQ】全志XR系列 设置音频结构体HttpStreamBufferConfig成员有什么意义?
      34、【FAQ】全志全系列芯片 APST平台无法下载或者更新工具
      35、【FAQ】全志XR806 Freertos+XRMCU+ADC采样频率偏低
      36、【FAQ】全志XR806 Freertos + XRMCU +ADC采样数值不准
      37、【FAQ】全志系列芯片如何把flash擦成空片?
      38、持续更新....

      posted in XR系列-无线互联
      q1215200171
      budbool
    • 开发者成长计划正式上线!一起争做社区”高手“!

      相信大家都已经发现社区有了一点小小的变化,头像下方多了个金闪闪的大V,通知栏有积分获取的通知,发帖、评论、点赞所有行为都有了实时的反馈,这其实就是全志在线社区为开发者们全新设立的开发者成长计划。

      积分制横图.png

      开发者成长体系是以成长值作为核心衡量指标的激励体系,成长值获取公式为:成长值= 20%活跃 + 80%贡献,成长值是根据开发者在论坛中的行为,结合活跃与贡献进行的综合评价,成长值即决定了开发者在社区的用户等级,积分与成长值一同获取,在不久的将来将会上线积分商城,获取的积分可以兑换包括开发板在内的精美礼品,只要在论坛足够活跃,有足够多的贡献,心爱的板子再也不用花998,用积分兑换也可以把他带回家。

      积分细则如下:
      积分制度长图2.png

      积分、等级及积分记录查看方式如下:
      E3A8A39D-F4C5-4877-BF87-B91F1B321E5F.png 64CB6BB4-1A97-4e9b-B835-C1921A11E4CE.png
      562A7EC0-0AE1-42c7-92E6-B97AAB19E995.png

      posted in 公告
      q1215200171
      budbool
    • 【优秀毕设分享】基于全志D1-H和XR806的名贵植物监控装置

      前言

      “42A4D9C6-E89F-43f8-90BA-BE9BC19CE174”为智能对象-1.jpg

      该毕业设计是使用全志D1-H哪吒开发以及XR806开发板,再辅以外围的各种电路和传感器原件,制作而成的一个名贵植物监控装置。

      95BAC021-ED3C-4b1d-8CB2-3FC79EA00ABD.png

      该装置使用了XR806开发板构成一个网络节点,作为采集端,并且还连接了多个传感器进行环境参数的采集,并使用socket服务将采集到的数据发送到服务端。另一边使用了D1-H哪吒开发板作为服务端,D1-H哪吒开发板连接了摄像头实时采集图像,并使用基于yolov5的方法分析叶片状态,判断叶片的健康度并作为服务器,将传感器传回的数据进行分析与显示。服务器根据分析的结果,能够对XR806发出指令,在缺水的时候能够及时补水,光照不足的时候进行补光。

      总1.png

      图片4.png

      技术栈运用

      D1-H开发板负责完成服务器收发信息、信息显示、光照控制、图像处理,涉及技术内容:

      • LVGL图形框架
      • Linux下Socket接口
      • Linux下多线程技术
      • cJSON解析器
      • YOLOV5目标检测
      • ......

      XR806开发板负责完成环境参数采集、光照控制、水泵控制,涉及技术内容:

      • LwIP协议栈
      • IIC总线
      • DHT11单总线
      • PWM调制
      • ADC采集
      • ......

      XR806端设计

      XR806主控的系统由传感器采集部分、电源部分和控制部分组成。传感器部分负责采集环境信息,电源部分主控供电,控制部分则根据系统的信息对特定的环境参数(LED灯,水泵)进行控制。

      1.png

      实物示意图.jpg

      充电电路

      因为电池的电压会随着点亮的变化会有一定幅度的改变,所以需要将其稳定下来才能使用。电源部分就是使用了一个AMS1117芯片,将锂电池输出的不稳定电压稳定到3.3V,给XR806开发板及传感器供电。AMS1117是一个正向低压降的线性稳压器,压降较小。其内部集成了过热保护功能与限流电路,能有效地保护电路的正常运行,是便携式设备稳压器的理想选择。

      图片7.png

      光线、温湿度控制

      补光控制主要使用了PWM调光技术。控制代码主要是控制PWM输出的占空比来调节光照的强度。在XR806中,首先初始化PWM的硬件,使用的是pwm_cycle_mode_Set(0)和pwm_capture_mode_set()函数。函数里主要配置的是相关的初始化结构体参数、PWM的频率、输出模式和占空比。初始化结束后,只要调用设置占空比的函数,即可设置占空比。结合光照传感器的控制,就可以将局部的光强控制在一定的范围内,也就是植物合适的光照。

      补水部分主要配合土壤湿度传感器来进行工作。土壤湿度传感器获取到土壤湿度数据后,XR806中会进行一个判断,如果ADC采集到的电压大于一定的阈值,则启动继电器,驱动水泵进行工作,将水抽到花盆中。而显示屏上,就可以看到土壤上是处于湿润还是干燥的状态。

      DB237D7E-9BE1-491c-A8D1-98F5A211D8DD.png

      温湿度、光照、土壤传感器均连接在XR806上,这里取三组传感器的采集数据与标准仪器采集的数据进行比对,由两个测试点作为对照,测量出两组光照强度。对比可以看出,总体误差不大,满足了装置的要求。

      微信图片_20220728162808.jpg

      D1-H与XR806通信

      白色圆圈.jpg

      TCP服务器的设计主要是能够保证D1-H与XR806稳定地进行连接,并在XR806断开后还能够继续等待XR806的重新连接。这边借鉴了github上的一个开源的socket服务器代码,它使用了多线程的技术,并能够承受住较大的服务器压力,非常适合本装置的使用。

      调试的基本过程如下,首先使用D1-H开发板连接上一个WiFi,然后用XR806也连接上同一个WiFi,在D1-H上启动服务器的代码,然后,启动XR806作为客户端进行连接。经过多次测试,D1-H开发板这边服务器运行非常稳定,下位机断开后会重新等待连接,在下位机重新启动后能非常迅速的进行重连。并且,在Linux下,可以使用system(wifi_info)函数来调用命令行,只需要将命令作为一个字符数组保持,就可以在程序中使用命令行操作,非常方便。本装置中连接WiFi的部分就是用这个方法,调用命令行来连接WiFi的。

      D1-H服务端设计

      D1-H主控的服务端软件设计根据项目所需要的功能分为三大部分。第一部分是图形界面的设计,采用的是LVGL,主要用于显示温度、湿度等数据;第二部分是TCP服务器的设计(已于上一部分介绍),用于上下位机之间的数据传输与通信;第三部分是图像处理部分,使用了YOLOV5+NCNN。

      040A0770-33A3-45cf-868A-E1CC7D4A703F.png

      数据显示界面

      图形界面使用的是LVGL。LVGL的作者是来自匈牙利的Gabor Kiss-Vamosikisvegabor,LVGL用C语言编写,具有很强的兼容性(并且与C++兼容),模拟器可在没有嵌入式硬件的PC上启动嵌入式GUI设计,同时LVGL作为一个图形库,它自带着接近三十多种小工具可以供开发者使用。这些强大的构建块按钮搭配上带有非常丝滑的动画以及可以做到平滑滚动的高级图形,同时兼具着不高的配置要求以及开源属性,成为广大开发者在选择GUI时的第一选择。

      根据系统的需求,图形界面需要能够显示下位机传上来的数据,而LVGL中可以使用文本控件进行数据的显示。显示图片可以使用一个图像控件配合PNG解码器进行显示。首先,需要创建两个基本控件对象,一个用于停靠采集处理后图像的图像控件,一个是停靠数据显示子控件的控件。在图像控件上,停靠了一个图像,即采集处理后的图像;在数据显示区上,放置了一系列的控件来展示环境参数信息;上边还有用于控制光照强度和水泵的开关。

      LVGL.jpg

      图像处理

      图像处理部分主要是YOLOV5的使用。使用之前,首先要训练针对特定场景的模型。首先需要创建自己的数据集,数据集分为两个部分,图像文件和标签文件。图像文件就是包含了待检测目标部分的图片和不带待检测目标的图像,分别作为正负样本进行训练。标签文件包含了检测目标的信息,标签文件的形式如下表4.2所示。一行数据代表了图像中的一个目标,若文件中含有多行数据,则表明图像中有多个目标。标签文件需要自己对需要检测的目标做标注。

      79F3E3BD-6B21-4c81-AFF8-08AE4E12A35B.png

      有一个比较特别的是,YOLOV5的标签格式是txt后缀的,不是我们常见的xml格式后缀的,需要自己编写代码进行转换。准备好了图像和标签后,还需要保证每个标签与图像的名称一致。准备就绪后,就可以调用train.py文件进行训练。在训练的时候,需要指定一些参数,如下图所示

      E54A0F8E-B65F-481e-8B40-C02AC54D7C9B.png

      启动训练后,电脑会自动开始训练。训练完成后,我们可以看到目标训练结果保存的位置,有一个pt格式的文件。然后可以用detect.py文件来做一个测试,将加载的权重文件换成刚刚训练结束生成的权重文件。detect程序会使用这个文件进行检测,最后会输出一张结果图。从结果图中就可以看出目标检测的结果。

      毕设开题PPT、答辩PPT、论文全文及相关源码将在全志在线开发者社区开源
      毕设开题PPT、答辩PPT、论文全文及相关源码将在全志在线开发者社区开源
      毕设开题PPT、答辩PPT、论文全文及相关源码将在全志在线开发者社区开源
      毕设开题PPT、答辩PPT、论文全文及相关源码将在全志在线开发者社区开源
      毕设开题PPT、答辩PPT、论文全文及相关源码将在全志在线开发者社区开源

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 一条命令搞定全志XR806编译环境

      本文转自极术社区:https://aijishu.com/a/1060000000311849、

      XR806是全志科技旗下子公司广州芯之联研发设计的一款支持Wi-Fi和BLE的高集成度无线MCU芯片,基于安谋科技STAR-MC1架构,支持鸿蒙L0系统。

      全志科技同时也发布了一款XR806的开发板,具体长这样:
      1398772385-623c08aba9567.jpg

      之前有很多刚接触它的朋友,被编译环境难住了。

      最近正好有空,干脆把相关代码和编译工具都做了配置和集成,做了个容器给大家。

      系统是Ubuntu 20.04,OpenHarmony代码版本是1.0.1_release。

      项目地址:
      https://hub.docker.com/r/verdureorange/ubuntu_xr806/

      具体用法:
      装完Docker以后,docker run -it verdureorange/ubuntu_xr806:v1 /bin/bash

      如果你是Windows或Mac,可以下载Docker桌面版:
      https://www.docker.com/products/docker-desktop/

      主要代码在/root/xr806_openharmony/,大家可以直接在里面编译或调试。

      如果有不清楚的地方可以看以下视频,感谢前面很多开发者所做的工作。

      posted in XR系列-无线互联
      q1215200171
      budbool
    • 玄铁杯RISC-V大赛『三等奖』智能帘窗

      智能帘窗采用D1-H哪吒开发板为主控,D1-H哪吒与下位机各模块/传感器进行数据通信并进行数据的处理,并在最后依据处理后的数据来对风扇、电机、OLED屏幕等上位机硬件进行控制。

      5A41430C-5A76-4703-8CE5-5FE87AE1CA0A.png
      系统硬件架构

      PART01 方案及硬件

      29419E11-404A-4bbb-B393-FC83A5C897AC.png
      产品实物图

      模拟平常卧室,其可能存在的场景有:突然下雨、户外湿度过大关窗以及户外天气较好开窗通风等场景。以上相关场景需要获取许多数据从进行准确的判定,其中包括室内外温湿度,当前时间,室外是否下雨,窗户状态,窗帘状态以及户外光照强度等,下图为系统方案。

      图片11.png
      系统方案图

      本项目采用器材如下:

      • DHT11*2
      • 舵机*1
      • 普通步进电机*1
      • 雨滴传感器模块*1
      • PCF8591模块*1
      • 光纤传感器模块*1
      • OLED12864*1
      • 按键*4
      • 风扇*1

      PART02 功能描述

      首先系统上电后会显获取室内温湿度、可燃气体浓度、室外光照强度、温湿度以及是否下雨,自动关窗标识位,风扇标识位等信息(依靠”/project/”目录下的一些文件实现,例如“curtain”、“auto_window_flag”文件等),接着将读取本地存储的舵机以及步进电机的位置信息,四个按键(触控按键)分别对应窗户以及窗帘的开和关程度的控制,最后将室内外温湿度以及室外光照强度以及风扇开关状态和可燃气体浓浓度过高警告展示在OLED屏幕上。若室内可燃气体浓度超过阈值将默认打开风扇,并且此时是无法关闭的(手机APP操作),除非可燃气体浓度降低至阈值方可手动关闭风扇。

      4E938422-79AC-4a38-9C9B-5EAB988A180F.png
      OLED屏幕状态显示

      除此之外本项目还将使用本地WIFI/有线网络通过MQTT协议连接腾讯云物联网服务,用户可以查看本地状态信息并依据光照强度、室内外温湿度、下雨自动关窗户,云端/本地控制窗帘或窗户,此操作于手机APP(腾讯云提供)服务上完成。

      9F36884E-C47C-4d3d-8326-403080FC6F5B.png
      APP控制

      PART03 参赛团队

      南通大学“孤勇队” 队员:The_Qiang

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 【XR806开发板试用】系列之二 - I2C外设使用及控制OLED屏显示

      前言
      XR806硬件上支持SPI,I2C等其他外设接口,且DDR和FLASH,满足常见应用场景的开发,适合开发者进行方案评估、DIY或小规模产品研发使用。本篇文章,将使用到I2C接口,去控制OLED屏幕的显示。

      OLED屏幕规格: 0.96英寸 主控SSD1306 I2C接口 地址 0x3C
      XR806外设:I2C1
      

      创建工程
      参考device/xradio/xr806/ohosdemo目录下的wlan_demo,

      拷贝wlan_demo为xr806_oled,并同步修改ohosdemo和xr806_oled目录下的BUILD.gn。

      主要修改如下:

      1、device/xradio/xr806/ohosdemo/BUILD.gn

      group("ohosdemo") {
       deps = [
           #"hello_demo:app_hello",
           #"iot_peripheral:app_peripheral",
           #"wlan_demo:app_WlanTest",
           "xr806_oled:app_oled", #增加app_oled目标编译
       ]
      }
      

      2、device/xradio/xr806/ohosdemo/xr806_oled/BUILD.gn

      static_library("app_oled") {
         configs = []
      
         sources = [
        "main.c",
         ]
      
         cflags = board_cflags
      
         include_dirs = board_include_dirs
         include_dirs += [
          ".",
          "thirdparty/ssd1306/ssd1306",
          "//utils/native/lite/include",
          "//foundation/communication/wifi_lite/interfaces/wifiservice",
         ]
      
         deps = [
          "thirdparty/ssd1306/ssd1306:oled_ssd1306",
         ]
      }
      

      注意:

      • static_library代表生成静态库(.a)文件,其中包含main.c的静态库必须是app_打头,如app_hello,否则虽然可以编译成功,但无法生效;
      • ~~xr806_oled/BUILD.gn中静态库app_oled的命名,需要和ohosdemo/BUILD.gn中的一致;
      • thirdparty/ssd1306/ssd1306:oled_ssd1306 为依赖的开源库

      工程编译
      创建工程后,如果非首次编译,执行以下命令便可以编译:

      hb build
      

      编译如果遇到以下错误:

      [OHOS ERROR] /*
      [OHOS ERROR]  *
      [OHOS ERROR]  * Automatically generated file; DO NOT EDIT.
      [OHOS ERROR]  * XR806 SDK Configuration
      [OHOS ERROR]  *
      [OHOS ERROR]  */
      [OHOS ERROR] /*
      [OHOS ERROR]  *
      [OHOS ERROR]  * Automatically generated file; DO NOT EDIT.
      [OHOS ERROR]  * XR806 SDK Configuration
      [OHOS ERROR]  *
      [OHOS ERROR]  */
      [OHOS ERROR] {
      [OHOS ERROR]     "magic" : "AWIH",
      [OHOS ERROR]     "version" : "0.5",
      [OHOS ERROR]     "image" : {"max_size": "1532K"},
      [OHOS ERROR]     "section" :[
      [OHOS ERROR]   {"id": "0xa5ff5a00", "bin" :"boot_40M.bin", "cert": "null", "flash_offs": "0K", "sram_offs": "0x00230000", "ep": "0x00230101", "attr":"0x1"},
      [OHOS ERROR]   {"id": "0xa5fe5a01", "bin" :"app.bin", "cert": "null", "flash_offs": "32K", "sram_offs": "0x00201000", "ep": "0x00201101", "attr":"0x1"},
      [OHOS ERROR]   {"id": "0xa5fd5a02", "bin" :"app_xip.bin", "cert": "null", "flash_offs": "99K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x2"},
      [OHOS ERROR]   {"id": "0xa5fa5a05", "bin" :"wlan_bl.bin", "cert": "null", "flash_offs": "1170K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x1"},
      [OHOS ERROR]   {"id": "0xa5f95a06", "bin" :"wlan_fw.bin", "cert": "null", "flash_offs": "1173K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x1"},
      [OHOS ERROR]   {"id": "0xa5f85a07", "bin" :"sys_sdd_40M.bin", "cert": "null", "flash_offs": "1198K", "sram_offs": "0xffffffff", "ep": "0xffffffff", "attr":"0x1"},
      [OHOS ERROR]   {}
      [OHOS ERROR]  ]
      [OHOS ERROR] }
      [OHOS ERROR] 
      [OHOS ERROR] make[2]: *** [../../../../project/project.mk:520:image] 错误 255
      [OHOS ERROR] make[2]: 离开目录“/home/algo/openharmony/xr806/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc”
      [OHOS ERROR] make[1]: *** [../../../../project/project.mk:493:__build] 错误 2
      [OHOS ERROR] make[1]: 离开目录“/home/algo/openharmony/xr806/device/xradio/xr806/xr_skylark/project/demo/audio_demo/gcc”
      [OHOS ERROR] make: *** [Makefile:164:build] 错误 2
      [OHOS ERROR] you can check build log in /home/algo/openharmony/xr806/out/xr806/wifi_skylark/build.log
      [OHOS ERROR] /home/algo/.local/bin/ninja -w dupbuild=warn -C /home/algo/openharmony/xr806/out/xr806/wifi_skylark failed, return code is 1
      

      执行以下命令后,再次编译即可:

      cp  device/xradio/xr806/xr_skylark/project/demo/audio_demo/image/xr806/image_auto_cal.cfg  device/xradio/xr806/xr_skylark/project/demo/audio_demo/image/xr806/image.cfg
      

      编译后生成的镜像,便可以烧录验证。

      注:以上基础工程是基于wlan_demo,oled屏幕显示需要使用I2C外设和移植oled库

      库移植
      其实XR806本身自带了OLED主控为SSD1306的驱动(采用的是SPI接口方式),移植基于I2C接口的库也相对简单,可以参考开源库harmonyos-ssd1306,将其中的I2C相关头文件和API替换为XR806 OpenHarmony中的相关头文件和API,编译通过即可。

      其中涉及到BUID.gn的修改如下:

      static_library("oled_ssd1306") {
          sources = [
              "ssd1306.c",
              "ssd1306_fonts.c",
          ]
      
          include_dirs = [
              ".",
              "//kernel/liteos_m/kernel/arch/include",
              "//utils/native/lite/include",
              "//base/iot_hardware/peripheral/interfaces/kits",
          ]
      }
      

      开源库主要修改如下:

      #include "iot_i2c.h"
      #include "iot_errno.h"
      
      /**
       * @brief Defines I2C data transmission attributes.
       */
      typedef struct {
          /** Pointer to the buffer storing data to send */
          unsigned char *sendBuf;
          /** Length of data to send */
          unsigned int  sendLen;
          /** Pointer to the buffer for storing data to receive */
          unsigned char *receiveBuf;
          /** Length of data received */
          unsigned int  receiveLen;
      } IotI2cData;  
      
      
      static uint32_t ssd1306_SendData(uint8_t* data, size_t size)
      {
          uint32_t id = SSD1306_I2C_IDX;
          IotI2cData i2cData = {0};
          i2cData.sendBuf = data;
          i2cData.sendLen = size;
      
          return IoTI2cWrite(id, SSD1306_I2C_ADDR, i2cData.sendBuf, i2cData.sendLen);
      }
      

      ssd1306.h头文件定义SSD1306_I2C_IDX为1

      显示程序
      程序部分参考了上面提到的OLED库,完整的测试程序,可以参考harmonyos-ssd1306里的example.

      /*
       * Copyright (c) 2021-2031, AlgoIdeas
       *
       * SPDX-License-Identifier: Apache-2.0
       *
       * Change Logs:
       * Date           Author       Notes
       * 2020-12-13     AlgoIdeas    the first version
       */
      
      #include <stdio.h>
      #include "ohos_init.h"
      #include "kernel/os/os.h"
      #include "ssd1306.h"
      
      #define OLED_I2C_BAUDRATE       100000
      
      static OS_Thread_t g_main_thread;
      
      
      static void DrawChinese(void)
      {
          const uint32_t W = 12, H = 12, S = 16;
          uint8_t fonts[][24] = {
              {
                  /*-- ID:0,字符:"您",ASCII编码:C4FA,对应字:宽x高=12x12,画布:宽W=16 高H=12,共24字节*/
                  0x14,0x00,0x24,0x00,0x2F,0xF0,0x71,0x20,0xA5,0x40,0x29,0x20,0x33,0x10,0x20,0x00,
                  0x54,0x40,0x52,0xA0,0x90,0x90,0x0F,0x80,
              },{
                  /*-- ID:1,字符:"好",ASCII编码:BAC3,对应字:宽x高=12x12,画布:宽W=16 高H=12,共24字节*/
                  0x20,0x00,0x27,0xE0,0x20,0x40,0xF8,0x80,0x48,0x80,0x48,0xA0,0x57,0xF0,0x50,0x80,
                  0x30,0x80,0x28,0x80,0x4A,0x80,0x81,0x00,
              },{
                  /*-- ID:2,字符:"鸿",ASCII编码:BAE8,对应字:宽x高=12x12,画布:宽W=16 高H=12,共24字节*/
                  0x00,0x40,0x80,0x80,0x5D,0xE0,0x09,0x20,0xC9,0xA0,0x09,0x60,0x29,0x00,0xCD,0xF0,
                  0x58,0x10,0x43,0xD0,0x40,0x10,0x40,0x60,
              },{
                  /*-- ID:3,字符:"蒙",ASCII编码:C3C9,对应字:宽x高=12x12,画布:宽W=16 高H=12,共24字节*/
                  0x09,0x00,0x7F,0xE0,0x09,0x00,0x7F,0xF0,0x80,0x10,0x7F,0xE0,0x0C,0x40,0x32,0x80,
                  0xC7,0x00,0x0A,0x80,0x32,0x70,0xC6,0x20
              }
          };
      
          ssd1306_Fill(Black);
          for (size_t i = 0; i < sizeof(fonts)/sizeof(fonts[0]); i++) {
              ssd1306_DrawRegion(i * H + 32, 26, W, H, fonts[i], sizeof(fonts[0]), S);
          }
          ssd1306_UpdateScreen();
          sleep(1);
      }
      
      static void MainThread(void *arg)
      {
          IoTI2cInit(SSD1306_I2C_IDX, OLED_I2C_BAUDRATE);
      
          usleep(20*1000);
      
          printf("ssd1306_Init.\n");
          ssd1306_Init();
          ssd1306_Fill(Black);
          ssd1306_SetCursor(22, 27);
          ssd1306_DrawString("Hello XR806!", Font_7x10, White);
      
          uint32_t start = HAL_GetTick();
          ssd1306_UpdateScreen();
          uint32_t end = HAL_GetTick();
          printf("ssd1306_UpdateScreen, time cost: %d ms.\n", end - start);
      
          usleep(2000*1000);
      
          while (1) {
              DrawChinese();
          }
      }
      
      void OledMain(void)
      {
           if (OS_ThreadCreate(&g_main_thread, "MainThread", MainThread, NULL,
                      OS_THREAD_PRIO_APP, 4 * 1024) != OS_OK) {
               printf("[ERR] Create MainThread Failed\n");
           }
      }
      
      SYS_RUN(OledMain);
      

      运行效果
      最终OLED显示:您好鸿蒙
      1003546875-61b74f422e829.jfif

      参考资料
      【XR806开发板试用】系列之一 - Linux环境下Ubuntu完全开发流程
      https://xr806.docs.aw-ol.com/
      https://aijishu.com/a/1060000000256653

      本贴转自极术社区:https://aijishu.com/a/1060000000284333
      作者:H2O2_H2O2

      posted in XR系列-无线互联
      q1215200171
      budbool
    • 基于全志D1-H芯片的首台64位RISC-V便携式计算机上市

      近日,基于D1-H生态开发板的第一款RISC-V便携式计算机也已经宣布上市。

      技术开放社区Clockwork公司于近日宣布要推出一个由 RISC-V CPU驱动的DevTerm。这款设备被命名为 DevTerm R-01,售价为 239 美元,其配置主要如下:

      微信图片_20220328101620.png

      • ClockworkPi v3.14 主板
      • R-01 核心模块 ,RISC-V 64位单核 RV64IMAFDCVU @ 1.0GHz,1GB DDR3
      • Ext.模块
      • 6.86英寸 IPS 显示屏
      • Clockwork 65%比例的键盘
      • 电池模块
      • 双扬声器
      • 58毫米200dpi 热敏打印机组件
      • shell 和 bracket 系统
      • 带有 clockworkOS 的32GB 高速 TF 存储卡

      这款RISC-V便携式计算机一经推出便受到了RISC-V International CEO Calista Redmond 女士的青睐,“RISC-V生态快速发展,并可为开发者提供低成本且便捷易用的64 bit的RV终端。”

      ​微信图片_20220328101647.jpg

      RISC-V作为免费且灵活的开放指令集架构,在单片机和FPGA方面,已经取得了良好的开端。在商业落地方面,也开始应用在物联网安全、工业控制等领域。

      2021年4月,全志推出D1-H芯片,其是全球首颗量产的搭载平头哥玄铁906 RISC-V的应用处理器,为万物互联AIoT时代提供了新的智能关键芯片。

      D1-H搭载了阿里平头哥64位C906核心,支持RVV,1GHz+主频,可支持Linux、RTOS等系统。同时支持最高4K的H.265/H.264解码,内置一颗HiFi4 DSP,最高可外接2GB DDR3,可以应用于智慧城市、智能汽车、智能商显、智能家电、智能办公和科研教育等多个领域。

      全球首颗.png
      【国产芯片之光!】全志科技发布首颗RISC-V应用处理器

      2021年5月,全志携手平头哥发布基于玄铁C906处理器的全球首款支持64bit RISC-V指令集的D1-H哪吒开发板,为推动RISC-V生态在国内的发展贡献了厚重的力量。

      D1H哪吒.png

      微信公众号推文:基于全志D1-H芯片的首台64位RISC-V便携式计算机上市

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 【直播预告】全志XR806芯片应用实战分享

      37e3a7435fb2c2cc16a8a2a8266919b.jpg

      活动简介

      111111111.png
      XR806是全志科技研发设计的一款支持WiFi和BLE的IoT芯片,它采用了安谋科技自主研发的星辰“STAR-MC1”处理器,具有集成度高、硬件设计简单、BOM成本低、安全可靠等优点。可广泛满足智能家居、智慧楼宇、工业互联、儿童玩具、电子竞赛、极客DIY 等领域的无线连接需求。

      为了方便开发者自由开发和定制化,全志在线释放了包括完整系统源码、硬件原理图、bomlist、硬件位号图在内的全部软硬件资料。

      gittee仓库地址:https://gitee.com/awol/open-harmony_-xr806_manifest

      硬件资料下载地址:https://www.aw-ol.com/downloads?cat=12

      技术问题讨论地址:https://bbs.aw-ol.com

      活动报名及直播地址:https://aijishu.com/l/1110000000301384/join

      XR806优秀开发例程

      《基于OpenHarmony的棋子分拣机》

      《用全志XR806开源鸿蒙开发板做一个四足行走机器狗》

      《【XR806开发板实战】轻松连上华为云实现物联网》

      《在XR806开源鸿蒙开发板上移植LVGL》

      《在XR806上用ncnn跑神经网络mnist》

      posted in XR系列-无线互联
      q1215200171
      budbool
    • 技术流直播即将开始!“晕哥”带你玩转“玄铁杯”参赛开发板全志哪吒D1-H开发板

      微信图片_20220526094857.jpg

      • 讲座时间:2022-05-27 14:00 - 15:00
      • 报名方式:扫描海报二维码进入钉钉报名直播讲座
      • 主讲嘉宾:贺兴哇 -酷网主理人-全志在线开发者社区高级顾问
      • 讲座亮点:D1-H哪吒开发板相关介绍

      主讲嘉宾 贺兴

      哇酷网主理人
      全志在线开发者社区高级顾问

      东莞市哇酷科技有限公司创始人贺兴,人称晕哥,拥有个人管理的开发者社区——Whycan Forum(哇酷开发者社区),主要讨论全志Soc,因此同时也被全志在线开发者社区聘为高级顾问,晕哥十分热爱开源项目的分享,已就全志D1-H/D1s等芯片开源了不少优质项目,吸引了一大批开发者慕名而来。

      赛事详情

      2022“玄铁杯”RISC-V应用创新大赛正式启动,本次大赛分设“碳中和”、工业控制及机器人、视觉及可穿戴设备、智慧家居4条赛道,免费开放“云上实验室”助理参赛者探索开发不同领域的创新应用,感受RISC-V“算力自由”

      本次“玄铁杯”第二届RISC-V应用创新大赛即将于5月31日结束创意方案提交的阶段,目前已有1000+开发者基于全志D1-H哪吒和Sipeed Lichee D1-H DocK Pro两款开发板提交了300+份创意方案,方案从Linux和RTOS两种类型的操作系统出发,衍生出工业机器人、视觉及可穿戴设备、社区养老以及车载设备等时下最火热的赛道方案,赛事火爆程度可见一斑,开发者们赶快抓紧最后几天的上车机会,扫描参赛二维码,提交自己的创意方案。

      posted in D1系列-RISC-V
      q1215200171
      budbool

    Latest posts made by q1215200171

    • 全志V85X系列芯片原理图要注意些什么?

      全志V85X (包括V853、V853S、V851S、V851SE等)是一颗面向智能视觉领域推出的新一代高性能、低功耗的处理器SOC,可广泛用于智能门锁、智能考勤门禁、网络摄像头、行车记录仪、智能台灯等智能化升级相关行业。V85X 集成ARM Cortex-A7和RISC-V E907 双CPU,内置最大 1T 算力 NPU,使用全志自研 Smart 视频引擎,最大支持5M@25fps H.265编码和5M@25fps H.264编解码,同时集成高性能 ISP 图像处理器,可为客户提供专业级图像质量。V85X 还支持 16-bit DDR3/DDR3L,满足各类产品高带宽需求;支持 4lane MIPI-CSI/DVP/MIPI-DSI/RGB 等丰富的专用视频输入输出接口,满足各类AI视觉产品需求;采用先进的22nm工艺,具有更优的功耗和更小的芯片面积。

      v853chip.png

      那么,在基于全志V85X芯片设计原理图的时候,需要注意什么呢?
      大家可以根据下面的表格进行原理图设计的自查。

      其中各条注意事项也包括“必须遵守”和“建议”两个级别。顾名思义,必须遵守就是一定要按照我们的建议设计,不然会出问题。建议级别则是可选项,最好按照我们给出的建议进行设计。

      模块 序号 检查内容 符合度
      POWER TREE 1 POWER TREE红色部分电源具有默认的电压和上电时序,SOC部分的电源分配不能调整。 必须遵守
      2 POWER TREE灰色部分电源默认上电为OFF,电源分配建议按照参考设计进行,减少软件适配工作。 建议
      3 确保LCD/TP/SENSOR/CAMERA/AHD等外设的电压与PMIC电源电压匹配。 建议
      4 确保PMIC各路电源的负载能力满足外设的需求。 必须遵守
      5 POWER TREE 页请根据实际产品进行更新 建议
      POWER(AXP2101) 1 ACIN接到AXP2101的VBUS管脚。 必须遵守
      2 PMU的DCDC电源电感选型必须满足该路电源的电流需求,PMU部分的电容按推荐设计,不要随意更改; 必须遵守
      3 PMU外围的电阻、电容参数值不能修改。1)AP-NMI 需要10K电阻上拉到RTC;2)AP-RESET不需要上拉电阻,由PMU内部集成,建议预留上拉电阻默认NC;3)PMU的I2C 无需上拉电阻,采用SOC 端IO内部上拉电阻,默认NC 方便调试;4)PWRON对地电容100nF请勿随意去掉; 必须遵守
      4 TS PIN 为外接电池NTC电阻,若电池不带NTC电阻,此PIN接10K电阻到地。 必须遵守
      5 CHGLED为OD输出,1K电阻接到PS,低电平指示灯亮; 必须遵守
      6 BLDOIN的输入源可以为PS,也可以为DCDC1,选择DCDC1时需注意BLDO1/2的输出不能超过3.0V。建议使用DCDC1,提高电源效率。 必须遵守
      7 DLDO2的输入源为DCDC4,只有使用DDR3/DDR3L电压超过1.35V时,才可作为1.2V输出(输出能力200mA) 必须遵守
      8 VDD-SYSFB必须连接到AXP2101的DCDC3。 必须遵守
      9 DCDC1的反馈作为DC1SW的输入,走线需加粗;DCDC4的反馈作为DLDO2的输入,走线需加粗; 必须遵守
      10 需要根据选择的前置摄像头和后拉AHD 芯片确定供电电压和时序以及电源合并。 必须遵守
      11 VCC-PC的电压选贴电阻必须符合FLASH部分的需求。 必须遵守
      12 VCC33-USB的电压选贴电阻根据是否有4G待机场景需求进行选择,有USB待机需求时,VCC33-USB和VDD09-USB VCC5V-USB不能关闭(具体咨询全志FAE)。 必须遵守
      13 VCC33-WIFI/VCCIO-WIFI/VCC18-WIFI的供电电压选配确认合理无误。 必须遵守
      14 评估好各路电源的工作电压和最大工作电流,并建议在各路DCDC、LDO电源上标注清楚,以便PCB layout设计走线。 建议
      15 若有其特殊待机场景或者供电需求,请列出让全志FAE确认。 必须遵守
      DRAM 1 DRAM的原理图设计必须保持与标案参考设计相同,包含其中的元件位号、阻容器件参数值等。 必须遵守
      2 DRAM的电源供电关系必须与标案参考设计相同。 必须遵守
      3 DRAM的所使用的高精度电阻必须是1%,不能随意替用。 必须遵守
      4 DRAM的物料选型必须采用DDR支持列表里面的型号。 必须遵守
      5 特别注意DRAM 封装大小是否覆盖主流DRAM颗粒大小 建议
      SOC 1 晶振部分的电路设计必须符合参考设计,串并接电阻不能删除,并联电容不能随意更改。 必须遵守
      2 选用的晶振工作温度必须符合产品设计工作温度。 建议
      3 SOC部分的电源滤波电容必须与参考设计相同,不能修改容值,也不能删减个数,需要备注靠近SOC pin放置。 必须遵守
      4 VDD-SYS的电源电压需要根据产品CPU频率和NPU频率要求确定电压,具体参数请参考硬件设计指南钟的CPU/NPU 频率电压对应表。 必须遵守
      5 VCC-RTC/VCC-PLL/AVCC等敏感电源电容靠近SOC PIN较放置 必须遵守
      6 搭配PMU AXP2101方案时,PWR-BYPASS 默认接地,不使用PMC功能 必须遵守
      7 AP-RESET、AP-NMI信号上必须接1nF下地电容。 必须遵守
      8 SOC的系统功能配置脚必须正确无误,无特殊需求可以保持与标案设计一致。 必须遵守
      9 使用内部LDOA时,注意评估供电电流不得超过50mA,超过50mA时,建议用外部LDO供电 必须遵守
      10 PC口因在启动过程中有初始化EMMC/SPI等启动介质的操作,初始化过程中IO会有高电平信号,所以不建议PC口当做指示灯、喇叭或外设供电使能等功能使用 必须遵守
      11 PF口因在启动过程中有初始化card介质的操作,初始化过程中IO会有高电平信号,所以不建议PF口当做指示灯、喇叭或外设供电使能等功能使用 必须遵守
      12 GPIO口使用时,需确保GPIO口电平匹配,若需要加上拉电阻,需保证上拉电压为其供电电压域,防止有漏电情况发生。 必须遵守
      FLASH 1 EMMC的选贴器件必须与贴片物料符合。 必须遵守
      2 EMMC的IO电压VCC-PC必须符合实际工作电压需求。 必须遵守
      3 EMMC的data信号线在SOC端的排序不同,确认信号设计与标案保持一致。 必须遵守
      4 原理图中建议增加EMMC信号线走线的阻抗要求标注说明。 建议
      5 原理图中建议标注清楚EMMC芯片的工作电压及最大工作电流。 建议
      6 EMMC的物料选型必须采用EMMC支持列表里面的型号。 必须遵守
      CARD 1 SDC0-CLK信号需串接33R电阻,并靠近AP摆放。 必须遵守
      2 SDC0所有信号都不需要外接上拉,禁止使用外部上拉。 必须遵守
      3 SD接口所有信号需挂ESD器件,若支持SD3.0高速模式,其中CLK、CMD、DATA信号的ESD器件容抗必须小于5PF。SD2.0需小于35PF。 必须遵守
      4 Card 供电开关电路请保留。 建议
      5 Card-DET信号建议串1K电阻,提高系统ESD 建议
      6 建议在原理图中标注清楚TF卡信号线的走线阻抗要求,以便PCB layout设计。 建议
      7 建议在原理图中标注清楚CARD电源的最大工作电流,以便PCB layout设计。 建议
      USB 1 USB0接口电源需接到PMU的VBUS管脚。 必须遵守
      2 USB接口必须挂ESD器件,USB D+/D-必须使用容抗小于5PF的ESD器件。 必须遵守
      3 USB-DP/DM建议预留共模电感位置 建议
      4 USB0具有OTG功能,USB-ID的设计必须参考标案原理图设计。 建议
      5 建议在原理图中标注清楚USB信号线的走线阻抗要求,以便PCB layout设计。 建议
      6 建议在原理图中标注清楚USB电源的最大工作电流,以便PCB layout设计。 建议
      WIFI/BT 1 BT的PCM、UART数据流方向必须连接正确。PCM-DOUT ---- PCM-DINPCM-DIN ---- PCM-DOUTUART-RX ---- UART-TXUART-TX ---- UART-RXUART-RTS ---- UART-CTSUART-CTS ---- UART-RTS 必须遵守
      2 WiFi/BT的中断唤醒、控制信号请按标案设计,请勿改动。 建议
      3 需确保VCC33-WIFI电源的电压与WiFi芯片的工作电压保持一致。 必须遵守
      4 WiFi的SDIO口需与PG口的电压保持一致,中断口的电压需与IO口的电压保持一致,不一致时需要加电平转换电路。 必须遵守
      5 WiFi的天线需预留π型电路,便于天线匹配调试。 必须遵守
      6 建议在原理图中标注清楚SDIO信号线的走线阻抗要求,以便PCB layout设计。 建议
      7 建议在原理图中标注清楚WiFi电源的工作电压和最大工作电流,以便PCB layout设计。 建议
      AUDIO 1 VRP、VRA2、AGND的接地点汇总成一点,必须通过0R电阻到大地。 必须遵守
      2 Audio codec所有外围电阻以及电容的参数不能修改。 必须遵守
      3 所有喇叭、LINEIN、MIC接口必须接ESD器件,且靠近座子摆放。 建议
      4 单喇叭的默认使用LINEOUTP信号。 建议
      5 MIC单端或差分配置是否正确。 必须遵守
      6 功放的使能脚必须要有下拉电阻,推荐值为100K。 必须遵守
      7 功放电源输入建议采用参考设计进行,方便后续ESD调试。 建议
      8 建议在原理图中标注清楚AUDIO部分电源的工作电压和最大工作电流,以便PCB layout设计。 建议
      RGB/MIPI-DSI 1 确保SOC端与LCD端的MIPI的信号差分对正确连接,正负不能反接,差分对之间不能调换。 必须遵守
      2 PD口RGB的信号对应关系需与mapping保持一致,不能修改。 必须遵守
      3 确保LCD的背光电路与LCD的规格匹配,反馈电路必须采用精度为1%的电阻,电流采样电阻精度必须为1%,封装满足功率需求。 必须遵守
      4 确保LCD的正负压电源与LCD的规格匹配。 必须遵守
      5 确保LCD的IO电压与SOC端的控制IO电压是否一致,若不一致,必须做电平转换处理,当前IO默认为3.3V电平。 必须遵守
      6 建议在原理图中标注清楚LCD部分电源的工作电压和最大工作电流,以便PCB layout设计。 建议
      CTP 1 CTP的I2C必须接上拉电阻,CTP与V853的IO电平必须匹配。 必须遵守
      2 使用V853的TWI1与触摸屏进行通讯,此套TWI不与其他设备通讯 必须遵守
      3 CTP的供电合理,不能存在漏电情况。 必须遵守
      GSENSOR 1 sensor的供电及IO电平匹配必须合理。 必须遵守
      2 sensor的I2C必须接上拉电阻。 必须遵守
      3 同一路I2C挂多个sensor设备时,I2C地址不能重复。 必须遵守
      4 sensor的供电和中断信号连接GPIO口需符合使用场景需求。 必须遵守
      CAMERA 1 Camera的MCLK信号必须串接33R电阻,靠近AP端摆放,减少信号反射。 必须遵守
      2 RST、STBY、CSI-SCK、CSI-SDA确保上拉到DOVDD-CSI 必须遵守
      3 CAMERA供电电源AVDD-CSI、DVDD-CSI、DOVDD-CSI在接口处必须要挂滤波电容,具体容值请参考CAMERA sensor规格书。 必须遵守
      4 AVDD-CSI为sensor内部模拟电路供电,必须独立供电,对地要加10uF电容靠近座子放置。目前推荐外挂高PSRR的LDO 供电防止低照度水纹情况。 必须遵守
      5 检查摄像头对电源是否有是否有时序要求。 必须遵守
      6 建议在原理图中标注清楚CAMERA电源的工作电压和最大工作电流,以便PCB layout设计。 建议
      KEY 1 GPADC网络的采样范围为0-1.8V,需保证任意两个按键按下时GPADC电压差必须>=0.12V。 必须遵守
      2 GPADC按键阻值建议和参考设计保持一致,采用1%的高精度电阻; 必须遵守
      3 GPADC按键不使用时,也建议保留上拉电阻到AVCC; 建议
      4 GPADC按键建议保留去抖电容和ESD器件。 建议
      5 POWER、RESET按键建议保留去抖电容和ESD器件。 建议
      6 硬件触发烧录固件的按键方式建议保留其中一种。 建议
      DEBUG 1 CUPX的UART0调试接口必须保留,RX的电阻和二极管需要保留。 必须遵守
      CONNECTOR 1 确保原理图中所有接口的线序与外设吻合一致,如LCD、TP、KEY、CAMERA等。 必须遵守
      ESD 1 CPU/DRAM/晶振等ESD敏感的关键器件,建议预留金属屏蔽罩。 建议
      2 复位信号在靠近AP端,必须保留一个对GND的滤波电容,容值固定选择1nF。 必须遵守
      3 部分与外部直连或者裸露的接口,如speaker、MIC、耳机、USB、TF、DCIN等,必须加上ESD器件 。 必须遵守
      4 所有按键必须挂ESD器件。 必须遵守
      5 TEST系统配置脚未使用的,需悬空处理,PCB不能引出桩线。 必须遵守
      6 外接容易受到ESD干扰的接口信号线上需预留串接电阻,用于ESD debug 调试;1)GPADC 按键功能或者光敏检测使用时,到主控间要串接K级电阻;2)MIC IN 输入到主控端预留串接0~5.1R电阻;3)LINE IN 输入到主控端(MIC1P/2P)增加K级分压电阻;4)USB 端口DM/DP信号串接0电阻需要保留; 必须遵守
      DRC 1 所有电气规格检查必须无ERROR,所有WARNING与QUEStiON必须逐一确认合理,不合理的问题项需要优化处理。 建议
      2 所有物理规格检查必须无ERROR,所有WARNING与QUESTION必须逐一确认合理,不合理的问题项需要优化处理。 建议
      posted in V853系列-AI视觉
      q1215200171
      budbool
    • 全志V85X系列芯片PCB设计注意事项

      全志V85X (包括V853、V853S、V851S、V851SE等)是一颗面向智能视觉领域推出的新一代高性能、低功耗的处理器SOC,可广泛用于智能门锁、智能考勤门禁、网络摄像头、行车记录仪、智能台灯等智能化升级相关行业。V85X 集成ARM Cortex-A7和RISC-V E907 双CPU,内置最大 1T 算力 NPU,使用全志自研 Smart 视频引擎,最大支持5M@25fps H.265编码和5M@25fps H.264编解码,同时集成高性能 ISP 图像处理器,可为客户提供专业级图像质量。V85X 还支持 16-bit DDR3/DDR3L,满足各类产品高带宽需求;支持 4lane MIPI-CSI/DVP/MIPI-DSI/RGB 等丰富的专用视频输入输出接口,满足各类AI视觉产品需求;采用先进的22nm工艺,具有更优的功耗和更小的芯片面积。

      v853chip.png

      那么,在基于全志V85X芯片设计PCB的时候,需要注意什么呢?

      大家可以根据下面的表格进行OCB设计的自查。

      其中各条注意事项也包括“必须遵守”和“建议”两个级别。顾名思义,必须遵守就是一定要按照我们的建议设计,不然会出问题。建议级别则是可选项,最好按照我们给出的建议进行设计。

      模块 序号 检查内容 符合度
      封装 1 全志提供的主控以及配套PMU和WiFi封装是否有更改 必须遵守
      布局 1 主控需远离发热源(PMU/LDO/DCDC),板子发热源需分散。 建议
      2 对温度比较敏感的器件,需远离发热源,如显示屏远离SOC和PMU。 必须遵守
      3 所有模块的CLK串接电阻(SDC0-CLK/CARD-CLK/LCD-CLK)靠近主控摆放,串阻与主控CLK连接走线距离≤300mil。 建议
      4 WiFi模组尽量靠近天线或天线接口。远离电源、DDR、LCD电路、摄像头、马达、SPEAKER等易产生干扰的模块。 建议
      SOC 1 BGA 焊盘采用十字形连接,不要与GND铜箔全连接,焊接时防止散热过快,导致虚焊。电源 ball 除外。 建议
      2 晶振尽量靠近IC摆放,使DCXO-XOUT/DCXO-XIN、X32KOUT/X32KIN走线小于600mil,减少PCB走线寄生电容,保证晶振频偏精度。 建议
      3 晶振及其走线区域的外围和相邻层,用GND屏蔽保护,禁止其它走线。 必须遵守
      4 时钟配置相关TEST 等PIN浮空处理 必须遵守
      DRAM 5 DRAM部分完全参考DRAM模板进行设计,请勿随意更改叠层;若有模板更改需求,请联系全志FAE。 必须遵守
      电源 6 所有电源走线必须满足电流大小要求; 必须遵守
      7 VDD_SYS铜箔尽量宽,宽度不小于40mil,换层过孔不少于4个。 必须遵守
      8 VDD-SYSFB 为电压反馈信号,远离板边及远离 DDR、CSI、SD、CARD 等干扰信号走线,走 Power 层沿其电源平面一起走到负载。如果与其他信号并排走,需要包地保护或 3W 间距。 必须遵守
      9 VCC_DRAM铜箔尽量宽,宽度不小于40mil,换层过孔不少于4个。 必须遵守
      10 所有电源走线必须满足电流大小要求; 必须遵守
      11 敏感电源如VCC-RTC/VCC-PLL/AVCC等电容尽量靠近SOC PIN脚放置; 建议
      12 VDD-SYS SOC 背面要放置一个10UF电容; 必须遵守
      EMMC 13 CLK和DS信号做包地处理,如果不能包地则保持3W间距。 必须遵守
      14 D0~D7、DS相对CLK等长控制≤300mil。 必须遵守
      15 CLK 串接 33R 电阻靠近主控摆放,串阻与主控 CLK 连接走线距离≤300mil。 必须遵守
      16 DS 下拉电阻靠近 EMMC 摆放。下拉电阻引入桩线长度≤200mil。 必须遵守
      17 走线阻抗50 +/-10% ohm。参考平面完整。保持2W间距。 必须遵守
      SD CARD 18 CLK做包地处理,如果不能包地则保持3W间距。 必须遵守
      19 D0~D3相对CLK等长控制<500mil。 必须遵守
      20 CLK 串接 电阻靠近主控摆放,串阻与主控 CLK 连接走线距离≤300mil。 必须遵守
      21 走线阻抗50 +/-10% ohm。参考平面完整。保持2W间距。 必须遵守
      CSI 22 PCLK的对地电容靠近主控,串联电阻靠近模组。 必须遵守
      23 MCLK的对地电容靠近模组,串联电阻靠近主控。 必须遵守
      24 Hsync的对地电容靠近主控。 必须遵守
      25 Vsync、Hsync、Data串联电阻靠近模组。 必须遵守
      26 PCLK单线包地,如果不能包地则保持3W间距。 必须遵守
      27 MIPI差分走线需要100ohm阻抗匹配,优先走线,走线尽量短,少换层。 必须遵守
      28 差分对内等长10mil,对间等长≤300mil(越小越好)。 必须遵守
      29 各差分对间用地线隔开,或保持间距≥15mil。 必须遵守
      LCD 30 LCD走线尽量满足3W原则,如不能,则至少要满足2W原则。 必须遵守
      31 LCD-CLK要做包地处理,同时要注意对包地打孔。 必须遵守
      32 LCD线的参考平面要完整。 必须遵守
      33 MIPI-DSI阻抗要求:单端50ohm,差分100ohm。 必须遵守
      34 MIPI-DSI差分对内长度差10mil内,差分对之间的长度差160mil内。 必须遵守
      35 MIPI-DSI尽量保证走线的参考平面完整。 必须遵守
      36 背光电路要求:PS,VLED+,VLED-所在的网络的线宽要在20mil以上。 必须遵守
      AUDIO 37 AVCC、VRA1、VRA2和AGND接地电容、电阻靠近主控摆放 。 必须遵守
      38 AGND铜箔宽度≥20mil,AGND接地电阻连接到GND平面的过孔≥2个。 必须遵守
      39 MICxP、MICxN,类差分走线,线宽4mil,线距4mil,包地。 必须遵守
      40 MBIAS与MICxP/MICxN并行走线,线宽10mil。包地。 必须遵守
      41 LINEINL/R每对L、R信号分别包地,线宽4mil。走线及过孔远离高速信号及时钟信号。 必须遵守
      42 LINEOUTP/N每对P、N信号分别类差分走线,线宽4mil,线距4mil,包地。 必须遵守
      USB 43 USB-5V 线宽建议控制在40mil以上。 建议
      44 USB-DM/USB-DP信号差分走线,差分阻抗为90ohm,保证走线参考层不跨分割。 必须遵守
      45 USB-DM/USB-DP建议与其它信号的间距大于10 mil,避免走线走在器件下面或者与其他信号交叉。 建议
      46 USB-DM/USB-DP走线在有空间的情况下,走线两边包地并打地过孔。 建议
      47 USB-DM/USB-DP走线拐角的角度需保证大于等于135度;保证USB走线的长度控制在4000mil以内,走线的过孔不超过2个。 建议
      WIFI 48 WIFI天线尽量远离电源、DDR、LCD电路、摄像头、马达、SPEAKER等易产生干扰的模块。 必须遵守
      49 REF-CLK给WIFI模组使用,属于敏感信号,建议内层走线,需要包地走线。串接0R电阻靠近芯片放置; 必须遵守
      50 天线馈线控制50ohm,为了增大线宽减少损耗,通常馈线相邻层挖空,隔层参考参考平面需要是完整地,同层地距离天线馈线距离保持一致,两边多打地过孔,地过孔需要回到芯片EPAD。 必须遵守
      51 模组下方尽可能的增加地过孔和铺铜面积; 必须遵守
      52 SDIO_CLK串接电阻靠近主控摆放。串阻与主控走线距离≤300mil。 必须遵守
      53 SDIO_CLK做包地处理。如果不能包地则保持3W间距。 必须遵守
      54 D0-D3相对CLK等长控制<500mil。 必须遵守
      55 走线阻抗50 +/-10% ohm。参考平面完整。保持2W间距。 必须遵守
      56 两层板时,D0-D3两两包地,CLK单线包地,线间距4mil。 必须遵守
      PMU&DCDC 57 走线粗细需满足电源电流要求; 必须遵守
      58 电压反馈线,输出电压经过电容滤波后,紧挨电容取点,用4~10mil的线引入PMIC即可。DCDC1的反馈走线给DC1SW供电,走线需要加粗。DCDC4的反馈走线给DLDO2供电,走线需要加粗。 必须遵守
      59 反馈线在TOP面与LX的平行走线尽量短,禁止平行走线,推荐换层走线,不要从电感下方、交流路径下方或者紧挨CLK之类的跳变信号; 必须遵守
      60 CPUFB/SYSFB采用远端反馈,反馈线从内层走线,避开CLK等时钟敏感信号,远离敏感信号过孔,沿其电源平面一起走到负载; 必须遵守
      61 PMU 下方需尽可能的增加地过孔,尽可能的增大铜皮面积; 必须遵守
      62 外挂DCDC走线要求如下:1)输入电容,输出电感反馈电阻尽量靠近IC放置;2)SW开关信号走线尽量短;3)从输出端到反馈电阻的反馈走线需避开SW信号;4)增加IC GND的铺铜面积和GND过孔散热; 建议
      其他 63 其他未涉及模块请参照硬件设计指南或者其他器件datasheet layout要求 建议
      ESD 1 CPU/DRAM/晶振等ESD敏感的关键器件,离外部金属接口的距离不小于20mm,如果小于20mm,建议预留金属屏蔽罩,并且距离其他板边不小于5mm。 建议
      2 关键信号(RESET/NMI/Clock等)尽量避免与外部接口信号(USB/SD/HP等)或经过IO附近的走线相邻并行走线;如果不可避免,相邻并行的走线长度不超过100mils;IO保护地下方尽量不要走线,在必须走线的情况下建议走内层。 建议
      3 部分与外部直连或者裸露的接口,如speaker、MIC、耳机、USB、TF、DCIN等,必须加上ESD器件 ,走线路径为先经过ESD器件再到SOC。 必须遵守
      4 必须保证外部连接器(USB/SD)金属外壳接地良好,在板边直接通过过孔连接GND平面,每个GND焊盘与GND平面之间的连接过孔不少于3个。 必须遵守
      5 在PCB四周增加地保护环;DDR线束四周建议用GND保护。 建议
      posted in V853系列-AI视觉
      q1215200171
      budbool
    • 【FAQ】全志V系列芯片如何实现mpp sample外编?

      1.主题

      V系列多媒体mpp sample外编方法

      2.问题背景

      用户希望Tina SDK 能提供编译工具链,多媒体库和头文件,使得自己编写的应用能编写Makefile 去链接多媒体库来编译生成app应用。
      介于此方法,本FAQ提供一份编译系统demo样例。 里面包含说明了:

      1. Tina SDK 如何输出多媒体库;
      2. 如何编写Makefile 去链接多媒体库;
      3. 如何将Tina SDK 里面MPP的sample 放到这里进行编译;
      4. 不需要Tina SDK 如何重新打包成全志固件;
      5. 指导如何制作SPINOR 的烧录器固件;

      3.解决办法

      请下载附件的编译系统,并放到linux 上运行。 执行./build.sh 既可以编译。每个目录下都有个REAMD说明,请查看。

      README:

      本编译系统是一个演示全志V系多媒体mpp sample 脱离Tian SDK 编译的并编译后放到rootfs下重新做固件的一个demo

      1. 本编译系统目录结构介绍

      ├── aw_pack_src #这个目录是V系列Tina SDK 编译打包后输出的目录,里面包含了库和分区文件
            ├── build.sh    #编译脚本
            ├── Makefile    #编译Makefile,可作为自己工程的参考
            ├── output      #编译后的应用和中间产物
            ├── sample      #sample 放置的目录
            ├── share_lib   #需要依赖的动态库(设备端rootfs也有)
            ├── mk_firmware #制作全志固件的脚本
            └── toolchain   #编译工具链
      

      2. 使用方法:
      ①将V系列多媒体sample 拷贝到 ./sample 目前下。阅读./sample/README了解详情;
      ②将Tina SDK 新输出的文件夹aw_pack_src 重新替换当前的./aw_pack_src()
      ③执行 ./build.sh 进行编译
      ④编译成功后。在./out 可看到 sample 和 strip 后的sample

      3. Tina SDK 如何生成新的aw_pack_src(库和头文件)来替换?

      • 选上配置
        make menuconfig --->Target Images --->[*]support pack out of tina
      • pack 打包,然后会在out/xx方案/生成一个目录:aw_pack_src,将此目录拷贝出来即可

      4. 重新替换了个sample,但编译出错怎么解决?

      • cannot find -lxx 库
        因为多媒体的库会根据make meunconfig 来配置一些功能组件。如果需要增加/裁剪功能,则编译出来可能就多或少一些库了。
        如果发现报错cannot find -lxx , 可以直接尝试修改Makefile,把这个-lxxx 去掉再编译试试。

      • undefined reference xxx: 函数
        因为多媒体的库会根据make meunconfig 来配置一些功能组件。如果需要增加/裁剪,则编译出来可能就多或少一些库了。
        如果发现报错undefined reference xxx:,则可以库目录下执行grep -rn "xxx", 看能不能搜索出一些结果是关于库的,如:

      grep -rn "AW_MPI_SYS_Init"
      
      Binary file ./aw_pack_src/lib_aw/lib/eyesee-mpp/libaw_mpp.a matches
      

      搜到AW_MPI_SYS_Init 结果在libaw_mpp.a库里面。 这时候在Makefile里面 加入-law_mpp 即可。

      如果在本目录搜不到,则可以去Tina SDK目录搜索:

      grep -rn "AW_MPI_SYS_Init" out/v851se-perf1/staging_dir/target/usr/lib   #注意v851se-perf1 是板子的名称。 这个目录下是SDK 编译出来的所有库 。
      

      附件:sample_ex_compile.tar.gz

      posted in V853系列-AI视觉
      q1215200171
      budbool
    • 【FAQ】全志T113芯片蓝牙音乐播放失败如何解决?

      1.主题

      T113-S3 蓝牙音乐播放失败问题

      2.问题背景

      硬件:T113 + XR829
      软件:Linux(非Tina)

      3.问题描述

      3.1复现步骤

      #驱动路径要根据固件实际路径
      insmod /lib/modules/5.4.61±ab179/xradio_btlpm.ko
      
      等驱动安装完再执行后续操作
      echo 0 > /sys/class/rfkill/rfkill0/state
      sleep 1
      echo 1 > /sys/class/rfkill/rfkill0/state
      sleep 1
      
      hciattach -n ttyS1 xradio &
      
      hciconfig hci0 up
      hciconfig hci0 piscan
      
      #启动蓝牙协议栈
      bluetoothd -n &
      
      #设定本机为播放源
      bluealsa -p a2dp-source &
      
      #进入蓝牙控制终端
      bluetoothctl
      
      #扫描周边蓝牙设备
      scan on
      #若例表中已找到设备则手动停止扫描
      scan off
      #连接蓝牙音箱
      connect <蓝牙音箱MAC>
      

      连接成功提示Device 30:21:23:6F:18:E2 Connected: yes

      #退出bluetoothctl
      exit
      
      #播放音乐aplay -D bluealsa:DEV=音箱mac 音乐文件路径
      aplay -D bluealsa:DEV=30:21:23:6F:18:E2 /a.wav &
      

      3.2具体表现

      蓝牙音乐播放失败,并且出现蓝牙设备断开现象

      4.问题分析

      1、对比R328等Tina平台,以上的验证方法没有问题,bluez 和 bluealsa版本也一致,因此判断不是操作或者版本本身的问题。
      2、由于蓝牙已经断开,查看进程情况,通过PS命令,看出Bluetoothd进程还在,但是bluealsa进程已经退出。
      3、加打印分析bluealsa退出点,经过验证是在SBC编码环节。
      4、排查SBC编码的代码,发现程序在某个点会崩溃。
      5、在网上查找相关案例,疑似与编译配置有关系。

      5.根本原因

      与SBC编译的配置有关系,在当前的编译工具链环境下,需要打开 --enable-high-precision配置

      6.解决办法

      如下修改配置:

      • 修改sbc_primitives.h
      diff --git a/sbc/sbc_primitives.h b/sbc/sbc_primitives.h
      index e01c957..b060484 100644
      --- a/sbc/sbc_primitives.h
      +++ b/sbc/sbc_primitives.h
      @@ -27,6 +27,10 @@
       #ifndef __SBC_PRIMITIVES_H
       #define __SBC_PRIMITIVES_H
      
      +#ifdef HAVE_CONFIG_H
      +#include <config.h>
      +#endif
      +
       #define SCALE_OUT_BITS 15
       #define SBC_X_BUFFER_SIZE 328
      
      • 在sbc.mk中增加
      SBC_CONF_OPTS = --enable-high-precision
      
      posted in 其它全志芯片讨论区
      q1215200171
      budbool
    • 玄铁杯RISC-V大赛『三等奖』智能帘窗

      智能帘窗采用D1-H哪吒开发板为主控,D1-H哪吒与下位机各模块/传感器进行数据通信并进行数据的处理,并在最后依据处理后的数据来对风扇、电机、OLED屏幕等上位机硬件进行控制。

      5A41430C-5A76-4703-8CE5-5FE87AE1CA0A.png
      系统硬件架构

      PART01 方案及硬件

      29419E11-404A-4bbb-B393-FC83A5C897AC.png
      产品实物图

      模拟平常卧室,其可能存在的场景有:突然下雨、户外湿度过大关窗以及户外天气较好开窗通风等场景。以上相关场景需要获取许多数据从进行准确的判定,其中包括室内外温湿度,当前时间,室外是否下雨,窗户状态,窗帘状态以及户外光照强度等,下图为系统方案。

      图片11.png
      系统方案图

      本项目采用器材如下:

      • DHT11*2
      • 舵机*1
      • 普通步进电机*1
      • 雨滴传感器模块*1
      • PCF8591模块*1
      • 光纤传感器模块*1
      • OLED12864*1
      • 按键*4
      • 风扇*1

      PART02 功能描述

      首先系统上电后会显获取室内温湿度、可燃气体浓度、室外光照强度、温湿度以及是否下雨,自动关窗标识位,风扇标识位等信息(依靠”/project/”目录下的一些文件实现,例如“curtain”、“auto_window_flag”文件等),接着将读取本地存储的舵机以及步进电机的位置信息,四个按键(触控按键)分别对应窗户以及窗帘的开和关程度的控制,最后将室内外温湿度以及室外光照强度以及风扇开关状态和可燃气体浓浓度过高警告展示在OLED屏幕上。若室内可燃气体浓度超过阈值将默认打开风扇,并且此时是无法关闭的(手机APP操作),除非可燃气体浓度降低至阈值方可手动关闭风扇。

      4E938422-79AC-4a38-9C9B-5EAB988A180F.png
      OLED屏幕状态显示

      除此之外本项目还将使用本地WIFI/有线网络通过MQTT协议连接腾讯云物联网服务,用户可以查看本地状态信息并依据光照强度、室内外温湿度、下雨自动关窗户,云端/本地控制窗帘或窗户,此操作于手机APP(腾讯云提供)服务上完成。

      9F36884E-C47C-4d3d-8326-403080FC6F5B.png
      APP控制

      PART03 参赛团队

      南通大学“孤勇队” 队员:The_Qiang

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 玄铁杯RISC-V大赛『二等奖』自跟随系统

      本项目实现自动跟随采用了新的设计思路,D1-H哪吒开发板负责主控的工作做,自动跟随功能由UWB模块来实现,D1-H哪吒开发板会收集蓝牙模块、GPS模块以及ADXL345模块作为下位机提供的数据消息,并反馈到GPS模块和WiFi模块上,最后交由WiFi模块通过阿里云与上位机进行通信并反馈信息到终端的APP上显示。

      图片1.png
      系统架构图

      9DDEE5A8-6075-45a1-A925-A120F831E1B3.png
      实物图

      PART01 关键性能指标

      (1)自动跟随功能,基于D1-H哪吒控制的自跟随助手,通过UWB模块,来实现自动跟随的功能。

      图片9.png

      主控板连线图

      (2)检测意外摔倒并报警的功能物联网信息传输功能,配套的手环具有检测意外跌倒并报警的功能,并且通过主体将老人的状态信息,和位置信息上传到阿里云,然后向手机实时上传,老人的状态信息和位置信息,可以通过手机APP实时进行查看,当老人站起或者系统检测跌倒信息错误时,使用者可以通过按下手环上的手持终端按键,来关闭报警声音,同时手机APP实时更新老人的状态信息和位置信息。

      图片7.png
      手环实物图

      图片6.png
      物联网信息传输功能测试

      (3)PWN助力系统通过摇杆开关,功能转换开关,进行UWB自动跟随功能和助力功能两种功能模式之间的切换,可通过助行器上的摇杆开关来控制电机向相应的方向工作运行从而实现助力功能。

      图片8.png
      PWM系统摇杆开关

      PART02 工作原理

      用于以D1-H哪吒作为主控的自跟随助手的跌倒紧急报警智能装置使用三块UWB模块,两块装在助行器机身,另外一块安置在配套的手环内。使用者将用于智慧家居的跌倒紧急报警智能装置上的两个UWB基站和UWB标签通上电并且打开开关后,UWB标签发射无线信号,安装在箱体上的两个UWB基站接收到信号后,计算出与UWB标签之间的距离及角度,单片机对距离及角度进行处理,然后单片机发出指令控制电机向相应的方向工作运行,从而实现跟随功能。

      图片3.png
      UWB模块放置图

      用于以D1-H哪吒作为主控的自跟随助手的跌倒紧急报警智能装置可以实现助力功能,以减轻使用者的负担。主要实现方法是,当使用者切换至助力模式后,助行器启用助力功能,使用者手扶着助行器行走时,可以通过助行器上的摇杆开关来调节电机的转速和工作方向,以此来实现电机转速的实时调节,从而减轻使用者的负担,达到省力的目的。以此来实现转速的实时调节。

      图片2.png
      UWB模块配合图

      PART03 参赛团队

      山东华宇工学院“实践队”

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • Reply: 玄铁杯RISC-V大赛『一等奖』分布式能源智慧管理和M2M交易系统

      @wmd340221 可以去平头哥的社区问问看,平头哥的奖金有5W RMB,应该是会提交完整源码的

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 【开发板试用】米尔电子MYC-YT507开发板试用申请开启

      米尔电子为MYC-YT507核心板及开发板免费提供Linux,Ubuntu等多种系统a的驱动支持;并提供2.0版本MYIR MEasy HMI参考代码和丰富的开发资料。资料包含用户手册、PDF 原理图、外设驱动、BSP源码包、开发工具等。购买后提供完善的售后技术支持,米尔电子官方淘宝店开发板价格如下:

      • 1G DDR工业级版本:核心板:218RMB,底板套装:650RMB
      • 2G DDR工业级版本:核心板:248RMB,底板套装:680RMB

      MYC-YT507开发板的相关资料也已开源,开发者可以在米尔电子官网获取相关资料,全志也为广大开发者提供了MYC-YT507开发板试用申请的活动,该活动将面向开发预研、学习科研、DIY项目等方向开放试用活动

      试用申请通过邮件发送到:lizexi@allwinnertech.com

      邮件应包括以下内容:

      • 试用项目计划(申请重要依据);
      • 预计输出成果;
      • 过往项目经历;
      • 其它认为有助于申请通过的内容

      4A3DA8AA-387B-46e9-B7F6-0FFE86B7C116.png

      全志T507-H可达到车规级处理器的标准,在理论工作温度为-40℃~85℃的环境下,经过米尔电子低温运行、高温运行、高低温循环测试、低温通断电、高温通断电、低温存储、高温存储等苛刻条件下的环境测试,完全满足工业级实际应用的使用需求。

      微信图片_20221207110538.png

      T507H芯片还是符合AEC-Q100认证的一款处理器,即可以满足汽车使用的标准,可以说是进一步认证了**“车规级”**的title。国外电子爱好者网站CNX在报到时更是将该认证标准作为题目,表达了对这款抗冻车规级芯片的青睐。

      62A6301B-FA24-4a2c-A01F-606733307E1E.png

      MYC-YT507H核心板,板载全志T507-H、PMIC电源管理芯片、LPDDR4、eMMC。全志T507-H集成了四核Cortex-A53的CPU和G31MP2的GPU,拥有十分强大的图像处理功能以及多路视频输入和输出的接口,这一特点也在MYC-YT507H开发板上得以体现。T507-H还支持4K@60fps H.265解码,4K@25fps H.264编码,以及绝大部分当前比较流行的视频及图片的解码格式。

      C5957076-B794-4b61-AD34-BEDDF3C51F59.png

      MYC-YT507核心板采用邮票孔+ LGA设计,为方便开发者进行进一步的功能评估和开发预研,配套的MYD-YT507底板采用12V/2A直流供电,搭载了1路4G Mini PCIE接口、1路数字DVP摄像头输入、1路MIPI CSI、2路LVDS 显示接口(支持单/双通道)、1路HDMI、1路TV显示输出、1路耳机输出、1路SPDIF音频输出、1路千兆以太网接口、1路百兆以太网、2路USB HOST Type A、1路USB Type-C DRP、1路Micro SD、1路树莓派等外设接口。

      微信图片_20220919112344.png 微信图片_20220919112347.png

      posted in 其它全志芯片讨论区
      q1215200171
      budbool
    • Reply: 玄铁杯RISC-V大赛『一等奖』分布式能源智慧管理和M2M交易系统

      @wmd340221 好像开,但是gitee的仓库链接挂掉了

      posted in D1系列-RISC-V
      q1215200171
      budbool
    • 玄铁杯RISC-V大赛『二等奖』沙漠树种移植车

      D1dasai二等奖.jpg

      项目演示

      项目以电能为主要能源,电池及调压模块组合实现对设备各处模块的稳定供电,摄像头模块、红外探测模块、超声波模块将信号传递给D1-H哪吒控制板,控制板将收到的现场信号传递给外置终端交互模块,人员通过外置终端交互模块将指令传递给D1-H哪吒开发板,开发板将指令进行编译并将控制信号传递给其他模块,控制其他驱动模块完成动作,以完成对车体、机械臂、水泵、摄像头云台与水泵云台的动作控制。

      图片1.png

      图片7.png

      图片8.png

      主要技术特点

      本设备应用D1-H 哪吒作为主控芯片,并通过外置终端进行远程遥控,精度高。摄像头与wifi模块对移植现场进行实时同步情景传输,通过HC-SR04测距回传,可以在终端实时显示小车与障碍物的距离,方便控制,转移时可通过红外探头实时红外追踪,可精准的检测人的位置,实现红外追踪方便车体转移。采用履带式底盘适应沙漠地形,终端可实时操控机械臂抓取树种,控制水炮装置实现可控制的灌溉,同时也可以进行后期维护工作如:喷白漆。实现了树种移植、维护场景的实时、准确的转播。设备采用电能作为主要能源,减少对不可再生能源的使用,同时在沙漠中可通过光伏板发电获取电能。

      图片2.png

      图片3.png

      图片4.png

      图片5.png

      图片6.png

      主要创新点

      (1)使用D1-H哪吒作为主控芯片,采用外置终端来进行远程遥控,实现了高精度,较低成本的控制。

      (2)利用红外探头进行红外追踪可精准的检测人的位置,实现了回收设备时的快速转移。减少了人工参与的程度。超声波测距技术的利用可以使设备在移动的过程中减少操作难度。

      (3)摄像头与wifi模块配合对移植现场进行实时同步情景传输,超声波模块精确测距的反馈保障人工判断的准确性。

      (4)可调式国标喷头与舵机相啮合的设计,便于喷头快速更换和实现一定角度内可调、定量的灌溉,通过舵机旋转的底盘更保障了旋转操控的精准度。

      参赛团队

      山东华宇工学院“鑫悦队”

      posted in D1系列-RISC-V
      q1215200171
      budbool