自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 【电子】Baseband Signal and Passband Signal

Baseband的参考文章:https://techterms.com/definition/baseband引用原文: Baseband refers to the original frequency range of a transmission signal before it is c...

2020-05-09 17:03:54 38 0

原创 【单片机】stm32f030 硬件 I2C

test

2020-05-08 13:11:23 69 0

转载 【C#】C# ToString格式化

原文链接:https://www.cnblogs.com/xdotnet/archive/2009/01/17/tostring_format.html 在很多对象显示为字符串的时候都会使用到ToString中的格式化,由于以前没怎么注意到这个问题,想总结一下各个基础结构对象的格式化,以便后...

2020-03-24 10:53:31 44 0

原创 【电路设计】AD多样覆铜连接方式共存

AD设置覆铜的连接方式:https://blog.csdn.net/tq384998430/article/details/76702400。 如果所有GND信号的覆铜都是使用 Direct Connect 方式的话,手工焊接的时候会出现GND焊盘难以焊接的情况, 由于连接到大面积的覆铜导致散热...

2020-03-17 18:37:09 86 0

原创 【计算机数学】神奇的傅里叶变换

两个手机,第一个安装“Frequency Sound Generator” APP,用于生成不同频率的声音,这里我生成了1000Hz、500Hz、200Hz: 第二个手机安装“音频分析仪” APP,用第二个手机听第一个手机的声音: 可以看到200Hz、499Hz、1000Hz处的值很高...

2020-03-11 18:17:15 55 0

原创 【单片机】SI4432 Based Networking 2

