自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (3)
  • 收藏
  • 关注

原创 工作多年后,嵌入式工程师的区别在哪儿?

面试了很多人之后,我开始思考,一个工作1年,工作3年,工作5年,工作10年的嵌入式工程师到底有什么不同,工作年限到底给他们带来了什么。有时候招聘方并不清楚他们所要求的10年工作经验后面所代表的内涵。在面试了很多求职者之后,发现工作很多年的工程师并没有形成自己的结构化思维和技术体系。不同工作年限的工程师究竟是哪里不同?基础知识一个嵌入式工程师,很多都是从51单片机或者STM32单片机开始,对于单片机的开发环境,开发流程,基础外设都了解,做过一些实际的案例,比如点流水灯之类的,相...

2021-11-09 19:17:34 249

原创 浅谈动态调节PID算法

啥是PID?PID,就是“比例(proportional)、积分(integral)、微分(derivative)”,是一种很常见的控制算法。PID已经有107年的历史了它并不是什么很神圣的东西,大家一定都见过PID的实际应用。比如四轴飞行器,再比如平衡小车......还有汽车的定速巡航、3D打印机上的温度控制器....就是类似于这种:需要将某一个物理量“保持稳定”的场合(比如维持平衡,稳定温度、转速等),PID都会派上大用场。PID应用相关文章,点击阅读:应用PID控...

2021-10-13 09:53:25 3202

转载 nrf51822蓝牙学习笔记四

https://blog.csdn.net/weixin_44529321/article/details/109410266?spm=1001.2014.3001.5501

2021-05-19 18:18:22 167

转载 nrf51822蓝牙学习笔记三

https://blog.csdn.net/weixin_44529321/article/details/109410258?spm=1001.2014.3001.5501

2021-05-19 18:17:54 92

转载 nrf51822蓝牙学习笔记二

https://blog.csdn.net/weixin_44529321/article/details/109410252?spm=1001.2014.3001.5501

2021-05-19 18:17:14 75

转载 nrf51822蓝牙学习笔记一

https://blog.csdn.net/weixin_44529321/article/details/109410231

2021-05-19 18:16:17 87

原创 nrf51822蓝牙学习笔记一

目录开发环境搭建安装MDK安装nrfSDK安装nrfgo建立项目ROM,RAM设置下载注意硬件开发工具SWD和JTAG外设GPIO的使用按键的使用、中断RTC的使用、比较中断外设定时器目前手里面有几个项目用的是nrf51822这款蓝牙芯片。由于我从未接触过蓝牙协议,所以在很多地方磕磕绊绊的,所以最近准备系统学习一下该芯片。并做一下笔记放在我的博客里面。系统学习资料来源于B站青峰电子。视频名称为 蓝牙nrf51822视频教程资料 编程开发 协议栈开发 青峰电子例程。由于本人已经进

2021-05-19 18:14:52 211

原创 keil5编译后生成 Code RO-data RW-data ZI-data是什么

在keil5下全编译了这么多次代码,每次编译完了后都有这么一行提示,闲来没事还是搜索学习了一下。Program Size: Code=49560 RO-data=7032 RW-data=308 ZI-data=1100180 (数据当然是不一样的哈)通过查阅keil5的帮助文档(ARM Development Tools),看到样的的一个数据,如图Code (inc. data) RO Data RW Data ZI Data Debug3712 ...

2021-03-25 09:13:16 922

原创 SPL06-001 气压计计算与读取

手册地址https://download.csdn.net/download/zhangxuechao_/10548473寄存器计算方法举例//气压测量速率(sample/sec),Background 模式使用#define PM_RATE_1 (0<<4) //1 measurements pr. sec.#define PM_RATE_2 (1<<4) //2 measurements pr. s...

2020-11-09 03:00:22 4797 13

原创 Peripherals无外设寄存器

用keil mdk5.新建工程进行仿真时,进入Debug环境发现System Viewer菜单显示空白,Peripherals菜单没有外设寄存器。如图1和图2所示。打开Oprons for Target 查看System Viewer File选项没有勾选Use Custom File,系统默认的STM32F103xx.svd。如图3所示。查看Debug选项中的Dialog DLL一栏写着DCM.DLL。Parameter一栏写着-pCM3。如图4所示。图1 System Viewer菜单显示空.

2020-08-22 20:52:09 708

原创 禁止MFC改变窗口大小

最简单的方法不需要写任何代码禁止MFC改变窗口大小,只需要修改对话框外观的Border属性为Dialog Frame。

2020-07-11 12:45:46 4014

