自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

二月半的博客

嵌入式软硬件开发笔记

  • 博客(47)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

原创 ADS软件(PathWave 先进设计系统软件)分享与安装

ADS软件(Advanced Design System)主要用于射频(RF)、微波(Microwave)和毫米波(Millimeter-wave)电路的设计、仿真和分析。它提供了一套强大的工具和功能,以帮助工程师进行高频电路设计,并评估其性能。ADS软件还提供了强大的电磁场仿真功能,可以对微带线、天线、射频卡口等进行精确的电磁场模拟和分析。这对于高频电路设计中的信号耦合、传输线特性和辐射效应等问题非常重要。

2024-05-05 20:02:36 7591 6

原创 从零开始摄像头驱动设计(一)_I2C框架及设备树插件应用

像我这样很多学习驱动的同学都会想一个问题:学了这个能干嘛?学了那个能干嘛?姑且找找网络上开源的项目,找找,看看,还是一脸懵。因为开源只提供源码和大致介绍下做什么和有什么。而面对于基础开发者的博客还是很少的。甚至有的博主只是放一些定义,丢几个结构体的注释就完结。我曾经就是通过查缺补漏才形成了一个完整的项目框架。借此,我打算撰写一套驱动的开发流程,从硬件调试到驱动框架搭建,到系统调用验证。因为AI的盛行,自动驾驶,人脸识别等应用都成了市场的领航者。

2024-03-31 09:52:27 2034 2

原创 高速电路设计、完整性设计推荐书籍

SI信号完整性相关书籍国内作者出的比较少,国内大多是翻译国外著作或者是直接抄袭,像于博士这本《于博士SI设计手记》在网上的口碑还是不错的,虽然其核心技术理论依然还是来至国外大牛们的著作或者论文,但于博士通过自己的实际演算,深入浅出的将各种理论概念解释的很清楚很透彻,中间还穿插着于博士自己在实际项目中对SI信号完整性实际应用的理解。信号传输如今是越来越高速,伴随着的将是更多的信号完整性的问题。这是最新的一版,技术书籍就需要看最新的,因为会有很多的技术更新和增加,时间越近的版本技术更准确,也更全面。

2024-03-28 08:48:11 2830

原创 Allegro之轻松绕等长

高速PCB设计避免不了的要绕等长,然而有时候一个单板需要绕等长的总线很多,一个一个的绕下去,除了浪费时间,还最多的是消耗自己。

2024-03-26 11:45:43 2204

原创 Cadence之创建自己的titleblock

创建自己的Titile Block ,让设计更美

2024-03-15 08:21:29 3256

原创 allegro之坚固的半孔制作

随着芯片不断的更新迭代,一浪拍死一浪。做硬件的特别头疼,核心电路或者可复用电路因为某一个板卡需要重新设计整板。很多都是做的无用功,为了更加高效的完成工作,然后摸鱼。硬件界的人才们,找到了很多方法。最多的就是应用在核心板上,比如板对板连接器、金手指等等,而还有一种也是用的最多的方式–半孔。半孔因为其成本低、不需要另选元器件以及占用空间小等优势,被设计小模块的工程师所青睐。小编近期也关注到了这一块,因为某国的各种限制,导致了主平台的不在生产,由于之前的产品都是嵌入式设计方式,几十种量产产品只能重新布板设计。

2024-03-12 09:50:05 3187

原创 ALLegro之单独设置PIN脚与覆铜连接方式

​ 设计PCB时,有很多时候在总电源输入处需要将一部分pin脚设置为全连接,给大电流拓宽通道。然而如果往常针对同一覆铜下的同属性pin脚只能全部设置为全连接或者其他。所以,在初学者手上也出现了“投机份子”,先给全部覆铜改成统一的常规模式,比如十字连接,然后转换成静态铜皮,再将需要全连接的pin区域的覆铜挖空,再填补铜皮设置全连接后,转换为静态铜皮,然后和之前的覆铜融合一体。很是繁杂,而且后期改版很难维护。

