- 博客(102)
- 资源 (1)
- 收藏
- 关注
原创 C# 跨线程访问UI组件,serialPort1串口接收数据
在Windows应用程序(例如WinForms或WPF)中,UI组件(如按钮、文本框等)都在主线程(也称为UI线程)上运行。当你在一个非UI线程(例如,一个后台线程或者网络请求线程)中试图修改这些UI组件时,由于跨线程访问控制,程序会抛出异常。这是因为.NET Framework为了保证UI的一致性和安全性,不允许非UI线程直接更新UI。在这种情况下,你需要使用Control.Invoke或Control.BeginInvoke方法来安排在UI线程上执行更新操作。
2024-05-20 14:44:39 405
原创 C#正则表达式,提取信息使用
在C#中,正则表达式(Regular Expression,通常简写为regex或regexp)是一种功能强大的文本处理工具,它使用特定的字符序列来定义搜索模式,从而实现对文本的高效搜索、匹配和替换操作。正则表达式在C#中的应用非常广泛,包括但不限于以下场景:验证文本格式:正则表达式可以用来检查用户输入的文本是否符合特定的格式要求。例如,你可以使用正则表达式来验证电子邮件地址、电话号码、身份证号码等是否有效。搜索和替换:在文本中搜索特定的模式,并将其替换为其他文本。
2024-05-13 14:03:59 722
原创 SMT32 TIM1 PWM(发送固定脉冲数)步进电机梯形图加速
(因为电机的启停惯性和步进电机越慢扭力越大的原因);所以步进电机使用梯形加速,可以实现更小的丢步思路:在PWM中断中做计数,前20个脉冲和后20个脉冲频率设置一样低,中间的脉冲频率设置快一点
2024-03-09 17:41:27 251
原创 stm32普通定时器脉冲计数(发送固定脉冲个数),控制步进电机驱动器
拨码开关设置驱动器,细分方法思路:用通用定时器TIM2,1ms产生一次中断;在中断里做IO反转;发送10个脉冲信号
2024-03-05 18:41:41 585
原创 硬件开发避坑日志
红外接收关 5 V 和 3.3V 工作电压的接收波形不一样。3.3V工作不正常,接收不正常。5V工作是标准的NEC协议。FT232 串口工具会,多发和漏发0x00. 对比之下STC工具更稳定。
2024-01-05 13:05:30 435
原创 nrf52832 低功耗蓝牙 广播
例如:以上就是今天要讲的内容,本文仅仅简单介绍了广播的实现使用,而Nordic提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-10-22 15:53:03 437
原创 第一章 STM32 CubeMX (CAN轮询发送和中断接受)基础篇
CAN收发器是外接器件,(例如:TJA1050)作用:把差分信号转换为MCU能能识别的TTL信号。例如:以上就是今天要讲的内容,本文仅仅简单介绍了stm32 CAN的使用,而stm32 CAN提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-10-16 00:07:02 1762
原创 PADS规则设置
Ctrl+R旋转90°;一.设置类规则(DRC检测规则)三,设置过孔和半导孔(盲埋孔)2.增加电路板布线层(6层板)拆开组合(还独立元件操作)3.设置半导孔(盲埋孔)在DDR中设置非常实用。
2023-10-09 09:47:39 601
原创 STM32 CubeMX PWM三种模式(互补,死区互补,普通)(HAL库)
以上就是今天要讲的内容,本文仅仅简单介绍了PWM的使用,而PWM提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-10-09 00:57:24 4220
原创 STM32 CubeMX ADC采集 单通道,多通道,内部温度(轮询,DMA,中断)(HAL库)
12位ADC是一种逐次逼近型模拟数字转换器。它有多达18个通道,可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。ADC的结果可以左对齐或右对齐方式存储在16位数据寄存器中。模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。ADC的输入时钟不得超过14MHz,它是由PCLK2经分频产生。例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-10-07 23:59:05 5800
原创 PCB layout 小功率板子减小干扰方法
PCB layout 小功率板子减小干扰方法例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-09-26 10:03:58 619 1
原创 nrf52832蓝牙GAP 通用访问规范
蓝牙GAP是蓝牙技术中的一个重要概念,代表了蓝牙设备之间的通信间隙。GAP是蓝牙核心规范中定义的一组规则和协议,它定义了蓝牙设备在连接过程中的角色、行为和通信方式。GAP规范中定义了两种基本角色:中心设备(Central)和外围设备(Peripheral)。中心设备负责发起连接请求和扫描附近的外围设备,外围设备则等待连接请求并提供服务。GAP还定义了不同的连接模式,例如广播模式、可连接模式和非连接模式。在广播模式下,设备会定期广播自己的存在,并提供一些基本信息。
2023-09-14 00:38:17 643 1
原创 nrf52832 GPIO输入输出设置
171718192020设置位输出模式: nrf_gpio_cfg_output(LED_0);输出高电平:nrf_gpio_pin_set(LED_0);输出低电平: nrf_gpio_pin_clear(LED_0);电平反转: nrf_gpio_pin_toggle(LED_0);
2023-09-10 22:08:35 491
原创 第三章 USB应用笔记之USB鼠标(以STM32 hal库为例)
STM32F1系列是意法半导体(STMicroelectronics)推出的一款微控制器系列,具有广泛的应用领域。USB 2.0 Full-Speed:STM32F1系列的USB接口符合USB 2.0的Full-Speed标准,支持12Mbps的数据传输速率。USB设备和主机模式:STM32F1系列可配置为USB设备或USB主机模式。在USB设备模式下,它可以作为USB设备与主机进行通信;在USB主机模式下,它可以控制和管理外部USB设备。
2023-09-05 00:23:13 2013 1
原创 第二章 USB应用笔记之USB通讯基础
USB主机:提供USB接口和接口管理功能的硬件、软件、固件的复合体。PC机或OTG设备,一个USB系统只能有一个主机.USB主机提的硬件主要包括USB主控制器和USB根集线器。USB设备:1.集线器HUB:扩展主机接口,设备可以通过其接入主机 2.功能设备,如U盘,USB摄像头,HID键盘鼠标等。物理连接:即USB电缆,USB使用差分信号传输数据,USB全速/高速模式电缆必须外层屏蔽铜质传输线,且差分数据线双绞。一条USB的传输线分别由地线、电源线、D+、D-四条线构成,D+、D-是差分输入线,使用的是3.
2023-09-03 22:08:29 604
原创 第一章 USB应用笔记之USB初步了解
通用性强:USB是一种通用的接口标准,几乎所有的计算机、移动设备以及外部设备都支持USB接口。这意味着您可以使用USB连接各种设备,如打印机、键盘、鼠标、摄像头等,而不需要为每个设备购买特定的接口线。热插拔功能:USB支持热插拔,即在不关闭电源的情况下插拔USB设备。这意味着您可以随时连接和断开USB设备,方便快捷,无需重启计算机。数据传输速度快:USB接口支持高速数据传输,可以实现快速的文件传输和数据备份。USB。
2023-09-03 18:21:03 681
原创 stm32CubeMX HAL W5500芯片介绍 第一章
W5500是一款由韩国WIZnet公司开发的嵌入式以太网控制器芯片。它采用硬件TCP/IP协议栈,可用于各种物联网和网络通信应用。W5500支持10/100以太网速率,并提供SPI接口与主控器连接。它具有低功耗、高性能和易于集成等特点,广泛应用于物联网设备、工业自动化、家庭自动化、网络摄像头等领域。
2023-08-31 23:54:12 3188
原创 STM32 CubeMX (H750)RGB屏幕 LTDC
刷新率 = 24MHz /((Width + HSYNC_W + HBP + HFP):LCD_CLK=24MHz 时。
2023-08-27 21:12:11 2309
原创 BLE ch582 广播数据格式
BLE 蓝牙数据广播格式={6个字节(蓝牙设备MAC 地址)+AD structure+…+AD structure N } =37字节。AD structure= 长度+类型+内容。修改广布名字take。
2023-08-23 21:22:39 284
原创 STM32 CubeMX (第二步Freertos任务通信:队列、信号量、互斥量,事件组,任务通知)
学习使用Freertos第二步:将一条消息发送到队列中。可以选择阻塞或非阻塞发送。:从队列中接收一条消息。可以选择阻塞或非阻塞接收。查看队列中的下一条消息,但不将其移除。:清空队列中的所有消息。2.和:用于实现二值信号量,控制任务之间的互斥访问。3.:创建一个互斥信号量,用于实现任务之间的互斥访问。4.和:用于任务间的通知机制,一个任务可以通知另一个任务进行某种操作。5.:用于创建、设置和等待事件标志组。
2023-08-17 00:26:18 2609 2
原创 STM32 CubeMX (第一步Freertos任务管理:创建、删除、挂起、恢复)
学习使用Freertos第一步xTaskCreate():用于创建一个任务,需要指定任务函数、任务名称、任务栈大小和优先级等参数。vTaskDelete():用于删除一个任务,可以由任务自身或其他任务调用。vTaskDelay():用于使当前任务进入阻塞状态,延迟一段时间后再继续执行。vTaskDelayUntil():类似于vTaskDelay(),但是可以实现周期性的延迟,使任务按照指定的时间间隔执行。
2023-08-15 21:23:26 1506 1
原创 STM32 CubeMX (uart_IAP串口)简单示例
与之相对应的叫做isp,in system programming,在系统编程,两者的不同是isp需要依靠烧写器在单片机复位离线的情况下编程,需要人工的干预,而iap则是用户自己的程序在运行过程中对User Flash 的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级。一定要划分清楚IAP程序和APP程序的flash地址,不要重合了。实现iap有两个很重要的前提,首先,单片机程序能对。的方式,无论是网络还是别的方式,只要能传输数据就行。
2023-08-12 23:51:20 1380
原创 STM32 CubeMX USB_MSC(存储设备U盘)
STM32 CubeMX 配置USB将STM32设置可以作为存储设备或者IAP升级功能。
2023-08-06 18:23:34 2375
原创 STM32 CubeMX USB_(HID 鼠标和键盘)
STM32 CubeMX 自动生成的USB_HID是鼠标类型的:键盘类型要做一点小修改;
2023-08-06 11:10:28 2696 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人