自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LancerZhang的博客

记录自己,成长自己

  • 博客(33)
  • 资源 (3)
  • 收藏
  • 关注

原创 [问题]Atiny1617 关于IIC总线一直被拉低的原因分析

在之前的工作中遇到一次IIC总线的问题:一个主设备和两个从设备使用的一路硬件IIC的环境下,当分别加载两个从设备驱动的时候,出现了IIC总线中的SDA被一直拉低,SCL有周期性的毛刺(图中SDA是黄色线,SCL是蓝色线)细节图:用逻辑分析仪抓取的:其中一个从设备是ATmel系列芯片,而问题就是出在Atmel的硬件IIC中。经分析,在Atmel发送数据时产生了一个冲突,而在冲突的处理函数中,这里直接重新初始化IIC。查阅了有关datasheet:意思是:如果

2020-08-09 10:09:25 3649

原创 [NXP]使用VSCode编译调试S32K144

引言在最近一段时间的开发中我使用了Visual Studio Code来作为代码编辑器,其优异的工程管理,超快的启动速度,各种各样功能强大的插件(帅气的主题),使我立刻爱上了这个文本编辑器。加之网上有许多将stm32的工程搬迁到VSCode上来编译调试,所以我尝试使用插件来完整的在vscode上搭建了一个S32K144的开发环境。下面我就来详细讲述一下这个环境的搭建和基本使用方式。 适用范围本文档适用于偏爱VScode的同事提升一定的工作效率。 软件准备Visual Studio Code.

2020-07-08 08:54:46 3916 3

转载 [转载]在VS code中编译并调试STM32

使用VSCode和VS2017编译调试STM32程序近两年,微软越来越拥抱开源支持跨平台,win10搭载Linux子系统,开源VSCode作为跨平台编辑器,VS2017官方支持了Linux和嵌入式开发功能。ST也是,近两年开发的软件工具基本都是跨平台(基于Java)的,比如STM32CubeMX,MCUFinder,STM32CubeProgrammer等。17年年底收购了truestud...

2020-04-05 23:01:38 2364

原创 [记录]在WIN10上安装tensorflow-gpu V2.1.0的过程

组装了一台深度学习菜鸟入门级的电脑,配置见:DIY自己的深度学习电脑于是我再一次安装了tensorflow-gpu版本。经过一下午的折腾,发现我上一篇博文简直是莫名其妙的安装成功了,有很多想法都是错误的,这里我就不贴出来了。本文就是把我一下午的经过描述一遍,有许多网上的报错,都在我这完美的出现了。环境:NVIDIA driver:一开始的版本是423,之后我升级为442CUDA...

2020-03-08 18:11:01 2025 1

原创 [记录]安装tensorflow的经历

武汉加油!前言操作系统:win10显卡:GTX 960M 版本 418.96零基础,准备利用这个假期熟悉一下深度学习,从配置环境开始!前提直接安装vs2015安装开始:首先了解了一下tensorflow,有cpu和gpu之分,这里我安装的式tensorflow-gpu,其所需要的软件,如下:CUDA + cuDNN + anaconda根据显卡版本,我也在网上找...

2020-03-08 16:53:31 382

原创 [分享]分享一个多旋翼开源飞控项目

https://github.com/golaced/Oldx_fly_controller/tree/rmdOLDX多旋翼开发平台(OLDX-FC)是由北京理工大学自动化学院所属《北理云逸科技》团队开发的一个目前国内最完整的免费开源飞控项目,随着国内开源飞控的逐步发展如匿名、 INF、无名和ACFly飞控的陆续推出,如光流、气压计和GPS等相关算法已经逐步完善,但是相比Pixhawk等...

2020-03-04 16:05:11 1142

原创 [学习]探究python命令行(四)

思考接下来,我将用argparse命令行模拟一些git的常用指令。首先常用的git指令有:git statusgit add xxxxxxgit commitgit push这就需要用到gitpython库和argparse中的嵌套解析器等方法。安装gitpython库首先下载gitpython库 pip install gitpython下载好...

2020-03-02 17:15:39 183

原创 [分享]计算地球上的点到一条直线的距离的算法

分享一个原创的地球上点到线的距离计算方法https://www.amobbs.com/thread-5728196-1-1.html(出处: amoBBS 阿莫电子论坛)描述如下,已知一条直线,直线的2端的GPS坐标已经精确测定,分别是(X1,Y1) (X2,Y2),当另一个点(x,y)慢慢的靠近这条线时,求这个点到线的距离, 这个会动的点的坐标是实时测量的,会变,要连续的计算...

2020-03-02 09:26:41 1381