2024-03-08 11:34:27 2383

原创 设备树插件_configfs学习笔记

在kernel目录下的Documentation/filesystems/configfs有官方说明文档configfs.txt。configfs是与sysfs功能相反的基于ram的文件系统。sysfs是基于文件系统查看内核对象,configfs是基于文件系统管理内核对象或配置项对于sysfs,一个对象是在内核中创建和删除的。内核控制着sysfs表示的生命周期,和sysfs只是一个窗口而已。而configfs配置项表示的生命周期完全由用户空间驱动,内核模块支持这样项目的必须作出响应。

2023-11-07 15:39:17 1339

原创 华秋DFM从2.1.6升级到3.x版本出现的问题

以前一直使用CAM350检查最终的gerber,后来无意中接触到了华秋DFM,使用起来简单许多,将可制造性排查的相当完整。但是前不久因为一块板卡刚出炉,需要检查DFM,于是开启了华秋,刚打开,说可以更新,还有许多新增功能,那当然是妥妥的更新了。想着应该是板卡太大原因,就等。更新后,满怀期待的打开,像往常一样的导入gerber,然后点上“一键DFM分析”按钮。根据弹窗选择IPC文件,点击“分析”,结果。于是乎,就将软件关了重来,这里还必须杀掉进程,点暂停按钮会一直卡在那。也就是必须要保存为dfm文件先。

2023-09-28 15:58:31 1243

原创 三十而立学FPGA之按键消抖

按键为何消抖,原因是当按键按下和松开时,由于弹片回弹抖动,而导致按键对应管脚误判为多次按下和松开。从以下动图对比可以看出按键消抖.avi。

2022-07-23 04:39:31 348

原创 三十而立学FPGA之数码管

数码管,一种把多个发光二极管通过简单阵列的方式组合而成的显示器件。多个二极管阴极连在一起,通过控制阳极的高低电平来控制数码管相应LED亮灭的叫做共阴,反之共阳。每个发光二极管称之为数码管的段,连在一起的阴极或阳极称之为位。十进制输入十进制转BCD模块译码模块数码管扫描模块数码管模块实现1. 十进制转BCD模块十进制(二进制)转BCD通常使用方式是移位加三的算法。具体方式如下表示(以123即8‘b01111011为例):2. 译码模块以下代码以共阳极数码管为例3. 数码管扫描模块扫描计时扫描

2022-06-12 17:29:03 252 1

原创 三十而立学FPGA之UART

三十而立学FPGA之UARTUART介绍简介​ 通用异步收发器(Universal Asynchronous Receiver/Transmitter),既UART时序[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-evCiHWp6-1653002427921)(uart.png)]根据时序图可以了解到:1. uart在空闲的时候是高电平2. 当突变为低电平或者有一个下降沿,则是告知接收方uart要传数据了3. 这里实现为8bit数据传输,当数据传输完成,在1

2022-05-20 07:24:01 431

原创 FPGA之ROM编程,testbench仿真后出现输出没有值的情况

在做ROM初次编程时,使用IP核,编辑了testbench后,仿真出现Q没有值得情况。最终查找发现情况。在创建IP核的时候,在最后一项中勾选了Allow In-System Memory Content…………并且设置了ID。这一项,只有在逻辑分析仪的时候,必须要勾选,否则,在In-System Memory Content Editor中无法对找到ROM,导致无法更改ROM值。...

2021-04-26 00:55:00 1497

原创 Allegro做中文丝印竟如此简单

所需软件AutoCAD(或者其他CAD软件)AbleSoftwareR2VAllegroword操作步骤新建一个Word,输入自己想做的中文丝印(字体和其大小请参照下图提供的,这是我研究了之后得出的最好的)截图,另存为bmp图片格式用AbleSoftwareR2V软件打开保存的图片矢量化图片(一定要在文字上先用鼠标拖拽一个选区)得出下图所示为了保证丝印的完整和...

