自定义博客皮肤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)
  • 收藏
  • 关注

原创 米勒电容-Mos管驱动台阶

现象-Mos的米勒电容导致,Mos管的上升和下降不够陡峭是Mos管发热的直接原因。Vgs的测量,是G、S的电压差,并非G和GND的电压差。Mos管存在三个电容,从Mos手册可以看到电容。Ciss是输入电容,Ccss是输出电容。Cgs会导致上升沿缓慢和振铃现象。Cds影响功率回路。Cgd是米勒电容。Cgd跨接在G和D之间,使得输出的信号被耦合在了输入端,导致Mos开通时间延长发热,或者Mos误导通烧毁。电容知识:测试电路:黄-GS,蓝-DS,粉色-SS。

2025-03-31 18:03:27 554

原创 器件选择1

一般需要NMos管,基级驱动需要电压Vgs一般10V-20V,若使用12V驱动的Mos管,则Vgs一般需要达到12V,驱动电压接近12V,Mos管内阻越小。Mos管的驱动一般为Mos管寄生电容的充放电问题,一般充放电速度越快,电流越大,速度越慢,电流越低。负载电容关系到外部电容选择设计。芯片负载电容(常用20pf) =(并联电容1*并联电容2)/ (并联电容1+并联电容2)+走线寄生电容(2-3pf)+芯片寄生电容(若有,例如手册7-8pf)。电容串联计算公式 1/C = 1/C1 + 1/C2。

2025-03-15 16:01:16 951

原创 FreeRTOS原理

然后任务TaskBlinkRedLed可以通过xQueueReceive来从队列中获取数据传输到任务的变量message中,此处cpu运行到这个函数,若队列中没有消息,cpu会先运行其他任务(任务阻塞),当xQueueReceive获取到队列的参数值,会继续从xQueueReceive往下执行。1、正常单片机作为单核,只能同时执行1个任务,若想同时执行2个任务或者定时长执行多个任务只能进行定时中断,或者定时计时判断。若不同的任务使用同一全局变量,可能会导致不同任务运行中变量值不同步。

2025-03-15 00:31:04 168

原创 CANID-MCP2518FD屏蔽寄存器赋值(11bit,CAN2.0标准帧)

在使用MCP2518FD时,需要多个标准帧接收,但是需要用到屏蔽器和过滤器,否则庞大的数据量会导致设备接收处理不过来。若使用接收中断(中断或查询方式),会导致设备工作异常。

2025-03-12 01:13:28 944

原创 通信校验和

例如Frame_Sum = 477,我们计算校验和,计算机为了计算方便,正数原反补相同,负数进行补码存储。利用数据和的,低8bit字节取反+1的补码获得,a = 256%数据和(低8bit)。然后接收端通过 数据和+a = 256(低8byte = 0)来验证数据正确性。1111 .... 1111 0010 0010(反,除符号位全部取反)-Frame_Sum(int)->取低8bit(uint8_t)数据和+(uint8_t)(-Frame_Sum)=0。0010 0011作为传输字节(正数)

2025-03-07 14:08:15 123

原创 python-串口助手(OV7670图传)

主python文件从文件,同目录下LightSwitch.py。

2025-03-05 19:50:17 351

原创 结构体位域操作,和共用体配合使用

main中通过c创建共用体变量f,通过GetData的结构体变量定义,所以可以进行f.d.a和f.d.b操作,操作这8bit的高3和低5bit。GetData定义了一个结构体变量,该结构体变量将unsigned char的bit进行了重新分配,其中低5bit为a;c定义了一个共用体变量,其中将GetData和unit8_t共用8bit空间,因为GetData变量将bit更细的划分了。最后输出可以看到,输出f.e为8bit作为uint8_t的一个整体,也可单独输出bit,a、b。需要配合共用体使用。

2025-03-03 23:14:16 326

原创 蜂鸣器使用

无源蜂鸣器模块根据输入的 不同方波信号(作为震荡源)可以发出不同的声音。驱动电路中三极管电阻一般为1K-4K都行,能够让三极管导通即可。(三极管即带箭头的部分,基极和发射机(PNP)或者集电极(NPN)能够导通,并产生驱动电流,则发射极和集电极即可导通)芯片驱动蜂鸣器。

2025-03-02 21:54:41 693

原创 python,获取当前系统时间

【代码】python,获取当前系统时间。

2025-02-27 00:46:06 116

原创 python,串口接收的字节对象画图