原创 [学习]探究python命令行(三)

在上一篇博文中,我们已经具备了编写一个简单命令行程序的能力。本文将和大家继续深入了解argparse的进阶用法,助力我们拥有实现复杂程命令行程序的能力。互斥参数互斥参数就是多个参数之间彼此互斥,不能同时出现。使用互斥参数首先通过ArgumentParser.add_mutually_exclusive_group在解析器中添加一个互斥组,然后在这个组里添加参数,那么组内的所有参数...

2020-02-28 16:29:44 134

原创 DIY自己的深度学习电脑

以下是参考而来的丐中丐中丐版CPU:AMD 3500X主板:微星 B450m 迫击炮 铂金版显卡:索泰 RTX 2060 super Xgaming OC V2内存:阿斯加特 洛极 51C 灰 3200频 8G*2硬盘:海康威视C2000 Pro 1TB电源:鑫谷 600W GP700G黑金散热器:超频三 东海风云机箱:先马 黑曼巴标准版一共6K多,就问能...

2020-02-27 17:09:33 621 1

原创 [学习]探究python命令行(二)

在前一篇文章中,我们已经了解了如何使用argparse的基本步骤,以及一些参数的大致概念,本章将继续深究每个参数的具体用处 如果参数名称前没有‘-’或‘--’则该参数为必填参数,如果程序运行时不给它赋值则程序将抛出异常 创建一个‘--’参数,如果参数前有‘--’则为可选参数。在输...

2020-02-27 16:24:12 143

原创 [学习]探究python命令行(一)

首先感谢HelloGitHub以及众多大神们。因为接下来我所学习的python argparser 是来自HelloGitHub公众号的分享,我也结合自身知识点盲区,和大家一起学习整理。HelloGitHub面向编程新手的项目,每月 28 号以月刊的形式更新发布。内容包括:流行项目、入门级项目、企业级项目等,这些开源项目大多都是非常容易上手、很 Cool,能够让你用很短时间感受到编程的魅力和便...

2020-02-25 16:21:09 169

转载 [转载]Win10/Ubuntu双系统安装常见问题

目录1.win10重启无法进入BIOS 2.install ubuntu后黑屏 2.1 解决安装黑屏 2.2 安装英伟达显卡驱动 3.ubuntu中文系统注意 4.Windows系统时间异常 4.1 为什么会异常 4.2 解决方案 5.双系统引导优化 5.1 调整引导顺序 5.2 默认引导调整 我最初装双系统的时候也遇到了许多问题,基本上别人能遇到的问题我...

2020-01-07 09:42:00 282

原创 [已解决]mpu9250+bmp280数据读取

可以看一下我的上一篇博客https://blog.csdn.net/zhangyufeikk/article/details/97789743问题的发现:一开始我以为我已经读到加速度和陀螺仪的数据,但由于一直读不到ak8963的id,没办法读取磁力计的数据,我就试着改了一下waitack的代码,然后就能读到磁力计的数据了。接着,我就发现我原先读到的加速度值不对,因为默认的加速度量程时2...

2019-07-31 17:56:04 4440 2

原创 [问题]mpu9250+bmp280数据读取

采用软件iic读取的数据,软件iic就暂时不讲了,开搞mpu9250在网上了解了一些,mpu9250实际上就是mpu6050+磁力计,即有两个器件地址,可以通过设置读取模式来分别读到mpu6050和磁力计的数据。在网上看到这一片帖子,可以借鉴一点:https://blog.csdn.net/black_yu/article/details/51815049还有一些前辈的指点...

2019-07-30 15:52:19 3378 3

原创 四轴的再次上路

大学时代,由于莫名其妙的成为了有关四旋翼飞行器项目的负责人,我便踏上了程序猿这条不归路。当时,项目最后应该是失败了(但是结题时并不严格,还是过了),大学生涯结束后,想自己再次实现四轴的愿望便成了我的心结。转眼已经工作三年,这个念头不消反涨,趁着自己这段时间对写博客这一事还是比较热衷的情况下,又动起了diy四轴的念头,也正好写博客作为自己的记录。当时对姿态解算、pid控制等一知半解,就是...

2019-07-12 16:38:39 238 1

原创 学习型通用红外遥控设备(四)

四、硬件电路:说些闲话。如果有其他单片机的基础,STM32上手还是挺快的,一周左右应该可以。红外遥控器 的制作,算是熟悉STM32之后的练手。就市场来看,STM32的应用还是挺广泛的。之前在成都实习的公司,其项目和产品大部分都是用STM32来做。其 他公司,很多也是做STM32做产品,毕竟STM32性价比高啊。当然,基于Linux、嵌入式、ARM三位一体的设计除外。电路没什么可说的。看...