2019-10-28 10:28:58 6214

原创 1. ESP开发之实体按键(KEYPAD&BUTTON)控制LVGL控件

经过以上编程后,其实LV_INDEV_TYPE_ENCODER也是很容易实现的,只要将左右旋转和按下动作对应LV_KEY_LEFT/RIGHT以及LV_KEY_ENTER,剩下的代码基本都差不多了。

2025-07-30 20:45:44 681

原创 14. ESP32开发之ST7789显示

当进入嵌入式行业开始,SPI总线是最需要且基础的知识了,它是高速全双工串行总线,可做到同时收发数据。时序和控制根据各家的芯片或者屏幕等设备的数据手册进行阅读和进行编程,比如总线模式就有四种,通过寄存器CPOL和CPHA配置模式CPOLCPHA数据采样时刻适用场景000SCK下降沿,第1个跳变沿采样多数传感器(如BME280)101SCK下降沿,第2个跳变沿采样部分ADC芯片210SCK上升沿,第1个跳变沿采样特殊存储器311SCK上升沿,第2个跳变沿采样某些RF模块。

2025-06-29 19:07:13 1631

原创 13. ESP32开发之定时器中断

ESP32有一组外设–定时器组。它可以选择不同的时钟源和分配系数。该定时器应用灵活,超时报警可以自动更新计数值。一定要注意,在回调函数中不能使用ESP_LOGI或printf等打印函数,否则系统会崩溃。

2025-06-17 16:28:31 370

原创 ESP32开发之GPIO中断

在中断服务函数中不要使用ESP_LOGI或者printf等打印函数,将报错不能直接使用gpio_isr_register()函数,会报段错误,因为在注册之前需要清除中断寄存器等操作。可以通过分析gpio_install_isr_service()函数原型了解其中缘由。GPIO中断服务函数前一定要添加IRAM_ATTR关键字,表示将此函数放在内部RAM中,未添加则将放在flash中,中断触发后会反应很慢。

2025-06-12 09:57:12 541

原创 ESP32开发之WS2812B控制

仔细阅读数据手册,知道硬件电路的搭建,看懂控制外设的协议(就是时序图),匹配主控芯片可用的外设控制器,阅读官方指导文档,查看当前需要的API函数一步步填充API函数及相关结构体这样一个简单的控制程序就完成了。当然最后的结果就跟我粘贴的代码一样,都放在了main函数里了,业界称为屎山。这个时候就需要通过面向对象的编程思想以及设计模式等知识,将代码规范化、增强其可移植性等。要记住的是,只有理解了其基本的原理,才能万变不离其中。

2025-06-09 22:23:19 1505

原创 ESP32开发之LED闪烁和呼吸的实现

电路图如下:只要有硬件基础的应该都知道上图中,当GPIO4的输出电平为高时,LED灯亮,反之则熄灭。如果每间隔一段时间进行一次电平的反转,则将使LED产生闪烁的效果。从以上案例可以看出,对于通用GPIO的控制要么是高电平,要么是低电平。所以只能控制LED的闪烁现象。而对于ESP32-S3却有专用控制LED的控制器,称之LED PWM。它有8路低速通道。专用于控制LED。当然也可以产生PWM控制电机等。ESP32有两组LED PWM控制器,一组为8路高速通道,另一组为8路低速通道。

2025-06-03 22:03:00 1599

原创 ESP32开发之freeRTOS的任务通知

任务通知是直接给任务发送通知,不同于信号量、队列以及事件组,需要借助一个结构体句柄作为传输信息的桥梁。所以任务通知相对而言也更加高效。简化版任务通知,属于轻量级的二值信号量和计数型信号量,但相比二值信号量和计数型信号量更高效使用专业版任务通知实现的轻量级事件组,不好做到只接受一部分事件,有一定的局限性,虽然高效。

