HDMI VCU编码工程中GST-VCU-APP部分代码解析 APP概述 APP框架流程图 APP中重要的函数 Gstreamer库概述 APP概述 GST_VCU_APP 是基于 GStreamer 库开发的一个控制软件, 通过 APP 可实现对 PL 端 IP 核的管理。APP 完成了对 PL 端 IP 核的参数配置,以及控制 vcu 的编解码,将 vcu 编码后的 数据打包,用 UDP 协议将打包后的数据发送至以太网。 那么 app 是怎么实现对 IP 核的管理呢?我们按照这个问题展开说明。 从 zcu106…

2021年9月30日 0条评论 11点热度 阅读全文

[注:该文章排版有点错乱,如果需要,有PDF版本和WORD版本可供下载观看,还有包括工程项目和成果视频,请移步下载资源] 1 设计任务及要求 1.1 引言 本文提出了一种基于 STM32 的智能万年历设计方案,本文案以 STM32F103C8T6 最小 系统作为主控核心,与 OLED 显示、 DS18B20 温度传感器、 DST11 温湿度传感器等模块组 成硬件系统。 其中以 STM32 内部的 RTC(实时时钟) 实现日历和时间的功能,通过修改计 数器的值可以重新设置系统的当前时间和日期。综上所述,此电子时钟具有…

2021年9月6日 0条评论 12点热度 阅读全文

简单点灯 最近项目上需要用到 LED 子系统,在嵌入式 Linux 里面点个灯还是比较简单的,只要在某个灯对应的目录里,向相应文件写入特定值,就可以让 LED 亮/灭/闪烁。 # echo 1 > /sys/class/leds/green/brightness // 点亮 LED # echo 0 > /sys/class/leds/green/brightness // 熄灭 LED # echo heartbeat > /sys/class/leds/green/trigger // 让 L…

2021年8月16日 0条评论 5点热度 阅读全文

嵌入式产品的可靠性自然与硬件密不可分,但在硬件确定、并且没有第三方测试的前提下,使用防御性编程思想写出的代码,往往具有更高的稳定性。 防御性编程首先需要认清C语言的种种缺陷和陷阱,C语言对于运行时的检查十分弱小,需要程序员谨慎的考虑代码,在必要的时候增加判断;防御性编程的另一个核心思想是假设代码运行在并不可靠的硬件上,外接干扰有可能会打乱程序执行顺序、更改RAM存储数据等等。 1.具有形参的函数,需判断传递来的实参是否合法 程序员可能无意识的传递了错误参数;外界的强干扰可能将传递的参数修改掉,或者使用随机参数意外的…

2021年8月12日 0条评论 5点热度 阅读全文

ZigBee定义了3种类型的设备,每种设备都有自己的功能要求: 1. ZigBee协调器(Co-ordinator),是启动和配置网络的一种设备,是网络的中心节点,一个ZigBee网络只允许有一个ZigBee协调器; 2. ZigBee路由器(Router),是一种支持关联的设备,能够将消息转发到其他设备,ZigBee网络或树形网络可以有多个ZigBee路由器,ZigBee星型网络不支持ZigBee路由器; 3. ZigBee终端设备(End Device),执行具体功能的设备。 以上…

2021年5月19日 0条评论 0点热度 阅读全文

关注+星标公众号,不错过精彩内容 编排 | strongerHuang 微信公众号 | 嵌入式专栏 众所周知,说到延时,很多人都会想到用软件件来实现,比如定时器之类的。今天就来说说用硬件来实现定时的方式,虽说没有那么准,但是有些场合还是用得到的。今天我们来介绍一下6种延时电路工作原理。 嵌入式专栏 1 精确长延时电路图 该电路由CD4060 组成定时器的时基电路,由电路产生的定时时基脉冲,通过内部分频器分频后输出时基信号。在通过外设的分频电路分频,取得所需要的定时控制时间。 通电后,时…

2021年5月12日 0条评论 3点热度 阅读全文

内核移植步骤 相比于uboot移植,内核只关心内存条的情况,所以移植相对uboot简单 **第一步:**网上下载相关的内核文件http://ftp.sjtu.edu.cn/sites/ftp.kernel.org/pub/linux/ **第二步:**配置内核移植的必要环境 (1)需要支持menuconfig(有了这个方便我们后面选择配置) 只需要dpkg -i 压缩包就可以 (2)需要支持mkimage(编译image文件时需要) 将mkimage工具拷贝到/usr/bin **第三步:**选择默认配置 (1)进…

2021年4月23日 0条评论 14点热度 阅读全文

内核移植步骤 相比于uboot移植,内核只关心内存条的情况,所以移植相对uboot简单 **第一步:**网上下载相关的内核文件http://ftp.sjtu.edu.cn/sites/ftp.kernel.org/pub/linux/ **第二步:**配置内核移植的必要环境 (1)需要支持menuconfig(有了这个方便我们后面选择配置) 只需要dpkg -i 压缩包就可以 (2)需要支持mkimage(编译image文件时需要) 将mkimage工具拷贝到/usr/bin **第三步:**选择默认配置 (1)进…

2021年4月23日 0条评论 4点热度 阅读全文

1.主控板:泰凌微9518 2.心率血氧模块:天易合芯hx3690 iic通信时,发现总是失败,但是用逻辑分析仪捕捉iic信号是正常,通信也成功。用万能表探头接触时也正常,最后发现探头接触模块的电源和地时,通信成功。最后硬件工程师确认模块供电问题。 查看原理图,发现电源芯片出来的3.3v给整个主控板供电,硬件工程师猜测是负载不足,然后接了一个电源芯片单独给模块供电。最后发现正常了。      

2021年4月22日 0条评论 4点热度 阅读全文

最近再用ADS1.2调试软件时,发现用sprintf()函数将浮点数转换为字符串输出时无法正确显示,经过多方查找资料,问题最终得到解决。 产生问题的原因主要是没有配置地域化信息。printf函数是用于格式输出的,这个大家都知道,但是大家要注意的是,printf函数不仅仅是输出,而且还有格式输出的功能,格式的形式不仅仅是 %d,%f,%x 这些格式化控制符,还包括小数点的表示形式,时间的表示形式,货币的表示形式。比如,我们国家用“.”表示小数点,但有些国家用“,”表示。还有时间,我们习惯是 年 月 日,但有些国家或地…

2021年4月20日 0条评论 1点热度 阅读全文