2019-07-12 09:32:58 706

原创 学习型通用红外遥控设备(三)

3.1 红外脉宽存储及FLASH的读写 根据STM32型号的不同,FLASH容量由16K到1024K不等。FLASH模块主要由三部分组成:主存储器、信息块、闪存存储器接口寄存器。模块组织见《STM32中文参考手册》小节《2.3.3 嵌入式闪存》。主存储器用来存放代码和数据常数,对于大容量产品,划分为256页,每页2K字节;中小容量产品每页则是1K。信息块的启动程序代码用来存储ST自...

2019-07-12 09:31:25 417

原创 学习型通用红外遥控设备(二)

2.1 38KHz载波产生常用的38KHz载波的产生方法有455KHz晶振分频法、时基电路搭建法、微控制器PWM模块产生法。为减少硬件规模、缩减成本,故由STM32的定时器输出PWM波,得到占空比1:3的红外载波。STM32 的定时器分为高级定时器(TIMER1、TIMER2)、基本定时器(TIMER6、TIMER7) 和通用定时器(TIMER2~ TIMER5),具有非常强大的功能。其中...

2019-07-12 09:28:38 473

原创 学习型通用红外遥控设备(一)

1.1处理器 处理器为STM32,代码在其两个系列的CPU上调试通过,为STM32F103ZET和STM32F103VBT。软件平台:Keil uVision4;电路设计:Altium Designer v6.9。1.2红外通信技术理论及示波器验证先 说下红外遥控的知识。这方面的资料百度一下到处都是,归纳起来有红外通信的介质-波长为0.76~1.5μm的红外线;现今主流且常...

2019-07-12 09:25:24 1571 2

原创 从原理到代码 梳理姿态更新计算的四元数算法

前言 姿态解算过程涉及到两个坐标系,一个是运载体的机体坐标系,该坐标系与运载体固连,当运载体转动的时候,这个坐标系也跟着转动,我们假设运载体的坐标系为b系。另外一个是地理坐标系,即东北天坐标系,X轴指向东,Y轴指向北,Z轴指向天,这个坐标系也称为导航坐标系,我们假设这个坐标系为n系。 所谓的姿态解算,就是求出当前的机体坐标系b相对于地理坐标系n的变化。由于n系和b 系均为直角坐...

2019-07-04 09:51:48 25358 16

原创 基于icm20609姿态更新计算的四元数算法

前言在目前的六轴姿态传感器中,网上对于icm系列的贴子相对于mpu系列要少很多,而icm20609的贴子为零。在官网上对于MPU系列(和一款icm系列芯片)已经不做推荐了我这里也在官网上看了下icm20609和icm20602的区别,因为这篇贴子主要是根据icm20602的讲解所改动的。可以看出,icm20609具有超薄封装以及4K的FIFO,而icm20602更低功耗,O...

2019-07-01 15:09:10 17310 36

转载 转载v4.34的匿名上位机使用方法

昨天想用匿名上位机测下mpu6050原始数据,找了些资料,但网上也没有很详细讲解的例子,都是直接用的那种首先,上位机不同版本的协议可能是不一样的,打开后按f12可以查看帮助,我一开始用的2.6版本,帮助说明有点模糊,看不明白里面的数据帧是怎么定义的...

2019-06-25 09:56:27 2815

原创 探究ESP32S【第七天】——android端mqtt

虽然暂时接入不了米家生态,但是学习还是要继续。在之前的电脑端通过mqtt协议控制ESP32的led灯的基础上,用APP来控制ESP32的led灯。首先,贴个帖子:https://www.jianshu.com/p/73436a5cf855;这篇帖子主要看android实现的后半段先下载个android studio(好久不用了,感觉有点生疏)。公司的安装包,进度缓慢~由于我...

2019-06-24 17:22:07 894

原创 探究ESP32S【第六天】——接入米家(插曲)

接下来试试看能不能接入米家这个loT平台。首先登录https://iot.mi.com/new/index.html,查阅下资料先~~~目前不论是接入米家APP还是小爱的语音平台,暂时还不支持个人开发者的所以个人还不能随意的接入小米的IoT平台。这就很尴尬了,只好,拉闸。———————————————————————————————该篇仅仅作为前进道...

2019-06-24 12:12:08 14368 3

原创 探究ESP32S【第五天】——初试mqtt(3)

