![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式开发
blacksharpsss
这个作者很懒,什么都没留下…
展开
-
GD32和ST32 硬件I2C锁死问题分析解决
在实际过程中可能会发现硬件I2C锁死,无法读写的情况。STM32的话可以通过查询BUSY标志位来判断,进而使用软件复位的方式来回复异常状态,重置i2c,即可解决。GD32的情况有所不同,GD调用软件复位会清掉I2C配置,不如重新配置i2c或者使用stop来清除Bsy。原创 2022-11-06 15:24:30 · 2957 阅读 · 0 评论 -
STM32G473晶振不起震
最近遇到STM32G4晶振两端无波形,以为没启震,最终发现是示波器探头的问题,其探头实际电容为200pf,MCU晶振管脚驱不动。实际上有一个MCO功能,可以将晶振的波形通过此功能输出到一个管脚上查看。刚好下图是晶振的频域特性,可以看到当频率在Fs和Fa之间时为感性负载,这时就可以看作电容三点式LC振荡器,电感和电容相互充放电,不考虑损耗,不就震荡起来了吗。可以看到比较接近32.768的是6pf左右,另外换成200pf的电容也是可以启震的,探头加上去不行,应该是两端的电容不匹配,另一个是探头的输入电阻。原创 2022-09-19 20:34:55 · 445 阅读 · 0 评论 -
FATFS介绍及相关参数计算
MBR 主引导记录(MBR,Master Boot Record)由 446 个字节的引导代码、64 字节的主分区(4 个)表及两个字节的签名值“55 AA”组成。#define BPB_FATSz16 22 /* FAT size (16-bit) [sector] (WORD) */96个。四个分区,每个分区为16字节信息共64字节,加两字节的数字签名刚好为一个扇区大小512,其他填0。一个保留扇区,一个fat文件扇区32,512个目录,每个目录32个字节,占32个扇区,原创 2022-08-20 10:55:24 · 825 阅读 · 0 评论 -
瑞萨RA6系列bootloader分析
Flash Layout|Image 1 Flash Area Size (Bytes) 大小为0x20000从0x80开始。:Flash Layout|Image 1 Header Size (Bytes) 大小为0x80从0开始。0x0c地址存储app本身文件大小 我的为0xfc6c,不包含Header Size。0x80开始存放的是中断向量表,第一个为SP,第二个为PC共112个。0x2c, 0xb6, 0x79, 0x80, ])字节结尾。0x14地址存储APP版本。...原创 2022-08-03 21:00:24 · 760 阅读 · 0 评论 -
AT24C16和I2C
AT24C16总结容量:256*8Byte,数据地址计数器:8位,只能寻址256个字节,需要分成8块,每块用A2-A0指定。断电后,内部数据地址计数器清0;上电期间,保持最后一次的读写地址,但是会有翻转地址的情况读翻转: 最后一页的最后一个字节地址翻转到第一页的第一个地址写翻转: 当前页的最后一个字节地址翻转到同一页的第一个地址24C16的页是由低4bit决定,所以1页16字节读模式实际只有两种:当前地址读:由内部数据地址计数器决定,只读1byte指定地址读:用户原创 2022-05-18 19:23:03 · 857 阅读 · 0 评论 -
灯板驱动芯片TM1628问题
TM1628最多可以读5个字节,不允许多读动态扫描:TM1628芯片最多写14byteSeg只能接led阳极GRID只能接阴极,不能反接由于SEG是P沟道开漏输出,不加外围,只能输出高电平寄存器移位由于多发了一次地址起始命令...原创 2022-04-23 15:19:42 · 1494 阅读 · 2 评论 -
网络开发遇到的术语总结
最近工作上需要用到网络这块功能,做个记录。ME: Mobile Equipment(移动设备)CS:Circuit Switched voice network (e.g. GSM, CDMA),电路交换.电话和短信等业务,主叫和被叫方之间建立电路连接,PS: Packet Switched data network (e.g. EDGE, UMTS, EVDO),分组交换 上网、FTP和流媒体note: 物联卡没有CS业务,只有PS业务IMSI: Inte...原创 2022-04-23 14:55:10 · 103 阅读 · 0 评论 -
E2STUDIO显示大小端问题
最近用到瑞萨RA6M2系列芯片,从MEMORY中看数据是大端存储,手册说是The Cortex ® -M4 core is fixed at little-endian order小端固定。那是哪里的问题呢?上手实验,定义一个16位的变量,赋值为0x1234然后取地址+0,看值0x34,取地址加1,看值0x12。确实为小端模式。那就是E2 studio 中的memory界面做了处理。...原创 2022-04-23 14:45:56 · 155 阅读 · 0 评论 -
瑞萨RA芯片DTC问题
DTC一直再发数据,最终发现是硬件上的接收脚上拉电平的问题,原本应为3.3v,实际上拉为1.8V。另外,DTC和DMA很类似,都不需要CPU参与处理,由硬件自动完成。区别:DTC的寄存器映射到一片RAM区,CPU无法直接访问,只能通过这片ram间接操作。...原创 2022-04-16 20:50:36 · 844 阅读 · 0 评论 -
变量和一级指针和二级指针的异同
普通类型 ,不用跳转Int p ;P为变量的数据一级指针:跳转一次Int *p;P为指向int型的指针变量,是变量的地址初始化 Int *p = 0;不指向任何地址在应用中*P和p的不同,*p表示指向地址的内容,p表示地址*p = 4,表示将指向的变量内容修改为4P = 4 标志指向一个本身地址为4的变量二级指针:跳转两次Int **p,把变量的地址作为中间指针的内容,然后把中间指针本身的地址给p*p为中间指针可以将一个指针变量取地址给*p即可原创 2022-03-12 09:02:41 · 152 阅读 · 0 评论 -
RS485知识点
为什么RS485空闲时的电平要求大于+200mv?这不是很容易被接收端接收吗?a.其实,如果RS485的AB线空闲电平如果小于+-200mv,485芯片的输出不定,有些芯片会输出高。为避免这种问题,需要设置AB线的压差大于+-200mv。b.哪为什么需要设置为+200mv呢?如果设置为-200mv总线上就一直是低电平,mcu会认为有起始位,误触发接收中断。...原创 2021-11-23 15:00:26 · 2852 阅读 · 0 评论 -
嵌入式常用软件
PC端监控通讯数据利器:CommMonitor代码比对工具:BeyondCompareModbus主:Modbus POLLModbus从:Modbus Slave持续更新原创 2022-02-23 10:20:39 · 1253 阅读 · 0 评论 -
BootLoad中上位机与下位机交互
上位机 下位机复位 ----------------------------------à APP复位进入boot查询 2s内总线无数据 点击查询----------------------------------à 硬件名boot版本,APP版本 <------------------------------------ ...原创 2022-03-06 10:33:30 · 348 阅读 · 0 评论