原创 如何利用命令行编译VS工程

@echo offset debugOrRelease=Releaseset baseOutPath=%debugOrRelease%rem 当前脚本所在路径set build_root = %~dp0rem vcvarsall.bat所在的路径:set vcvars="%VS140COMNTOOLS%../../VC/vcvarsall.bat"set devenv="%V...

2019-07-18 14:10:10 1282

原创 使用SVN号发布软件版本

在软件开发过程中,每次对一个软件产品的release,都要处理该软件版本号。有的版本号是人为定的,有些是自动生成的,本文介绍在使用SVN版本管理软件的情况下,利用SVN的一个命令来自动生成对应svn修改版本的版本号。所以前提是你的开发机需要确认安装了SVN的客户端,并且你本机的代码是SVN上down下来的,也就是代码需要是一个working copy。官方给出解释:https://to...

2019-07-18 11:53:55 1003

原创 M3 M4芯片开启FPU 浮点型运算功能

; Reset handlerReset_Handler PROC EXPORT Reset_Handler [WEAK] IMPORT SystemInit IMPORT __main;==================================;开启FPU功能 浮点数运...

2019-07-18 11:03:57 591

原创 Cortex-M3 cm3.h 关于开关总中断函数解释

 0.前言本文想解决的问题有:如何开启、关闭中断 如何开启、关闭异常 LPC177x/8x支持的中断优先级个数 复位后,异常/中断默认的优先级 如何设置异常/中断的优先级 什么是优先级组,如何设置优先级组,复位后的优先级组 1. Cortex-M3的异常/中断屏蔽寄存器组注:只有在特权级下,才允许访问这3个寄存器。    名 字 ...

2019-02-25 15:34:40 2765

原创 J-Link 向RAM中写唯一序列号

    硬件准备:J-Link 一个,STM32F103C8T6 的开发板子一块    软件准备: Setup_JLink_V600d 版本的J-Flash 前期的创建new project, 对Options的Project Setting 的Genneral/ Target Interface/ MCU/Flash的选项卡,不作太多详细的说明,大家做项目应该会设置。在最后一个Pro...

2018-12-11 09:39:42 971

原创 MFC 之 重绘按键

上次我们学习了如何美化对话框的界面,这次我们为上次的对话框添加两个按钮,一个是关闭按钮,另一个是最小化按钮,好,现在我们先看一下效果:是不是很难看,因为我们的对话框美化了,所以我们的按钮也要美化,因为采用贴图的方式来美化,所以,我先给出这两个按钮的PNG格式的图片,该图片支持透明色,具体如下:关闭按钮效果图:最小化按钮效果图:这两张效果图是我自己从网上找的,可能不是很合适,...

2018-10-16 16:19:28 1515

原创 MFC 给对话框添加图片背景

在windows开发当中做界面的主要技术之一就是使用MFC,通常我们看到的QQ,360,暴风影音这些漂亮的界面都可以用MFC来实现。今天我们来说一下如何用MFC美化对话框,默认情况下,对话框的背景如下:那么,我们如何将它的背景变成如下界面呢,而且还要保留对话框的移动功能,漂亮背景如下:为了实现美化对话框背景的效果,我们需要让我们的对话框响应WM_CTLCOLOR消息,每当我们的对话...

2018-10-16 14:53:48 3434 2

原创 VS发布软件时去除msvcp100.dll和msvcr100.dll图解说明

最近开发个程序,Copy到虚拟机环境中测试时提示缺少msvcr100.dll,于是想到编译时设置选项去除依赖。 什么是 msvcr100.dll MS = Microsoft V = Visual C = C program language R = Run-time 100 = Version什么是 msvcp100.dllMS = Microsoft V = Vi...

2018-09-18 10:32:29 2506

原创 列表视图控件的创建