实例中,用数据模拟了串口接收到的数据包,数据包有包头和包尾,数据默认为黑色(RGB565),(RGB565转RGB888和PIL图像)显示在canvas画布。

2025-02-27 00:41:13 104

原创 基于python的串口助手,可收发Hex数据包,不自动发送换行

可完成功能,接收文本数据和Hex数据,发送文本数据和Hex数据。

2025-02-25 21:30:16 163

原创 Androidstdio-真机调试

调试app可以在日志中查看日志,详细日志查看方法看前面的帖子。更新完成后,在编译器查看,此时真机已经显示出来了。Androidstdio设置中下载USB驱动。如果有这种日志输出,运行到此处日志就会显示。手机通过数据线插入电脑。

2025-02-01 19:53:56 260

原创 Android学习制作app(ESP8266-01S连接-简单制作)

部分理论见和以下直接上代码和效果视频,esp01S的收发硬件代码目前没有分享,但是可以通过另一个手机网络调试助手进行模拟。也可以直接根据我的代码进行改动自行使用,代码中已经对模块进行了详细注释。本人不是java开发专业人士,也是通过ai完成的。使用以下文件需要完成AndroidStdio的安装和SDK,SDK插件、gradle的配置,详细可以见之前的文章。

2025-02-01 19:44:23 1658

原创 arduino学习

只看自己看指定看错误日志。

2025-01-26 10:09:10 696

原创 Android Studio安装配置

如果没意外下载完成后应该会成功,如果有问题就查看报错,是不是什么版本没对上,目前使用SDK34,SDK TOOL34,Gradle8.4 ,Gradle Plugin8.3.0-rc01,JDK好像是自动配置的8还是7,Android Studio安装后会自动配置。安装过程中,文件夹放在自己想放的位置(尽量便于管理,例如:D:\developSoft\Android Studio23.2.1\)。配置SDK地址,我放在默认目录下的,应该可以不放在C盘。安装完成后打开后,直接新建工程,设置(下载记得点OK)

2025-01-23 22:10:39 1254

原创 ESP8266-01S、手机、STM32连接

1、ESP8266-01S的工作原理。

2025-01-18 17:48:22 3122

原创 ESP8266固件烧录

ESP8266芯片本身支持26MHz和40MHz晶体,如果使用40MHZ晶体,默认波特率为115200,如果使用26MHz晶体,UARTO电源后的波特率=26*115200/40=74880,安信可ESP8266系列模块都使用26MHz,因为一般串行端口工具不支持波特率,所以打印时会出现乱码。下图是官方给出的图片,其中ESP8266-01S没有引出GPIO15引脚,只引出了八个引脚,分别是3V3、RST、EN、TX、RX、IO0、IO2、GND。将模块沿着板的一侧放置,天线沿着板的另一侧放置。

2025-01-15 11:33:34 2049

原创 单片机基础-C语言指针

((__IO uint16_t *)(0x1FFFF7E8))操作,对于0x1FFFF7E8,通过(__IO uint16_t *)变为uint16_t类型数据的32bit地址指针,通过*取该地址的值返回。指针变量表示的指向变量的类型,指针变量的大小和系统bit有关,指针变量指向的值和指针变量类型有关。指针变量根据存放系统的不同,占用空间大小也不同,实际上就是根据系统单词处理bit来占用的空间,例如32bit系统,需要用指针存储32bit的地址,所以指针占用空间32bit,4byte。

2025-01-11 17:39:38 242

原创 STM32内置Flash

1、烧写程序后可以看到程序持续运行,此时、OLED显示程序存储区flash的最后一页存储的8Byte数据,第一次使用为0x00000000,可以看到指定的flash第一次读写标志位0xA5A5和0x00等数据已写入。2、按键PB10可以看到程序存储区flash最后一页存储的前5字节当前数据变为0x1111;0x2222;0x3333;0x4444;按键PB11可以看到数据会自增。

2025-01-09 00:02:14 1316

原创 STM32-WWDG/IWDG看门狗

WWDG/IWDG一旦开启不能关闭,可通过选项字节在上电时启动硬件看门狗,看门狗计数只能写入不能读取。看门狗启用时,T6bit必须置1,防止立即重置。

2025-01-07 19:26:17 1336 2

原创 PWR-STM32电源控制

睡眠模式不响应其他操作,比如烧写程序,烧写时按住复位键松手即可下载,在禁用JTAG也可如此烧写程序。对于低功耗模式可以通过RTC唤醒、外部中断唤醒、中断唤醒。

2025-01-06 17:08:16 929

