![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
daisy.skye
Linux底层驱动开发:高通msm8953/msm8090/sdm450、RK3568的gc/ov-camera、mipi-lcd,tp等外设开发;嵌入式开发:精通i2s、i2c、uart、can、modbus等协议驱动开发;精通STM32、GD32、PY32等mcu;熟悉FPGA(安路)+CPLD的fifo、ram开发;目前扩展国科、海思平台下
其他领域:Vue+Js+Mysql(前后端);Qt+Wincc(上位机)、CANdb++LAN LIN(车载)
技能:datasheet分析、示波器信号测量、PCB电路排查、0402焊接、GPT使用
在线有偿佛系提供学习、技术、方案、改版等指导
展开
-
分析DS26521 数字中继E1工作模式
RCLK在主从模式下都有2.048MHZ的时钟输出,可以提供给其他DS26521的板卡MCLK用于同步时钟,相当于串联。当然直接使用MCLK同时给多个DS26521也是可以的,相当于并联模式。另外一直重要的作用就是从模式下,输出2.048MHZ时钟给到上层倍频到8.192MHZ用于同步。当DS26521以背板时钟做主时钟时,TCLK连接MCLK,当对接外部板卡以从模式工作时,TCLK连接RCLK。数字中继,接入2路2M(E1工作模式),每一路支出30路通话。DS26521评估版参考电路。原创 2024-03-11 10:47:27 · 427 阅读 · 0 评论 -
基于rk3568解决gpio阶梯波形(适用于i2c、uart、电平转换)
实测中遇到的是i2c问题,但是uart或者电平转换芯片都会遇到,首先保证外部是否有1k电阻的上拉,当然具体的电阻可以自行进行调节,其次需要满足开漏模式的输出(OD)。根据原理图的地址,查询rk3568的手册得到gpio的OD配置及地址,daisy.skye擅长嵌入式,Linux,Qt,等方面的知识。daisy.skye_嵌入式,Linux,Qt-CSDN博客。kernel编译(单编 boot.img 同步骤)1、理解GPIO的开漏(OD)和开集(OC)单独编译boot.img。2、查询io寄存器地址。原创 2024-03-08 09:28:08 · 1108 阅读 · 0 评论 -
PY32F003 FLASH
Flash_KEY定义的路径:Libraries\CMSIS\Device\PY32F030\Include\py32f030xx.h。了解py32芯片的flash内容,对于py32进行api升级有更好的了解的操作。原创 2023-08-08 19:36:44 · 574 阅读 · 0 评论 -
DTC143ZM理解介绍(含电路应用)
举个例子,如果我们将DTC143ZM用作开关,将负载电阻连接到集电极和正电源之间,将发射极连接到地线,那么当基极电压为高电平时,晶体管会导通,电流从正电源流向负载电阻,输出功率为Pout。当基极电压为低电平时,晶体管会截止,电流无法流过负载电阻,输出功率为0。因此,我们可以通过控制基极电压的高低来控制输出功率的开关状态。DTC143ZM有三个引脚,分别是发射极(E)、基极(B)和集电极(C)。其中,基极是控制引脚,通过控制基极电压来控制集电极和发射极之间的电流流动,从而控制输出功率(Pout)。原创 2023-06-19 12:01:34 · 417 阅读 · 0 评论 -
Dump寄存器使用、解析
echo <寄存器地址> <值> > /sys/class/sunxi_dump/write。echo 寄存器地址 > /sys/class/sunxi_dump/dump。daisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主。从右往左,按照0起步开始数,30:28 是010 就是UART1_RX。daisy.skye擅长嵌入式,Qt,Linux,等方面的知识。前人种树,后人乘凉;创造不易,请勿迁移~原创 2023-06-19 11:59:16 · 506 阅读 · 0 评论 -
PY32F003x开发——GPIO端口复用 tim pwm
同理PA6 如果想要输出pwm 先对TIM3定时器的CH1通道进行初始化。初始化PA0/PA3为TIM1_CH1N/TIM1_CH1。/** * @brief 初始TIM相关MSP*/原创 2023-05-15 16:03:46 · 838 阅读 · 0 评论 -
解决IAR出现Probe not found Session aborted!的问题
在工程设置中“Debugger>Setup->Driver”中,将默认选择的“CMSIS DAP”修改为J-Link/J-Trace并勾选右侧的“Run to main”。在开发PY32时,使用的IAR软件,但是download and debug 时出现弹窗报错。在项目project上点击鼠标右键选择options。原创 2023-04-18 19:21:41 · 5043 阅读 · 1 评论 -
设备注册挂载流程(包含上电、使能、i2c通讯介绍)
任何相对于主板芯片的外挂设备都需要一定的注册挂载流程(外挂设备:比如摄像头、nfc芯片、显示屏等等)设备的挂载则需要满足一定的顺序上电时序普通的电灯可能通上5v电压就可以工作(不同的灯需要的消耗电压功率也是不一样)但是大部分稍微有功能的设备上电的不单单是一个5v电压不同比如摄像头需要三个不通的电压,分别是IOVDD,DVDD,AVDD,每个电压的大小不一样,而且一定要按照厂家的要求进行供电,不能低也不能高。因为摄像头内部的电路会检测电压才能正常工作。时序不同。原创 2023-01-11 19:57:01 · 758 阅读 · 0 评论 -
STM32 如何使用定时器心跳检测串口数据
定时器就是一直隔一段时间会进来处理数据,如果处理串口例如9600波特率,那么就需要每过104us进行检测,定时检测的时间只能比104us时间小,不能大。如果连续检测到gpio的变化就开始执行别的函数。(为什么我不用串口中断检测,因为我这边是gpio模拟的串口,工作中很多地方都需要扩展串口)定时时间72MHz=72000KHz=72000000Hz相当于1秒中可以记72000000次数。原创 2022-12-19 15:28:01 · 851 阅读 · 0 评论 -
stm32 如何查看系统各个时钟
在代码中加入以下函数,然后进行debug调试就可以看到各个时钟的具体结果。再查看时钟树,就知道各个时钟分别控制的是哪个总线。分别对应的就是 72Mhz 和 36Mhz。原创 2022-12-12 15:04:29 · 2707 阅读 · 0 评论 -
FreeRTOS的名词认识
FreeRTOSFreeRTOS的任务级0~31 共32优先级 数字越大优先级越高(ucos相反)退出任务需要使用删除相应的任务任务属性称为任务控制块动态创建会自动生成任务堆栈(静态则需要自定义堆栈),任务堆栈保存任务现场(CPU寄存器值)任务堆栈定义为50时要看类型 比如unit32 为4个字节 则最总堆栈大小为50*4=200B 在主函数调用时要注意不要超过堆栈内存,适当可以增大对STACK 大小的定义删除任务,在函数结尾用vTaskDelete(...原创 2020-07-30 16:13:21 · 286 阅读 · 0 评论 -
如何理解vcc,vdd,vss
VCC: C=circuit 表示电路的意思, 即接入电路的电压(双极器件的正,一般就是总芯片或总设备的正极,供电用的)VDD:D=device 表示器件的意思, 即器件内部的工作电压(单极器件的正,简单就看成VCC也可以,毕竟VDD是基于VCC输入后分压给各个元器件的电压)VSS: S=series 表示公共连接的意思,通常指电路公共接地端电压(没有要求可以直接接GND,部分会接入负电压)所以在数字电路上更好理解,VCC是电路的供电电压,VDD是芯片的工作电压(通常原创 2020-07-28 10:04:09 · 2890 阅读 · 0 评论 -
USART输出乱码 & USART配置后没有输出波形
然后再用,usb转TTL ,在电脑上通过串口助手工具,配置9600来来收数据,但是发现收到的数据乱码,而且会跳变,但是把电脑端改成14400就可以接收正常。通常我们在配置usart的函数中都会定义USART_BaudRate来定义传输的波特率例如9600,那么就会导致usart 配置好的波特率 ,出现输出异常,如果这个对的话,看看是否统一接地信号。可以检测以下串口初始化的条件,再全局函数查看下,时不时有地方被注释了倒置没有生效。如果函数都配置了,示波器检测不到数据输出的波形,那么原因肯定是配置的疏漏。原创 2022-11-01 13:54:53 · 467 阅读 · 0 评论 -
USB 防浪涌保护
防浪涌的元器件也不是非要不可,只是起到保护左右。浪涌:就是电压突然变高或者变低,就像浪一下。用来限制电流,那么限制电压也可以用。电路中FV表示限压型电涌保护器。原创 2022-09-22 20:40:40 · 1670 阅读 · 0 评论 -
RS485通信——GM3085引脚定义和使用
其中DE和RE连接,当DE高电平,使能输出;让RE 低电平时,使能接收。具体的参考如下说明,当然高低电平需要将DE连接到mcu的引脚进行配置。485是双线连接,一读一写,并且通过自定义的ID可以接主从设备。下面是常用的GM3085 的引脚图。......原创 2022-08-26 17:58:04 · 1765 阅读 · 0 评论 -
深度理解 RGMII (包含Linux和realtek)
网常见的路径MAC+PHY+RJ45,但是如果没用RJ45也可以PHY层相互连接传输数据,那么想到可以省去RJ45,也可以省略其中简单的PHY,直接两个MAC连接,充当MAC的其中一方需要有网络数据流入,即网卡。当其实MDIO不需要也是可以的,对于像RTL83xx系列的模块,要进行固件的代码配置,其实可以直接进行配置不需要mac层来控制,即不需要接MDIO线。MAC需要将以太网包转换为字节流。在RGMII中没有特别的要求,不过一般linux的clk_tx会使用clk_rx,即读到的时钟为输出的时钟。....原创 2022-08-16 17:00:36 · 6772 阅读 · 3 评论 -
网口灯电路——反相器
网口灯的配置反相器,用于抗噪原创 2022-07-05 16:02:01 · 1281 阅读 · 0 评论 -
STM32之GPIO_Mode定义和区别
目录GPIO_InitStructure.GPIO_Mode定义区别举例子深度理解:浮空输入:此条件下,gpio的电平不固定会随意高低上拉输入:gpio一直保持高电平,只有外部输入的变成低电平才会翻转到低电平,所以如果是高电平则无法比较同理下拉输入,gpio一直保持低电平,只有外部输入的变成搞电平才会翻转到搞电平,所以如果是低电平则无法比较所以具体的看gpio的外部需求来设置比如stm32的gpio口模拟I2C协议,向外设芯片进行数据交互,但是每个数据发送之后会有ack相应,对应的ack就是高电原创 2022-06-18 16:15:46 · 2278 阅读 · 3 评论 -
KEIL 268错误,声明不能出现在块中可执行语句之后
user\sx5g.c(67): error: #268: declaration may not appear after executable statement in block声明不能出现在块中可执行语句之后原创 2021-01-18 11:37:53 · 3193 阅读 · 0 评论 -
PHY芯片快速深度理解(持续更新中……)
物理层芯片称为PHY、数据链路层芯片称为MAC。可以看到PHY的数据是RJ45网络接口(网线口)穿过了的差分信号,而PHY作用就是将差分信号转为数字信号,这块内容不用深究,制造商都设计好了。那我们干什么呢?(主要是对phy芯片进行模式选择,比如工作速率,工作模式)为什么要熟悉RJ45网口上面说到针对phy芯片我们只要进行模式选择(下文会介绍使用mdio接口,通过寄存器控制)那模式选择后,如何查看是否有效呢?最简单直接的就是通过RJ45网口的指示灯查看。原创 2022-04-11 11:56:33 · 43815 阅读 · 32 评论 -
Jlink仿真sw调试方式的4线连接方式
Jlink的四线sw调试方式首先要看jlink的引脚图,了解为什么是四线,分别是VCC,GND,SWDIO,SWCLK.其中VCC和GND相信不用多说,主要是SWDIO和SWCLK 一般都是简单的说串口;网友具体解释 SW——常用作“开关”一词的缩写;DIO——DATA I/O,即数字量(开关量)的输入/输出;CLK——英文CLOCK的缩写,是时钟电路的意思然后根据芯片的引脚图,我这边的是飞思卡尔的kea128芯片,看好对应的A4,C4定义就可以开始连接了接着打开.原创 2020-07-27 11:27:20 · 21205 阅读 · 1 评论 -
联发科技MT2523低功耗可穿戴芯片(含官网、渠道、文件资料)
联发科技MT2523家族芯片(MT2523D/MT2523G)采用高度整合的封装系统,搭载一个微型控制器单元、低功耗GNSS (MT2523G)、双模蓝牙功能和电源管理单元。微型控制器单元则是使用ARM Cortex-M4 processor + FPU架构,整合4MB PSRAM与4MB闪存。MT2523同时支持UART、I2C、SPI、I2S、PWM、SDIO、MSDC、USB、PCMIF、ADC,及双数字麦克风等接口。官网:MediaTek | MT2523D销售:達發科技原创 2021-09-28 14:20:34 · 1175 阅读 · 0 评论 -
使用JFlash烧写boot教程
使用JFlash烧写boot选择Creat a new project创建新的文件,点击Start J-Flash启动后会有弹窗点击三点扩展进行Select device选择设备,设备比较多,根据芯片的制造商快速定位选择,这里我用的还是NXP的SKEA128,点击OK设置Target Interface 目标接口,一般就默认SWD ,同样的设置好Speed速度,一般默认,再次点击OK 发现左侧增加了一个Project项目窗口点击菜单栏File- Op...原创 2020-07-30 16:17:40 · 3653 阅读 · 1 评论 -
使用emodbus库搭配EPS32搭建ModbusServer服务器
emodbus网站:ModbusServer - eModbusGIT库下载:https://github.com/eModbus/eModbus虽然使用的emodbus库进行使用,但在测试example的过程发现文档中有些问题,这里提供解决方法和注意的地方。测试报错:ModbusClientTCPasync.herror: AsyncTCP.h: No such file or directory原因:使用的ModbusClientTCPasync.h中加载了Async...原创 2021-09-26 09:25:16 · 1690 阅读 · 1 评论 -
ModbusPoll和ModbusSlave理解及模拟器ModbusTcp一对一和一对多通讯
目录ModbusPoll和ModbusSlave理解Modbus总概:主从区分:模拟器简介:ModbusTcp一对一通讯ModbusTcp一对多通讯ModbusPoll和ModbusSlave理解Modbus总概:Modbus设备可分为主站(poll)和从站(slave)。主站只有一个,从站有多个(这里的多个是指寄存器位置不同设置的多个从站),主站向各从站发送请求帧,从站给予响应。在使用TCP通信时,主站为client端,主动建立连接;从站为server端,等待原创 2021-09-26 09:17:00 · 11248 阅读 · 0 评论 -
ESP32系列区别—ESP32-WROOM-32和ESP32-WROOM-32E和ESP32-WROOM-32U的区别
简单来说就是32E和32U是32的升级版本,具有更高的稳定性具体的区别建议官网查看:模组概览 | 乐鑫科技最近有新项目要用到32E,要去某宝购买回来练练手,但是发现有芯片和开发板,开发板更适合新手和软件开发者,但是再一看有搭载32的开发板,3u的开发板,一脸懵,百度了区别但是广告更多,还是决定看官网,对比可以看到32E是32U和32的升级版本,具有更高的稳定性安全性。所以还是选32E的吧,虽然贵的/>_</受不了,上传的图片被压缩了,大家还是官网看把...原创 2021-09-26 08:53:16 · 19938 阅读 · 0 评论 -
ModbusPoll和ModbusSlave使用(搭配VSPD,串口接收发数据)
modbuspoll和modbusSlave在通讯上有五种方式,本篇介绍的是其中关于Serial Port串口的通讯使用VSPD虚拟串口,创建虚拟端口COM1和COM2Modbus Poll和Modbus Slave分别connection连接串口COM1和COM2保证串口的波特率一致才能通讯成功(即发送和接收正常)serial Settings中的设置分别是:通讯串口/波特率/数据位/奇偶校验位/停止位选择Modbus Poll主机发送数据,相应的在Modbus S原创 2021-09-26 08:35:51 · 2211 阅读 · 0 评论 -
kea128 ADC采样 引脚电压 使用gpio_get() 无法检测
(ad采样时 引脚的io高低无效,使用gpio_get() 无法检测)鱼和熊掌不可兼得!!!在使用gpio_get(PTF6) 函数无法检测高低电平时,使用ad采用检测按键按下后引脚电压查看通道后发现PTF6属于通道14在adc_init()后,再调用gpio则无法使用相关函数,所以使用gpio_get()无法检测io口的高低电平,如果一定要使用gpio,把adc_init()删除...原创 2021-03-09 09:20:47 · 434 阅读 · 0 评论 -
keil输入文字显示问号?
解决方法:原创 2021-01-12 10:08:59 · 7389 阅读 · 1 评论 -
progisp编程下载器:芯片识别字不匹配 & 不能完成芯片擦除
通过usb连接板子选择芯片AINT44(根据自己使用的改变)调入Flash (hex文件)点击自动开始烧写报错:芯片识别字不匹配 & 不能完成芯片擦除点击下方左侧编程Low-High 调整烧录的频率即可...原创 2021-01-07 16:29:34 · 2157 阅读 · 2 评论 -
Keil 代码自动对齐整理格式化
keil里面编写代码不齐真的头大投机取巧的方法:将代码拷贝到VSC里面自动格式,放到QT里面自动格式对齐但是如果有中文就难弄了目录步骤一:添加插件工具Astyle步骤二:创建菜单按钮Style Project File 和Style Current File步骤一:添加插件工具Astyle百度网盘连接 https://pan.baidu.com/s/1zERvI7Jb6exP4VjPRz91LQ 提取码 z9ki步骤二:创建菜单按钮Style Project File 和S..原创 2020-08-25 10:06:25 · 7132 阅读 · 1 评论 -
NXP系列飞思卡尔kea128扩展板原理图
这里放几个重要部分引脚原理图,有其他的需要的可以评论留言,我有的话就会上传底板芯片引脚定义SWD仿真调试接口引脚CAN总线引脚定义扩展板原创 2020-07-28 09:33:32 · 1151 阅读 · 0 评论