2025-05-16 17:16:10 739

原创 ESP32开发之freeRTOS的事件组

概念:事件组就是一个整数,高8位给内核使用,其他位用来表示事件。在ESP32的IDF freeRTOS中,这个整数是32位的,低24位用来供事件组使用。举一个生活中的例子Bit0:淘宝快递到了Bit1:京东快递到了Bit2:拼多多快递到了你告诉前台:“等这三个快递都到了再通知我。”(这就像任务阻塞,等待所有 bit 都被置位)前台每收到一个快递,就设置相应的标志位。当三个快递都到了,所有位都被设置,你就被“唤醒”了。也可以换种情况,比如你说:“只要任意一个快递到了就通知我。

2025-05-12 16:00:38 437

原创 ESP32开发之freeRTOS的互斥量

在freeRTOS中,多个任务访问一块共享资源,会产生竞争现象。比如马路上只有一个很早以前的电话亭,A、B都想要打电话,然后他们就开始打架了。但是如果A先进去了然后把门锁了,B想进去打电话的话只能在外面等,必须等到A把门锁打开。为了避免死锁,在中断中不要使用互斥量如果有嵌套使用互斥量,请使用递归锁,递归的层数由queueQUEUE_TYPE_RECURSIVE_MUTEX决定虽然freeRTOS没有实现谁锁谁开,但是开发过程中还是默认这么操作了。

2025-05-08 20:53:42 489

原创 ESP32开发之freeRTOS的信号量

简而言之,就是发出通知,接收通知的任务获得通知后去干啥啥。通知有多有少。自定义通知数量的,叫计数型信号量;只有有无(即“0”,“1”)通知的,叫二进制信号量。二进制信号量可以说是计数型信号量的特殊用法。信号量相对于消息队列要简单很多,区分好应用场景。信号量只传通知,消息队列是要传整个消息结构体的。如果看源码的话,信号量的API背后用的也是队列的API。二进制信号量对后面学习互斥量给予了启发,一个任务如果take了此信号量不give,另一个任务想take会是什么结果呢?等待下一期哦。

2025-04-30 16:44:11 534

原创 ESP32开发之freeRTOS的消息队列

消息队列的使用还是相对简单的。在创建队列的时候一定要注意元素所占字节数,一般使用sizeof函数。指针变量一定要初始化,在esp32的freeRTOS系统中可以使用pvPortMalloc函数。

2025-04-29 09:04:10 538

原创 安装了windows Teminal软件,右键菜单没有选项

但是很多时候安装了并不会在右键菜单中显示此项,这样就无法随时随地打开终端工具,比较麻烦。windows Teminal,一个windows上比较好用的终端工具。可以关闭软件窗口了,然后在桌面或文件夹试试右键菜单吧。找到安装的终端软件并打开。其实,解决方式很简单。

2025-04-24 11:10:15 706

原创 ESP32开发之freeRTOS中的任务创建

任务的创建是freertos里最简单也是最基础的操作,是必要掌握的内容。从以上案例,我们也体会到了多任务好处和必要。

2025-04-20 22:07:23 1019

原创 ESP32开发之Windows环境搭建

建议不要使用windows开发,编译时间会很长,项目越大越吃力。

2025-04-14 09:16:27 430

原创 ESP32开发之ubuntu环境搭建

这样就可以建立远程连接了,代码就可以在vscode进行查看和更改,但是我们会发现每次都需要输入密码,我们通过如下方式解决。键盘同时按下ctl+shift+p,在弹出的对话框输入如下,这样我们就可以任意查看和跳转代码位置了。按照上图依次安装如下插件。

2025-04-12 12:10:41 1386

原创 解决使用VsCode远程ssh连接虚拟机ubuntu需要重复输入密码

【代码】解决使用VsCode远程ssh连接虚拟机ubuntu需要重复输入密码。

2025-04-12 11:56:31 630