原创 STM32-BKP备份寄存器&RTC实时时钟

其中year为从1900年的第几年(最小应该为70);mon月份从0开始;wday表示周几;yday表示每年的第几天;isdst是否使用夏令时,1表示用,0不用,-1表示不知道。夏令时为在夏天的某段时间将时间提前一个小时。实际使用:mktime函数原理,通过输入的年月日时分秒计算,其他参数会自动计算回填,可以通过此函数自动计算星期。strftime函数参数(char *c,size_length,const *char,const struct tm*),其中const *char为格式字符串。

2025-01-03 15:12:42 1060 1

原创 SPI通信-(STM32)

非易失性存储器一般为Flash(Nor Flash、Nand Flash)、EEPROM。易失性存储器一般为SRAM、DRAM。固件程序存储为XIP(eXecute in Place):直接把程序文件下载到外挂芯片中,需要执行程序时,直接读取外挂文件的程序芯片进行执行。就地执行,比如电脑里的BIOS固件。双重SPI和四重SPI,利用总线线束进行多根一起收发(MISO、MOSI、WP写保护、HOLD),提高通信速率。寻址为24bit,

2025-01-02 13:10:02 1384

原创 STM32-I2C通信

软件撰写通信功能(根据引脚进行宏定义)、撰写基本通信单元(GPIO初始化、数据和时钟高低电平控制宏定义(写一bit),读1bit,起始(重复起始)、终止、发送一个字节、接收一个字节、发送应答、接收应答)、建立芯片的c和h文件、在芯片文件中建立基于通信基本单元功能(指定地址指定字节数读、指定地址指定字节数写、寄存器结构体和共用体映射、芯片配置函数(初始化:解除睡眠模式、配置电源管理和采样分频、配置屏蔽过滤、其他功能初始化)、读芯片数据函数、解除睡眠模式、通信初始化等)、

2024-12-27 11:04:14 1554

原创 FlyMcu串口下载&STLink Utility

FlyMcu串口下载,同STC-ISP(51单片机下载)。

2024-11-04 14:43:52 1190

原创 STM32ZET6-USART使用

RB8和TB8是奇偶校验位,可选择是否使用。一般需要校验位,则选择9bit数据,不需要校验位则选择8bit。波特率:每秒传输码元的个数,可能每个码元包含信息量不止1bit,单位为码元/s,或者为bund。比特率:每秒传输bit的速率。单位bit/s,或者bps。在二进制调制的情况下一个码元就是一个bit。

2024-11-02 15:52:18 903

原创 STM32F103-ADC采集(+DMA)

两个内部信号源是内部温度采集和内部电压,内部参考电压是内部1.2V的基准电压,不随外部供电的改变而改变,如果外部供电电压不准,那么可以进行内部基准电压采集校准。模拟看门狗可以进行自动检测阈值。

2024-10-25 16:31:05 3272

原创 CAN2.0A,CAN2.0B

如果您要组网的CAN设备同时支持CAN 2.0A和CAN 2.0B,那么它们可以在同一总线上进行通信。在这种情况下,CAN 2.0A设备和CAN 2.0B设备可以通过共享相同的物理连接进行数据交换。CAN 2.0A和CAN 2.0B是CAN协议的两个不同版本,它们有一些细微的差异。CAN 2.0A和CAN 2.0B的物理层是一致的,它们都使用相同的电气特性和传输速率。因此,从物理层上来看,CAN 2.0A和CAN 2.0B是可以组网的,可以共享相同的总线进行通信。

2024-10-17 10:07:57 295

原创 STM32F103C8T6 - 定时器

PSC、CNT和自动重装载寄存器构成了最基本的计时电路(时基单元),基本定时器只能选择内部时钟,所以时基单元直接连接到了内部时钟输入CK_INT。RCC的TIMxCLK一般都是系统的主频72MHz。时基单元可以对系统的72MHz输入时钟进行分频,0为不分频,/1。值为0-65525,即1-65536。CNT(16bit)对输入的时钟进行计数,没来一个上升沿,计数+1,CNT可以从0加到65535,正常会一直加到目标值,如果到了目标值,会产生中断,中断结束后会从继续0开始。

2024-10-08 10:59:55 3239

原创 宏定义三目运算符使用问题(没找到原因,求解答)

宏定义三目运算符使用问题(没找到原因,求解答)

2024-09-27 11:23:56 368

原创 STM32F103C8T6-中断

灰色为内核中断,中断地址是每次中断后跳转的地址,是固定的。相同的PIN不能同时触发中断,比如GPIOA1,GPIOB1.,可触发中断响应,也可以触发事件响应。