SI4432芯片的内部状态机以及各个状态下的: 编写一个简单地碰撞检测示例程序: void RF_SendProcedure_CSMA_CA(void) { static const u8 random_withdraw_time_table[] = {5,22,19,14,12,...

2020-03-11 11:52:58 49 0

原创 【单片机】SI4432 Based Networking 1

设计了一个基于SI4432的USB Dongle: 焊接了两个设备,相距20CM,正常状态下,两个设备都是处于接收状态,不向外发射信号: 软件上以100Hz的速度读取RSSI寄存器的值并显示波形: 这时候无线芯片收到的RSSI值在60到70左右,比较平稳,这可能是环境中存在的已经...

2020-03-10 15:01:00 75 0

原创 【单片机】DIY无刷电机驱动器 2

接着上篇,先解释一下为什么会出现“共振”现象,如下图: 假如A1的占空比为25%,B2的占空比为10%,C2的占空比也为10%,我一开始想象的A1和B1之间的信号强度应该是: 25% x 10% = 2.5% 但是实际远不是这么回事,假如B2的高电平时间范围正好都落在了A1的高电平时间范...

2020-03-04 18:48:51 132 0

原创 【单片机】DIY无刷电机驱动器 1

参考文章:《【机械自动化】BLDC驱动器ESC》。 控制直流无刷电机和控制直流有刷电机的最大区别有两点: 1、有刷直流电机使用用两个驱动桥臂,无刷直流电机需要使用三个驱动桥臂。 2、有刷直流电机使用碳刷换相,无刷直流电机需要外部控制换相。 这里为了简化,没有使用霍尔传感器以及参考文章中介绍...

2020-03-04 12:25:10 233 0

原创 【单片机】STM32F030硬件SPI的坑

使用的是STM32F030F4P6,这是一个小封装的单片机,但是五脏俱全,很多功能,就是引脚不多。使用到SPI的时候感觉应该和以前用过的STM32F103系列是一样的,寄存器的结构几乎是完全一样的,寄存器操作的程序甚至都能兼容,但是在使用的时候就是调不通,耽误了不少时间。 SPI的引脚初始化和配...

2020-03-03 15:46:02 542 0

原创 【单片机】数字电位器(旋转编码器)检测程序

void EXTI4_15_IRQHandler(void) { if(EXTI->PR & EXTI_Line5) { //每一相脉冲都可能有抖动,类似于按键的抖动 //需要在软件上将抖动过滤掉,延时放在最前面。 delay_us(1000); //去抖动,放在中断...

2020-02-27 19:40:58 329 1

原创 【C语言】部分不能表示二进制数的编译器中如何表示二进制数

KEIL for 51和RealView MDK就不能使用类似 int a = 0b00010101; 以及 int a = 0b00010101B; 这样的表示二进制数的方法,有时候不方便。解决小技巧参考文章:http://ask.zol.com.cn/x/9159373.html #ifn...

2020-02-25 13:45:52 151 0

原创 【机械自动化】BLDC驱动器ESC

《【抢头条】迄今最全的无刷电机工作及控制原理分享-绝对...!》中已经很详细的解释了无刷电机的工作原理,但是文章中没有介绍BLDC的驱动器。以ESC(Electric Speed Controller)为例,这是四轴飞行器上的无刷电机使用的一种无刷电机驱动器,也叫“电子调速器”,俗名“电调”,我使...

2019-12-13 13:35:12 197 0

原创 【C语言】有符号和无符号数的比较运算

int a = -1; unsigned int b = 1; if(a < b) printf("a < b\r\n"); else printf("a > b\r\n"); if(a < (int)b) p...

2019-12-06 13:42:14 59 0

原创 【Linux开发】电容屏原理

1、表面电容式触摸屏 参考视频:https://www.bilibili.com/video/av25429352,感谢李永乐老师通俗易懂的科普。 表面式电容屏有个氧化铟锡(ITO)层(透明的导体层),该层有4个电极(在长方形的四个角),每个电极可以产生交流电压,ITO层的上一层是一个(透明的...

2019-10-31 11:16:56 211 0

原创 【Linux开发】JNI for Android实验

这是一项拖延了很久没做的事,为什么实验Android平台下的JNI实验?安卓系统现在太成熟了,开发人员也很多,相对于闭源的IOS系统来说,安卓系统在消费电子、医疗电子、工业控制等方面上的优势太大了,因为不可能在工业控制器上嵌入一个好几千的iPad。以我熟悉的工业控制方向为例,现在有很多基于Andr...

2019-10-22 17:42:29 63 0

原创 【物联网】MQTT协议

维基和官网的 文档资料比较完整,引用一张网络上的关于解释MQTT协议工作原理的图片: 简单的说,MQTT就是一种基于发布-订阅结构的(publish-subscribe-based messaging protocol)协议,其实现基于TCP/IP协议,也可以使用UDP等协...

2019-09-29 12:04:22 211 0

转载 【Linux开发】开源协议是什么?有哪些?如何选择?

转自:http://c.biancheng.net/view/2947.html,如有侵权请留言联系,非常感谢! 开源软件在追求“自由”的同时,不能牺牲程序员的利益,否则将会影响程序员的创造激情,因此世界上现在有 60 多种被开源促进组织(Open Source Initiative)认可的开源...

2019-09-11 11:41:15 214 0

原创 【Linux开发】关于X11

X-Window(维基百科:https://en.wikipedia.org/wiki/X_Window_System)是一个窗口系统,采用的是server-client架构,分为两个部分x-server和x-client,其中x-server其能够直接操作硬件显示器,而x-client不能直接操...

2019-09-10 19:24:33 612 0

原创 【Linux开发】关于Cmake

1、参考教程: CMake 入门实战:https://www.hahack.com/codes/cmake/ 在linux下使用CMake构建应用程序:https://www.ibm.com/developerworks/cn/linux/l-cn-cmake/ cmake与autoconf...

2019-09-10 11:23:57 113 0

原创 【Linux开发】GDB的使用

1、GDB常用命令及缩写: https://blog.csdn.net/gnuhpc/article/details/4368831 https://www.jianshu.com/p/6cdd79ed7dfb https://www.cnblogs.com/me115/p/3837960....

2019-09-10 10:55:29 49 0

原创 【Linux开发】另一个小规模工程的Makefile模板

和上一个Makefile模板相似,但是解决了一个问题,就是源码目录中可能有不需要被编译的源码文件,为了解决这个问题,需要设置好哪些源码文件需要被编译,我们可以在源码根目录下的Makefile中设置好,但是显得很不灵活方便,想到了Linux内核的Makefile配置方式,使用obj-y和obj-m这...

2019-09-09 22:09:47 46 0

原创 【Linux开发】一个小规模工程的Makefile模板

本Makefile适用于小规模软件工程。修改SOURCE_PATH变量设置源码路径,修改BINARY_PATH变量设置输出文件的路径,OBJECT_PATH变量为中间.o文件的存放目录,INCLUDE_PATH变量为头文件包含路径,TARGET变量为输出文件名。Makefile会输出依赖关系文件“...

2019-09-09 14:47:57 49 0

原创 【Linux开发】IPC

IPC即Inter-Process Communication,进程间通信,准确的来说IPC是用于实现不同进程中的线程之间的通信。注意进程间通信和(同一个进程中的)线程间通信是有区别的,一个进程中的所有线程都在同一个寻址空间,可以直接使用全局变量(包含信号量、消息队列等)进行通信,而不同进程拥有不...

2019-08-22 14:23:39 241 0

原创 【Linux开发】Ubuntu下交叉编译opencv

参考文章:https://blog.csdn.net/qq_30155503/article/details/79983630、https://www.jianshu.com/p/0fcdce428d8f。 一开始编译opencv的时候我使用了交叉编译器4.4.1和4.6.3两个版本,openc...

2019-08-20 18:41:45 479 0

原创 【Linux开发】Ubuntu下的opencv的编译与安装

参考文章:https://www.cnblogs.com/jsxyhelu/p/10349447.html、https://www.cnblogs.com/kangxinxin/p/9320913.html。 废话不多说,opencv的官方源码下载路径:https://opencv.org/re...

2019-08-20 18:41:34 139 0

原创 【Linux开发】Orange Pi上WiringPi的使用

参考一篇我之前写的文章:https://blog.csdn.net/tq384998430/article/details/53161192,这篇文章是通过操作/dev/mem内存映射的方式操作GPIO的寄存器以达到控制GPIO的功能,这篇文章没有问题,但是官方其实有一个更好的操作GPIO的库叫做...

2019-08-20 18:41:23 465 0

原创 【QT5】tslib移植

tslib全称应该是Touch Screen Library,也就是专门针对触摸屏创建的开源库,tslib的最新工程的github地址为:https://github.com/libts/tslib,感谢牛人的开源工程,clone下来,进入源码目录编辑一个脚本文件 ts-build: #!/b...

2019-08-06 15:43:13 302 0

原创 【QT5】编译移植与开发环境搭建

参考文章: https://blog.csdn.net/vickycheung3/article/details/82182136 https://blog.csdn.net/lizuobin2/article/details/52673494 前面移植了LittlevGL到嵌入式ARM系统...

2019-08-05 18:52:42 307 0

原创 【LittlevGL】ARM Linux移植

在前面移植到Ubuntu虚拟机上进行测试过,但是测试程序里面只有显示器驱动,没有输入设备(鼠标、键盘、触摸板)的移植,今天将LittlevGL移植到我的一块Linux板子上去,板子带有一块800*480的屏幕以及电容触摸面板。说不准什么时候可能可以用上,毕竟安卓和QT对系统的性能和资源要求太高,使...

2019-08-02 18:50:21 1214 7

原创 VMware虚拟机在NAT模式下的网络访问问题

不知道是VMware有bug还是Windows有bug还是我这台电脑有问题,VMware的桥接模式无法联网,网上很多解决方案都试了没有用,之前我使用的电脑安装VMware虚拟机都可以正常使用桥接模式,在桥接模式下,虚拟机和宿主计算机处于同一个网段,虚拟机也能从宿主计算机存在的局域网中的路由器申请一...

2019-07-29 15:59:38 815 2

原创 【LittlevGL】模拟器

LittlevGL提供的模拟器有很多种: 我使用的是VS版本的模拟器进行测试,github主页:https://github.com/littlevgl/pc_simulator_sdl_visual_studio,这个项目就是LittlevGL模拟器的VisualStudio工程,里面的v...

2019-07-24 16:42:59 991 0

原创 【LittlevGL】Demo学习

前一篇文章通过官方给的基于Linux FrameBuffer的LittlevGL例程学习了LittlevGL的移植步骤。本文将继续学习基于Linux FrameBuffer的Demo例程。 先上带注释的demo_create函数代码: void demo_create(void) { ...

2019-07-24 14:53:58 1674 0

原创 【LittlevGL】移植

“LittlevGL is a free and open-source graphics library providing everything you need to create embedded GUI with easy-to-use graphical elements, beaut...

2019-07-22 16:05:49 2043 0

原创 【LwIP】移植(FreeRTOS)

基于操作系统FreeRTOS的移植又比我想象的复杂一点,虽然前面的文章中移植的LwIP的工程也是基于FreeRTOS系统的,但是将所有网络操作都放在了同一个线程中,相当于模拟了无操作系统的情况,使用的是RAW API进行程序设计的。使用RAW API有一个非常非常局限的地方,就是不能再不同的上下文...

2019-07-19 17:07:15 1915 5

原创 【LwIP】移植(NON-OS)

LwIP(A Lightweight TCP/IP stack),嵌入式系统常用的一个网络协议栈。移植LwIP比我想象的稍微简单一点(当然我不是从零开始移植的,参考例程并稍作修改),我准备移植RAW API版本的LwIP,也就是在无RTOS的情况下移植LwIP。其实只要抓住一个重点:首先忽略协议栈...

2019-07-16 14:13:37 303 0

转载 【抢头条】迄今最全的无刷电机工作及控制原理分享-绝对...!

转载地址:https://bbs.dji.com/thread-74728-1-1.html 转载请注明作者:少帅-Z 内容持续更新,目前更新到三相多绕组多极内转子部分,后面会有2212电机拆解绕线图,绕线分析、动力结构分析、换相控制等干货。 内容真的不难,耐心...

2019-07-03 11:25:06 1039 1

原创 【机械自动化】旋转编码器

参考文章:https://en.wikipedia.org/wiki/Rotary_encoder 旋转编码器有两种:增量式编码器和绝对值编码器。 1、增量式编码器 所谓增量式,就是指编码器输出的信号是相对上一次的位置的一个变化量(德尔塔值),因此当前位置是由上一次位置的值加上本次读取到的值...

2019-07-02 18:26:08 1294 0

原创 FreeRTOS - 同步与通讯

在之前的文章中有提到FreeRTOS系统中的信号量和队列,信号量是用于资源管理和线程(中断)同步,队列则是用于创建数据缓冲区。在实际的应用中,一般会有多个线程,线程之间也会有同步和通讯的问题,使用信号量和事件组可以解决同步问题,使用队列及其衍生品可以解决通讯问题。 线程间的同步可以使用二值信号量...

2019-07-01 12:23:23 580 2

原创 ARP缓存表过期问题

两台 相同IP地址 的主机A、B和一台IP不同的嵌入式主机C通过局域网络进行通信,A和B不同时连接到交换机/路由器。发现其中任意一台主机先和嵌入式计算机C通讯,然后断开这台主机的物理连接,连上另一台主机到网络,这时候另一台主机和嵌入式主机C之间就会出现嵌入式主机C无法发送数据到后连主机的情况,但是...

2019-06-06 17:43:14 1945 0

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