原创 爆火的DeepSeek,这些资料肯定用的上

资源链接:https://pan.quark.cn/s/ed14ab9a46e1。3个DeepSeek隐藏玩法,99%的人都不知道!【104页超详细】DeepSeek从入门到精通.pdf。DeepSeek15天指导手册一从入门到精通.pdf。DeepSeek-R1使用指南(简版).pdf。11个免费的DeepSeek网站.docx。deepseek20个提示词-1.pdf。deepseek20个提示词-2.pdf。

2025-02-11 11:27:16 271

原创 在 C 或 C++ 中遇到 `“initializer element is not constant“` 错误

对于结构体中的成员,初始化值必须是常量表达式。你可以使用const常量,或者在 C++ 中使用构造函数初始化列表来避免错误。使用宏常量也是一种解决方法。希望这些解释能帮助你解决问题!如果有其他问题,请随时问我。

2025-01-22 15:54:22 1211

原创 好书推荐-《Cadence高速电路设计:Allegro Sigrity SI-PI-EMI设计指南》高清标签

高速电路设计已是这个时代的现状。信号完整性,电源完整性以及电磁兼容将是layout工程师的必备知识。而Cadence的组件Allegro Sigrity将是layout工程师最大的助力之一

2024-03-21 08:59:35 1619

原创 I2C简单实验之LT6911UXC读取ChipID

i2c的读写最关键的就是设备地址了,驱动的框架是固定的。学习就应该在怀疑中调试,在调试中比较,在比较中得到答案。我们都是站在巨人的肩膀上的,当自己出现问题时,最好是看看巨人都是怎么做的。原文链接。

2024-03-18 10:34:07 2186 2

原创 20230412-使用STM32实现内部flash模拟U盘

​ 工程师干了几年后,基本会有小外包的生活,算是赚外快吧,搞小钱改善伙食,嘻嘻。。。。​ 最近有个客户找到我,说是否通过ST的单片机搞个U盘功能,有些文件通过U盘拖拽放入的方式比较方便。当时就有点懵了,这从来没这么用过,后来查查资料,还真网上有这么玩的,所以就记录下自己的实现过程​ 既然要搞,一般过程都是网上找个demo,看懂了然后自己改改,我也是这么干的。。。。

2023-04-13 11:39:22 3866 5

原创 RK628底层调试,使用V4L2调试工具抓图

RK628底层调试,使用V4L2调试工具抓图

2023-02-08 10:12:54 2751

原创 BGA锡球选择与PITCH的关系

参考IPC-SM-782A,其中有一张表格表示的很详细,这里记录一下

2021-08-04 11:08:00 5754

原创 使用Model integrity 选择一个IOCell查看view curve报错

原因分析:此IBIS模型所在目录路径有中文文件名,导致错误,路径必须都是英文并且不能有空格。

2021-04-21 14:25:00 399

原创 FPGA学习之串口发送程序设计(来自小梅哥的教程学习者)

1. UART说明可参考维基百科的文档:https://zh.wikipedia.org/wiki/UART2. 实现逻辑图示3. 程序实现module UART_TX(rst_n,clk,send_en,baud_set,data_in,data_tx,flag,state); input rst_n; input clk; input send_en; inp...

2021-04-20 17:26:00 984

原创 高速PCB布线

信号线布线基本准则合理选择层数减少高速元器件引脚间引线的弯折缩短高频电路元器件引脚间的引线减少引线层间交替对重要信号和局部单元实施包地措施所有信号布线不能形成环路,也不能形成电流环路每个集成块附近设置一个高频去耦电容底线设计单点接地和多点接地的选择数模分开尽量加粗地线接地线构成闭环布线后信号完整性仿真意义一般根据规则很难保住信号完整性。 元器件模型和PCB制造参数的精确性是决定仿真结果的主要因素...

2019-10-15 12:44:00 137

电子电路分析与设计 数字电子技术 ((美)尼曼(Donald A. Neamen), 尼曼 (Neaman, Donald A.))