2024-09-14 18:05:31 1274

原创 GPIO输出-STM32F103C8T6

基本的传感器分压电路,N1是可变电阻,C2接地,应该是滤波电容,N1和R1对VCC进行分压,当N1电阻为0,下拉作用最大,此时输出为低电平0V。当N1无穷大,等效断路,VCC上拉输出。N1对VCC进行分压,实际为VCC/(N1/(R1+N1)),AO点的电平为减去R1分压后的电平,即N1电平。二值化芯片,对输出电平进行二值化,使用LM393(内部为电压比较器(运算放大器电路)),IN+输入模拟量,运算放大器进行二值化,IN-的滑动变阻器用于对LM393输入二值化阈值。对IN-和IN+比较就能生成输出。

2024-09-14 14:07:25 461

原创 I2C-OLED驱动-STM32F103C8T6

一、OLED模块和原理

2024-09-14 14:06:33 310

原创 keil断点调试

命令窗口开关-反汇编窗口开关-符号窗口,可以实时查看所有的变量值(点击后在watch可以显示)- 寄存器窗口-栈窗口-串口窗口-波形图窗口等。System Viewer是系统资源查看,可以看到所有的芯片外设寄存器,可以看到寄存器的值。设置断点点击全速运行会运行到断点处。

2024-09-14 14:06:22 577

原创 STM32标准库常用函数-不断更新

【代码】STM32标准库常用函数。

2024-09-14 11:58:46 282

原创 STM32F03C8T6-GPIO输出

带FT表示可以容忍5V电压内核通过APB2对寄存器进行读写来驱动引脚进行输入输出。

2024-09-13 15:11:55 3830

原创 keil生成bin文件(简单)

3、点击bulid即可在工程目录生成HexBin文件夹,下面有bin文件。1、在工程文件夹创建HexBin.bat文件,将以下内容复制进去。::将bin文件生成到HexBin文件夹 >nul屏蔽成功命令。::将hex文件复制到HexBin文件夹。::设置fromelf.exe位置。::创建输出文件夹 HexBin。::设置.axf文件所在目录路径。::设置.axf文件的位置。2、keil魔术棒进行配置。::设置输出后的文件名。::将hex文件重命名。

2024-09-13 10:14:02 582

原创 keil5安装和配置

3、赋值keil下的C51下的tools.ini内的文本,在keil下的MDK下的tools.ini内的最后添加这些文本。2、将keil下的C51文件夹下的UV4文件夹内的内容全选,复制到MDK文件夹下的UV4中,跳过相同的文件。1赋值到LIC,2选中C51,3点击ADDLIC,进行破解。4、刚复制进来的文本的path更新成MDK的路径。1、将C51中的C51文件夹放到MDK文件夹中。3、使用安装包安装C51到C51文件夹。4、安装MDK到MDK文件夹。可在官网下载或者其他地方获取。同理添加ARM破解码。

2024-09-11 18:04:41 590

原创 STM32新建工程(STM32F103ZET6为例)

鼠标点击main文件中,双击即可生成代码以上建立的寄存器开发环境(我们对寄存器开发环境进行了解即可,下面一小部分是寄存器开发点灯示例,不感兴趣可以跳过)(a)首先是RCC的寄存器,来使能GPIO的时钟,GPIO都是APB2的外设APB2 外设时钟使能寄存器(RCC_APB2ENR)写1是打开GPIOC时钟,即RCC->APB2ENR = 0x00000010;(b)需要配置PC13口的模式(端口配置高寄存器(GPIOx_CRH) (x=A..E))CNF13和MODE13就是配置13号口的。

2024-07-05 14:08:17 2580

原创 ST-Link驱动的下载、安装、配置

STM32常用的下载方式是串口TTL、SWD、JTAG。

2024-04-24 10:06:00 23590 4

Android学习制作app(ESP8266-01S连接-简单制作)-视频

安卓学习app使用效果视频

2025-02-01

ECM简单测试,4-20mA电流传感器抗干扰测试,信号地隔离,电感电容添加测试、外部干扰内部干扰分析

根据使用的4-20mA位移传感器(精度为0.15°,指角度波动最小0.15°步长),针对大电机,以电机工作中的电流大小为干扰判断依据,进行4-20mA传感器抗干扰情况测试,对受干扰后该传感器是否能正常工作并返回正确数据进行摸底。

2024-06-04

空空如也

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

TA关注的人

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