列表视图控件的创建       MFC同样为列表视图控件的操作提供了CListCtrl类。       如果我们不想在对话框模板中直接拖入List Control来使用列表视图控件,而是希望动态创建它,则要用到CListCtrl类的成员函数Create函数,原型如下:virtual BOOL Create(   DWORD dwStyle,   const RECT

2017-10-28 14:25:28 835

原创 VS2010 MFC关于修改静态文本框的颜色大小背景

假设有一个静态文本框控件,其ID为:IDC_STATIC_XSDJ,且关联一个control类的CStatic类型的变量m_static_xsdj。设置字体时自然要用到CFont类,下面介绍两种方法,两种方法都要先在头文件中添加一个变量CFont newFont,切记要声明称类的成员变量,不能是局部变量方法一:在OnInitDialog()函数中添加代码:1 new

2017-10-27 12:13:24 4852

原创 如何为 ESP 系列模组烧录固件

ESP FLASH TOOL 的官方下载地址为: http://www.espressif.com/sites/default/files/tools/flash_download_tools_v3.4.9.2_1.zip烧写工具说明 http://bbs.espressif.com/viewtopic.php?f=5&t=433烧写前请参考如何安装安信可一体化开发环境完成 sdk

2017-08-23 12:10:48 3128

原创 怎么使用乐鑫云端服务器软件

http://iot.espressif.cn/#/help-zh-cn/帮助开始 这是采集数据的例子,反向控制(比如开关)的例子见 智能开关这是线上机器例子,每五分钟采集一次数据,查看。你不需要写一行代码,就能做到同样的事情。下面以 cpu usage 作为例子,来展示如何使用这个平台。因为这个不需要传感器,并且在本机就可以运行。需要理解几个概念:

2017-08-22 22:17:25 2293 1

原创 ESP8266 引脚复用功能选择

pinMode(), digitalRead(), digitalWrite(), analogWrite() work as usual.Pin numbers correspond directly to the esp8266 GPIO pin numbers. To read GPIO2, call digitalRead(2);All digital IO pins ar

2017-08-22 20:38:01 9206

原创 SDIO接口WiFi驱动浅析

SDIO-Wifi模块是基于SDIO接口的符合wifi无线网络标准的嵌入式模块,内置无线网络协议IEEE802.11协议栈以及TCP/IP协议栈,能够实现用户主平台数据通过SDIO口到无线网络之间的转换。SDIO具有传输数据快,兼容SD、MMC接口等特点。     对于SDIO接口的wifi,首先,它是一个sdio的卡的设备,然后具备了wifi的功能,所以,注册的时候还是先以sdio的卡的

2017-08-22 18:16:11 3031

原创 esp_iot_sdk固件函数解释

ESP8266 物联网平台的所有网络功能均在库中实现,对用户不透明。用户应用的初始化功能可以在 user_main.c 中实现。void user_init(void)是上层程序的入口函数,给用户提供一个初始化接口,用户可在该函数内增加硬件初始化、网络参数设置、定时器初始化等功能。 一、代码结构以固件中的examples文件夹下的IoT Demo为例

2017-08-22 17:12:36 1899 1

原创 AP和STA模式分别是什么意思

物联网无线通讯wifi模块AP和STA模式分别是什么意思?  Wifi模块为串口或TTL电平转WIFI通信的一种传输转换模块,内置无线网络协议IEEE802.11协议栈以及TCP/IP协议栈,能够实现用户串口或TTL电平数据到无线网络之间的转换。 Wifi模块 包括两种类型的拓扑形式:基础网(Infra)和自组网(Adhoc)要说明无线网络的拓扑形式,首先要了解两个基本概念: 1:AP

2017-08-22 15:01:23 34928

原创 TCP和UDP的区别

TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了。TCP/IP协议集包括应用层,

2017-08-22 14:39:55 763

原创 我是程序猿

Brad Feld 的一篇文章 The Rise of Developeronomics 中提到了“10倍效率的开发者(10x developer)”的概念(伟大的开发者的效率往往比一般的开发者高很多,而不只是一点点),Adam Loving 在读了之后受到启发,并向多位大牛(Ben Sharpe、Collin Watson 和 Jonathan Locke)询问如何成为“10倍效率的开发者”

2017-08-18 03:39:07 283

原创 关于蓝牙历史以及蓝牙基本介绍

什么是蓝牙4.0, 蓝牙其他标准又是什么低功耗蓝牙(Low Energy; LE),又视为Bluetooth Smart或蓝牙核心规格4.0版本。其特点具备节能、便于采用,是蓝牙技术专为物联网(Internet of Things; IOT)开发的技术版本。所以它最主要的特点是低功耗,普及率高。现在所说的蓝牙设备,大部分都是在说4.0设备,ble也特指4.0设备。 在4.0之前重要

2017-08-18 03:15:52 2053

原创 电子发烧友论坛

[email protected]屎壳郎 + 狗屎 =  永远

2017-04-02 21:22:47 2706

原创 System函数处理路径有空格问题函数

char SourceCharArray[100];char TargetCharArray[100];void CManufactureDlg::SystemTransform(void){int i=0,j=0,k=0,y = 0;char CharTemp[20][20] = {0};char Flag[20] = {0};char Length[20];fo

2017-01-12 23:07:42 1658

原创 汇编标志位简介

转载标志位简介:    标志寄存器,又称程序状态寄存器(它的内容是Program Status Word,PSW).这是一个存放条件码标志,控制标志和系统标志的寄存器.6个状态标志位    CF—进位标志,加法时的最高位(D7或D15)产生进位或减法时最高位出现借位,则CF=1,否则CF=0;    AF—辅助进位标志,供BCD码使用。当D3

2016-12-26 21:13:28 3054

原创 NEC红外线编码协议

红外遥控协议-NEC协议为方便理解所看到的波形是从红外接收管出来的信号,跟协议所说的信号高低(0或1)刚好相反NEC协议是众多红外遥控协议的其中一种,除NEC外,还有RC5、RC6等其它的。市面上买到的非学习型万能电视遥控器大多集成一种或多种编码是NEC型的,我买的二个遥控器中就有三种以上编码是NEC的。NEC编码的一帧(通常按一下遥控器按钮所发送的数据)由引导

2016-10-24 16:27:22 41789

原创 用CreateFile打开COM10以上的串口

在VS2010上用CreateFile打开串口,代码如下:[cpp] view plain copyHANDLE m_hComm=CreateFile(Port,GENERIC_READ|GENERIC_WRITE,0,0,OPEN_EXISTING,0,0);  if(m_hComm==INVALID_HANDLE_VALUE )  

2016-10-19 18:23:00 5255

原创 利用KEIL获取文件编译时间

可以使用KEIL内置的__DATE__ 和 __TIME__ 宏来实现这个功能参考范例:unsigned char code DataStr[]=__DATE__;unsigned char code TimeStr[]=__TIME__;这样,编译后TimeStr的字符串正好是编译的当前时刻,相当于unsigned char code TimeStr[]="09:12:04"

2016-10-19 15:45:36 2681

原创 搞定需求变化

坊间流传一句话——“杀一个程序员不用枪,改三次需求就可以了”。问君能有几多愁,恰似调完代码改需求。需求变化是程序员眼中最大的痛,没有之一。对程序员来讲,最理想的情况是,需求定下来后,直到软件交付都不发生一次变化。然而,需求的变化却是客观存在,无论你接受与否,稍微复杂点儿的项目,需求变化都是难以避免的事。所以,我们既要了解需求为什么说变就变,又要修炼面对需求的心态,,还要知道怎样控制需求变化

2016-10-10 19:00:39 349

原创 怎么在迷茫中走出

为你重视的人、事、物付出我的父亲说,他活着,就是为了让我们能活得更好。很多人的父母都这样,挺好的。这也是人生意义之一种,只要你为之付出的对象不拒绝你的给予,不抛弃你,你就始终有一个目标可以为之努力。所以,你可以问你迷茫的小伙伴三个问题(参看订阅号“程序视界”推荐的图书《当时忍住就好了》):你最珍视的人、事、物是什么?你愿意为这些人、事、物做些什么你打算什么时候开始做?

2016-10-10 18:34:07 356

原创 人们为什么抱怨工资低又不离职

不知道你想没想过这个问题:为什么很多人老抱怨工资低,却迟迟不肯离职?我琢磨了一下,可能有这么几个原因:看不见的福利还不错能力有限不敢跳害怕失去,害怕落差不是不跳,时候不到跟风发发牢骚,而已看不见的福利还不错纳尼,还用说吗,工资一千八,小到柴米油盐话费卫生纸,大到冰箱空调汽车老婆,统统给发,离什么职啊……能力问题其实,很多人知道自己的斤两,

2016-10-10 18:04:16 985

原创 GD32F103+MPU9150四旋翼飞行器第一步:姿态融合算法

前言:相比直升机来说,四旋翼乃至多旋翼飞行器的机械结构简单,操控灵活,飞行稳定,体积也能做的更小,当然也能更大,它将直升机复杂的机械结构设计难度转化到了电子电路和算法上面,因此四旋翼飞行器的设计更容易上手,更民众化。 四旋翼飞行器的软件核心包括两大部分:姿态融合算法和控制算法;硬件核心便是MCU和传感器。 先介绍下姿态融合算法,姿态融合说白了就是将3轴加速度、3轴角速度

2016-09-22 13:12:38 7847 6

串口示波器

串口示波器,自己写的

2017-08-23

无线通讯wifi模块AP和STA模式区别

无线通讯wifi模块AP和STA模式区别

2017-08-23

串口通信助手源码

串口助手的制作,里面详细基于MFC代码,有详细的串口接收和发送,以及注意的地方

2014-07-16

空空如也

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

TA关注的人

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