自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 资源 (7)
  • 收藏
  • 关注

原创 开关电源-电感

电子元器件-电感1.电感是电路中重要的元件,种类多、用途广,主要是插件的,但也有贴片的。2.常见的一些形状分为:环形电感(绿环、黑环、黄白环)、立式电感、工字电感、棒形电感、方形电感等。3.电感主要特性参数:电感感量、电感材质3.1电感感量常用的单位有毫字(mH)、微字(uH)。1mH=1000uH。3.2电感的材质主要有锰锌铁氧体、铁硅铝、磁粉芯,每种电感材质的磁导率是不一样...

2020-01-06 00:13:50 1947

原创 开关电源-电阻

一 电阻1.开关电源中最常用的电阻有贴片电阻、插件色环电阻、压敏电阻、热敏电阻等。2.贴片电阻2.1 贴片电阻:主要按封装和功率来分,常用的有0402 1/16W; 0603 1/10W; 0805 1/8W; 1206 1/4W; 1210 1/3W等2.2 贴片电阻阻值表示3.插件电阻3.1插件色环电阻:主要有金属氧化摸电阻和碳膜电阻,常用的1/8W1/...

2020-01-06 00:09:57 2314

原创 UCOS-III软件定时器

第24章软件定时器OSInit()中调用OS_TmrIni()来配置定时器频率与创建软件定时器任务OS_TmrTask()。软件定时器创建函数OSTmrCreate()将定时器添加到双向调试链表。启动软件定时器函数 OSTmrStart()定时器任务OS_TmrTask()1.OSTaskSemPend()等待信号量(在 SysTick 中断服务函数中OSTmrUpdate...

2020-01-04 23:29:01 167

原创 自动添加时间与消息

https://www.cnblogs.com/xiangtingshen/p/10801310.html打开类视图->选中类->右击选择属性,上面有事件与消息标志。

2019-12-20 16:09:30 105

原创 stm32的定时器上升沿下降沿双触发

void TIM5_Configuration(unsigned short frequency){ //8000NVIC_InitTypeDef NVIC_InitStructure;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_ICInitTypeDef TIM_ICInitStructure;RCC_APB1P...

2019-12-18 13:24:16 7802

原创 STM32 编码器模式

/***************************************************定时器2;位数:32位;输入时钟频率:84M***************************************************/void Encoder_TIM2_Init(void){ TIM_TimeBaseInitTypeDef TIM_TimeBase...

2019-12-18 13:22:15 492

原创 网站

https://www.52pojie.cn 吾爱破解https://mp.csdn.net/postlist CSDN仅自己可见文件http://bbs.ntpcb.com/read.php?tid-20148.html PCB教程http://github.com/signal11/hidapi USB之hidapi

2019-12-12 16:37:51 107

原创 Keil lib制作

当程序不需要改的部分可以制作成库,方便管理。也可以使程序有一定保护。制作方法也很简单,将ouput->Great Library勾选,Name of Executable里填写库的名字,编译即可生成.lib。 例:将a.c与b.c的代码封成库ab.c(相应的.h文件也要包含),然后将工程里的a.c与b.c删除,将库ab.c添加到工程里即可。编译下载与原来工程一摸一样。...

2019-12-12 16:35:46 141

转载 c++文件流保存txt日志

为了方便保存txt日志,可以参考以下代码写法。 #include <fstream> std::ofstream outfile("e:/temp/outputtext.txt"); if (outfile.is_open()) { for (int i = 0; i < 256; i++) { float v...

2019-12-04 15:39:04 842

原创 打开txt

void CUSBExampleDlg::OnBnClickedButtonVimLoad(){ // TODO: Add your control notification handler code here // 设置过滤器 TCHAR szFilter[] = _T("升级文件(*.txt)|*.txt|所有文件(*.*)|*.*||"); ...

2019-12-04 15:21:57 208

原创 stm32 SSI读编码器

uint32_t read_AS5311chip(void){ uint32_t raw_value;// = 0; uint16_t inputstream;// = 0; uint16_t c; inputstream = 0; raw_value = 0; AS5311_CLK_H;//digitalWrite(_clock, HIGH); AS5311_C...

2019-12-04 15:21:45 4857 3

原创 MFC调用DLL

一、新建MFC文件->新建->项目->MFC应用程序->对话框二、添加DLL1.右击解决方案->添加->新建项目->win32项目->输入名称->选择DLL2.属性->配置属性->C/C++->预处理器->预处理器定义中定义ADDWIN32DLL_EXPORTS3.#pragma comment(li...

2019-12-04 15:21:34 1010

原创 UCOS-III 消息队列

第20章消息队列消息池OSCfg_MsgPool[OS_CFG_MSG_POOL_SIZE] ,OS_CFG_MSG_POOL_SIZE为消息池大小。OS_MsgPoolInit() 函数就是用来初始化消息池构成单向链表。消息队列发送函数 OSQPost()...1.满足条件调用OS_QPost()进行发送......1.1获取等待列表,看是否有任务在等待消息............

2019-11-17 23:19:54 238

原创 保存excel

//#include <iostream>#include <fstream>//#include <sstream>//#include "io.h"using namespace std;void CUSBExampleDlg::OnBnClickedBtnsave(){ // TODO: 在此添加控件通知处理程序代码 ofs...

2019-11-11 17:28:24 128

原创 控件关联变量-DDX_Text

UINTm_speed;DDX_Text(pDX, IDC_EDIT_SPEED, m_speed); //将IDC_EDIT_SPEED绑定变量m_speedDDV_MinMaxUInt(pDX, m_speed, 1, 255); //设置变量大小UpdateData(TRUE); //当m_speed不在设置范围会弹出报警DDX_Control(pDX, IDC_PR...

2019-11-11 15:27:04 1152

原创 UCOS-III 事件

事件设置OSFlagPost1.满足条件调用OS_FlagPost()...1.按要求将事件置一或是清零...1.2获取等待事件任务......1.2.1如果当前没有任务在等待事件,置位后直接退出即可......1.2.2如果当前有任务在等待事件,遍历等待列表的所有任务.........1.2.2.1 要求任务等待的标志位都置 1且为1,OS_FlagTaskRdy()函数...

2019-10-31 23:13:15 478

原创 UCOS-III 任务信号量

任务信号量必须指定接收信号量的任务,才能正确发送信号量,任务信号量可以满足设计需求,那么尽量不要使用普通信号量,这样子设计的系统会更加高效。发布任务信号量OSTaskSemPost()...1.满足条件,调用 OS_TaskSemPost ()函数将信号量发布到指定任务AppTaskPendTCB中......1.1.目标任务块为0,则将信号量发布给当前任务,根据目标状态区分...

2019-10-29 23:19:08 275

转载 STM32-USB学习笔记(一) USB基础

USB基础知识扫盲前言本文将从USB的插入检测、身份识别、数据传输三个方面对USB通讯整个过程扫盲,其中有些知识点的详细信息会放在文章最下面的附录中供查看,从而保证文章的整体简洁。在进入主题之前,首先了解一下USB的一些基础知识USB的分类 按接口类型分 控制器/主机(controller/host) 设备(peripheral) OTG(on-the-go),通过i...

2019-10-29 09:25:47 1119

原创 UCOS-III 任务消息队列

任务消息队列只有所属任务才可以获取(接收)这个任务消息队列的消息,其他任务只能给这个任务消息队列发送消息,却不能获取。发布任务消息到任务OSTaskQPost()满足发布条件直接调用OS_TaskQPost()发布,例如发送到任务块AppTaskPendTCB。...1.获取目标任务,为0则是当前任务...2.目标任务状态......2.1.非等待状态,调用OS_MsgQP...

2019-10-28 23:02:32 339

原创 UCOS-III 互斥量

互斥量释放OSMutexPost()互斥量的释放只能在任务中,不允许在中断中释放互斥量。观测TestMutex.OwnerNestingCtr...1.调用OS_OSMutexPost()进行释放,判断--OwnerNestingCtr的值......1.1>0,表示互斥量仍被嵌套还未释放完,返回......1.2==0,被释放,获取互斥量等待列表.........1...

2019-10-27 19:15:35 319

原创 21 UCOS-III 信号量

信号量释放OSSemPost()...1.满足信号量释放条件调用OS_SemPost()进行释放......1.1从信号量等待列表中判断是否有任务等待信号量.........1.1.1无,信号量是否溢出(根据计数的的数据类型判断)。............1.1.1.1溢出,返回报错............1.1.1.2可用信号量计数++.........1.1.2有,根据...

2019-10-25 13:19:31 299

原创 UCOS-III 消息队列

消息队列发送消息:如果系统有任务阻塞在消息队列中,那么在发送了消息队列的时候,会将任务解除阻塞1.OSQPOST()判断是否是否满足发送消息队列条件...1.1满足则OS_QPost()发送消息,等待列表中判断是否有任务等待......1.1.1无,则用OS_MsgQPut()将消息根据FIFO/LIFO放入队列中......1.1.2有,调用OS_Post()........

2019-10-24 15:47:31 202

原创 UC/OS-III 时基列表的运作

1.任务初始化:初始化堆栈及堆栈大小优先级添加任务块到就绪列表(就序列表的下标=优先级)时间片参数(任务运行时间片,时间片计数,一个优先级只有一个任务则都设为0)2.sysTick中断中进行任务调度更新时基列表(时基到时从时基列表中移除任务,并插入到就绪列表)时间片调度,时间片消耗完,任务列表中同一优先级切换(同一优先级有多个任务时才需要时间片)任务调度,切换到最高...

2019-10-24 15:46:51 255

原创 PendSV_Handler

参考野火的程序:; OSTCBCurPtr = OSTCBHighRdyPtr;LDR R0, = OSTCBCurPtr ; 加载 OSTCBCurPtr 指针的地址到R0,这里LDR属于伪指令分析:运行后R0=0x20000018=&OSTCBCurPtrLDR R1, = OSTCBHighRdyPtr ...

2019-10-18 17:29:40 3376

原创 CCS

安装1.安装路径与安装软件所在的路径(your local repository contains non-ascii characters.some components of CCS will not install correctly with such a path, please change the path before installing)不能有中文。2.安装在win10...

2019-08-20 10:53:25 962

原创 stm32程序移植

有时候移植程序发现下载不了,就算下载成功也运行不了。这时候要检查时钟配置,外部振晶是否配置对。修改注意修改以下宏使之匹配:HSE_VALUE与 PLL_M...

2019-08-16 15:01:57 837

原创 mcu定时问题

mcu延时一般在定时器中将一个变量TmCnt++,然后在函数中先将TmCnt=0;再判断if(TmCnt>1000){……},满足条件进行下部操作。 尽量不要用while(TmCnt-1000)来延时,因为这样就不能进行下面的逻辑操作。但是这样有个问题就是在函数中赋值可能会被中断打断。如果TmCnt=0这条语句是由多条汇编组成,刚好运行了一部分汇编被中断打断,会造成赋值失败...

2019-08-12 16:56:55 406

转载 MFC用PostMessage传递消息

1.自定义消息ID。#define WM_MY_MESSAGE (WM_USER+100) WM_USER为windows系统为非系统消息保留的ID,这里至少要用100,因为其它控件的消息会占用一部分。2. 定义消息处理函数。消息处理函数为消息目标类的成员函数。首先应该在.h 文件中声明。这里以主窗口类为例,主窗口类名 CMainDialog,则首先在CMainDial...

2019-08-02 10:27:59 1382

原创 Bus hound 监控USB

Bus hound是一款监控USB软件,Devices里勾选要监控的USB,capture里点击run开始监控数据,stop停止。但是里面的数据很多,如果只看输入输出的数据可以在setting 里面设置Driver I/O to Capture里我只选择unknownPhases to Capture里我只选择IN-Data in transfer与OUT-Data out transfe...

2019-07-30 16:46:55 607

原创 HardFault_Handler分析

今天用合泰的M0进入了HardFault_Handler查了下资料,总结下。以下是我从高手那抄的: 在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。这说明STM32出现了硬件错误。 STM32出现硬件错误可能有以下原因: (1)数组越界操作...

2019-07-11 15:50:48 801

原创 stm32 hid iap

IAP:步骤:读取hex文件(与bin的区别),写入到iap中的ram区暂存;写flash;跳转。与正点原子的串口升级一样,但要在跳转前加关闭中断。1.ROM/RAM,正常配置;2.跳转前关中断再关闭定时器中断(HID中断不关,试过关了有问题)3.升级时出现通讯断了或是断电,这样会出现以下几种情况 3.1 如果ram不够,上位机下传一部分代码烧写一部分,很有可能时烧了hex的一部...

2019-07-08 16:43:42 505

原创 C++ 的一些数据转换

1. CString 转int,CString = _T("0x64")转换后结果为100,CString = _T("64")转换后结果为64. CString strOut; int temp; GetDlgItem(IDC_EDITVID)->GetWindowTextW(strOut); ::StrToIntEx(strOut.GetString(...

2019-07-08 16:40:11 145

原创 JLINK SW下载STM32检测不到芯片

今天先验证个问题,就在网上下载了个程序稍微修改了下就下进去了,结果就检测不到SW了。可能是程序把下载口没有设置为复用,占用了这几个IO口。于是就将BOOT0拉高,不让他从flash启动,再下载正确的程序,又OK了。 还有就是SW的时钟选择不对,有次遇到默认选择20M,识别不到,改成10M就是别到了...

2019-06-18 11:28:55 10102 2

原创 Visual Studio 编译一些报错

添加DLL编译不过1.被调用的函数是否添加导入导出#define xxx_DLL_API __declspec(dllexport)2.是否包含setupapi.lib3.配置属性->常规->配置类型->DLL。有时候从debug模式切换到release模式配置类型从dll模式变成了exe4.warning C4273: dll 链接不一致则在属性->配置属...

2019-06-10 17:39:22 379

原创 将EDIT的内容输出两个数一组的16进制数

CString strOut; GetDlgItem(IDC_EDIT2)->GetWindowTextW(strOut); strOut.Replace(_T(" "), _T("")); int halflen = strOut.GetLength() / 2; int*pNums = new int[halflen]; for(int ...

2019-05-16 18:27:05 168

转载 模态非模态对话框

https://www.cnblogs.com/luo-peng/p/6013439.html

2019-05-16 15:17:08 79

原创 多个按键或edit控件焦点事件用同一个函数处理

按键获取,失去焦点

2019-05-16 11:15:00 461

转载 C++的三种实例化对象方式

一、隐式创建class CEmployee{private:int age;int id;public:CEmployee(){cout << "这是构造函数" << endl;}CEmployee(int id){this->id = id;}~CEmployee(){cout << "这是析构函数" <&lt...

2019-05-04 19:15:43 23772 2

QT5 实现串口小助手通讯

QT5 实现串口小助手通讯

2023-06-08

QCustomPlot 绘制曲线

QCustomPlot 绘制曲线

2023-06-08

QT 用usb hid通讯

用VS2010生成usbhid库加载到QT中测试,注意需要下位机配套测试。

2023-05-29

vs2010里用 C++MFC利用mscomm控件写的Modbus 双串口

vs2010里用 C++MFC利用mscomm控件写的Modbus 双串口,首先要安装mscomm,可以参考http://download.csdn.net/download/d89538239/9981309

2017-09-19

mscomm控件64位或32位系统下安装

mscomm控件64位或32位系统下安装有点小区别,里面附有mscomm控件与安装说明方法。本人在win732位与64位系统安装过成功,win7以上未测试。

2017-09-16

PDF解密小工具,很好用

PDF解密,去限制,可以操作上百兆文件,亲测

2017-05-18

C# 多窗口切换加modbusRTU串口通讯

C# 多窗口切换,可以配置串口实现modbusRTU通讯,还可以保存串口配置。 可供参考。C# 多窗口切换,可以配置串口实现modbusRTU通讯,还可以保存串口配置。 可供参考。

2016-12-13

C#实线多窗口相互切换

实现C#多窗口相互切换

2016-12-13

C# form多窗口来回切换

实现form多窗口来回切换

2016-12-13

一个占用内存极少的菜单系统的实现

仿照按键手机,方便菜单扩展,对下位机的菜单有很好的参考,一旦掌握,多级菜单不用愁!

2014-11-23

空空如也

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

TA关注的人

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