电子电路分析与设计 数字电子技术 ((美)尼曼(Donald A. Neamen), 尼曼 (Neaman, Donald A.))

2025-01-08

EDID标准详解.pdf

EDID标准详解.pdf

2021-03-19

v4l2学习资料整理合集

内容包括: 1. V4L2 spec 中文 v0.625.pdf 2. v4l2-api-document.pdf 3. v4l2编程经典_.pdf 4. V4L2驱动编写指南.pdf 5. V4L2驱动程序架构.pdf

2023-02-01

于博士信号完整性相关资料

于博士信号完整性相关资料

2023-02-03

hyperlynx仿真书籍 kindle

本书以HyperLynx 9.0软件为基础,以具体的电路为范例,系统讲述了信号完整性和电源完整性仿真分析的全过程。本书不仅介绍了信号和电源完整性设计的基础知识,也详细介绍了HyperLynx 9.0软件的功能和使用流程。为了使读者对高速电路设计有更清晰的认识,本书还以理论与实践相结合的方式,对HDMI、PCI-E、DDR等设计电路布线前、后的仿真进行了详细介绍

2018-11-21

嵌入式系统可靠性设计技术及案例解析

《嵌入式系统可靠性设计技术及案例解析》介绍了嵌入式系统设计中,哪些地方最可能带来可靠性隐患,以及从设计上如何进行预防。内容包括:启动过程和稳态工作中的应力状态差别等可靠性基础知识及方法;降额参数和降额因子的选择方法;风扇和散热片的定量化计算选型和测试方法、结构和电路的热设计规范;PCB板布线布局、系统结构的电磁兼容措施;电子产品制造过程中的失效因素(包括EOS、ESD、MSD等)及预防、检验方法;可维修性设计规范、可用性设计规范、安全性设计规范、接口软件可靠性设计规范等方面的技术内容。同时,针对相关内容进行实际的案例分析,以使读者更好地掌握这些知识。

2018-01-24

Cadence高速电路设计Allegro_Sigrity_SI_PI_EMI光盘资料

Cadence高速电路设计Allegro_Sigrity_SI_PI_EMI光盘资料

2021-04-29

C语言三剑客

学习C语言,有了这三本就够了。可以在kindle等主流软件上阅读哦

2018-12-25

Cadence印刷电路板设计 Allegro PCB Editor设计指南 (2)

基于Cadence Allegro*新的设计平台,通过设计行业相关专家的经验分享、实例剖析,详细介绍了整个印刷电路设计的各个环节,以期对提高整个行业的设计水平有所帮助。 本书*大的特点是介绍了Cadence Allegro平台下PcB设计所有的工具,既对基本的PcB设计工具进行了介绍,也介绍了*新的工具,例如,全局布线环境(GRE)、射频设计、团队协同设计等。本书也介绍了Cadence*新的设计方法,例如,任意角度布线和针对*新的Intel的Romely平台下BGA弧形布线的支持,以及*新的埋阻、埋容技术。本书适合从事PCB设计的工程师参考学习。

2018-01-24

CAM350宏.zip

基本包括所有的宏,不要错过哦 CAM350自增强宏程集 自动封边宏 最好做GDD的宏及方法 焊盘标注04-11-12 自动加边框 自动加角线 自动加尾孔

2020-11-24

allegro解决大鼠标拖影问题

一般情况下 , 我们在安装了 Cadence 软件之后 , 都会碰到在大鼠标情况下的拖影问题 , 这往往是由于显卡的兼容性不够造成的 , 通常的解决办法是关闭 Opengl, 如果我们关闭 OPENGL 功能 , 可以使大鼠标不出现拖影 , 但是在关闭了 opengl 的情况下面 , 我们的 3D 和 PCB Flip 功能也无法正常使用 , 所以会给我们造成很多不必要的麻烦 !

2018-11-13

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除