昨天貌似是完成了连接mqtt的服务器,如图是昨天的数组越界的问题答案,虽然不知道具体的原因今天看看能不能订阅和发布消息。进入这个网页http://www.hivemq.com/demos/websocket-client/ 进行mqtt的连接、发布、订阅操作。但是,connect没反应是怎么回事?分析分析看看,使我哪个url不对么?怕辽怕辽~对于js小白来说,有点难度。...

2019-06-24 10:13:21 767

原创 探究ESP32S【第四天】——初试mqtt(2)

搬好subscriber.py之后就出现问题:原来是没对齐,okok,你厉害。from umqtt import MQTTClientimport timeimport ledSERVER = '183.53.18.170'CLIENT_ID = 'ZIMO'TOPIC = b'mrjiale'def serve_start(): led2_on()def s...

2019-06-24 10:09:30 721

原创 探究ESP32S【第三天】——初试mqtt(1)

那就试试看MQTT吧,似乎很好玩,老规矩先贴上参考的帖子:https://blog.csdn.net/mrjiale/article/details/83750310自己搭建mqtt服务器:https://blog.csdn.net/yannanxiu/article/details/52703946看文档先安装mqtt这个库,文档中所说的upip.install的方法好像不行啊。那就...

2019-06-24 10:05:36 794 3

原创 探究ESP32S【第三天】——连接wifi(3)

昨天卡在了这里:报错:看了下mircopython的函数库:https://docs.singtown.com/micropython/zh/latest/openmvcam/library/ure.html#上面说的ure模块就是python中的re模块,不管三七二十一,先试试:用match之后,虽然能找出是否存在这个wifi,但是并不能直接对两个str进行比较(st...

2019-06-24 10:01:31 1445

原创 探究ESP32S【第二天】——连接wifi(2)

先敲个help(),ESP32里面到底有哪些,help一下:Welcome to MicroPython on the ESP32!For generic online docs please visit http://docs.micropython.org/For access to the hardware use the 'machine' module:...

2019-06-24 09:58:09 923

原创 探究ESP32S【第一天】——连接wifi(1)

收到一款ESP-32S的开发板,鸡冻万分的开始了学习之旅在网上搜索相关开发环境及IDE,发现Arduino和MicroPython都支持。果断MicroPython哈,这个是用python将C语言包装起来,驱动啥的就不用去管。(兴致大发,注册了amo论坛,又tm买了CSDN的操作系统的考研课程,一时冲动了)先附上arduino的搭建帖子:https://blog.csdn.ne...

2019-06-21 16:40:00 7601

原创 C语言不完整类型与封装

目的了解c语言不完整类型与封装的概念。使程序设计更加高内聚、低耦合减少对结构体成员的直接访问,防止用户随意破坏模块内部的抽象数据类型。 适用范围本文档适用于C语言开发的人员。 介绍 封装(Encapsulation)是一个在现代程序设计里无处不在的手段。对过程的封装,我们称其为函数(Function),对某个对象的属性及行为的封装我们称其为类(Class)。很多高级程...

2019-06-19 10:29:56 929

原创 git patch的一些个人总结

1.引言 在目前的工作中,每每上传代码,需要将项目上的所有文件一一比对(可能是强迫症),所以在想是不是有一种方法进行改善呢,现在的项目都从svn迁移到了git库中,我就想到了git 自带的patch功能,是不是可以减轻这种上传代码的强迫症呢? 先介绍一下Patch是什么。如果一个软件有了新版本,我们可以完整地下载新版本的代码进行编译安装。然而,像Linux Kernel这...

2019-06-19 10:14:49 539

openocd-20200310.7z

OpenOCD是一个运行于PC上的开源调试软件,它可以控制包括Wiggler之内的很多JTAG硬件;我们可以将它理解为一种GDB服务程序。OpenOCD的源码只能通过SVN下载,地址是:svn://svn.berlios.de/openocd/trunk 。最初是由Dominic Rath同学还在大学期间发起的(2005年)项目。OpenOCD旨在提供针对嵌入式设备的调试、系统编程和边界扫描功能。OpenOCD的功能是在仿真器的辅助下完成的,仿真器是能够提供调试目标的电信号的小型硬件单元。仿真器是必须的,因为调试主机(运行OpenOCD的主机)通常不具备这种电信号的直接解析功能。

2020-04-05

datasheet.eeworld.com.cn_espressif_systems_20180930883214.pdf

esp32的datasheet,可供大家参考学习,感谢下载

2019-06-25

红外可学习型遥控器

这只是个初步的红外学习型遥控器,先是一个按键的双状态学习。可以用串口操控,也可以按键操作。大家可以下载下来看看。

2015-05-05

空空如也

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

TA关注的人

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