<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ASWaterbenben的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ASWaterbenben</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ASWaterbenben]]></copyright><item><title><![CDATA[CMake学习汇总]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/136155205</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/136155205</guid><author>ASWaterbenben</author><pubDate>Sun, 18 Feb 2024 16:57:33 +0800</pubDate><description><![CDATA[cmake初识(一)
cmake多目录构建(二)
cmake构建静态或动态库(三)
cmake引用静态或动态库(四)
cmake自动添加宏定义(五)
cmake进阶内建变量及指令(六)
cmake函数、宏和模块(七)
cmake编译iOS/android/mac的opencv库(八)]]></description><category></category></item><item><title><![CDATA[Linux学习之悟空派上实现OLED的无线网IP及CPU温度显示【守护进程】]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/133563935</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/133563935</guid><author>ASWaterbenben</author><pubDate>Wed, 04 Oct 2023 23:30:05 +0800</pubDate><description><![CDATA[守护进程是运行在后台的一种特殊进程，它独立于控制终端并且周期性地执行某种任务或循环等待处理某些事件的发生；它不需要用户输入就能运行而且提供某种服务，不是对整个系统就是对某个用户程序提供服务。Linux系统的大多数服务器就是通过守护进程实现的。守护进程一般在系统启动时开始运行，除非强行终止，否则直到系统关机才随之一起停止运行；守护进程一般都以root用户权限运行，因为要使用某些特殊的端口（1-1024）或者资源；]]></description><category></category></item><item><title><![CDATA[STM32CubeMX在F103上的ADC注入通道配置异常问题]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/129739581</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/129739581</guid><author>ASWaterbenben</author><pubDate>Thu, 23 Mar 2023 21:36:58 +0800</pubDate><description><![CDATA[最近业余时间在搞无刷电机FOC的控制，其中有一部分是关于流过电机三相绕组电流采集的，需要用到STM32内置的ADC，核心是需要使用注入通道以确保ADC数据采集的实时性，但是我在STM32配置完ADC的几个通道后，将几个采集通道逐个接地，发现仅有最后一个通道读取ADC值有效，故写下写这篇博客，以防后面的同志遇到和我一样的问题不知道怎么处理。]]></description><category></category></item><item><title><![CDATA[嵌入式项目管理学习——001重点明确和心态转换]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/127486934</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/127486934</guid><author>ASWaterbenben</author><pubDate>Mon, 24 Oct 2022 11:56:24 +0800</pubDate><description><![CDATA[相信做嵌入式的码哥们在参与一定数量的产品设计和生产之后，都会发现一个问题，如果没有一个负责的产品经理，就会陷入到产品延期、沟通缺失、目标不清晰、需求不明确等等的问题，我目前也是达到了这样一个状态，为了解决这一问题，就开始对项目管理进行了一定的学习。注：以下内容是在研读完《人月神话》和《IT项目经理成长手记》之后的一些心得。]]></description><category></category></item><item><title><![CDATA[Chapter007-FPGA学习之IIC总线EEPROM读取]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125940746</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125940746</guid><author>ASWaterbenben</author><pubDate>Fri, 22 Jul 2022 23:09:10 +0800</pubDate><description><![CDATA[IIC总线是嵌入式领域较为重要的器件间通信总线，同样，FPGA也能通过模块的形式实现IIC的功能，其原理和STM32的模拟IIC总线一致，就是控制每个时间点的SCL、SDA总线电平。IIC总线需要对应的从机机通信器件进行通信，故目前使用AT24C64【IIC总线的EEPROM】作为从机，通过实现对EEPROM的读、写，来学习IIC协议在FPGA的实现。...]]></description><category></category></item><item><title><![CDATA[Chapter006-FPGA学习之LCD显示]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125882313</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125882313</guid><author>ASWaterbenben</author><pubDate>Tue, 19 Jul 2022 23:11:29 +0800</pubDate><description><![CDATA[作为嵌入式的核心输出手段之一，LCD屏幕在嵌入式领域内也有较高的地位，最基础的内容就是显示图片、字符、触摸控制，顺序学习就需要从底开始，首当其冲的就是LCD屏幕显示。]]></description><category></category></item><item><title><![CDATA[Chapter005-FPGA学习之串口回传]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125837440</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125837440</guid><author>ASWaterbenben</author><pubDate>Sun, 17 Jul 2022 22:37:42 +0800</pubDate><description><![CDATA[串口是嵌入式设备的重要数据传输手段，在基础串口的功能中，实现串口的波特率控制、停止位、校验、数据接收、数据发送即为串口的基础功能，为测试这些基础功能，最简单的实验就是数据回环测试，即将接收到的数据原样回发。...]]></description><category></category></item><item><title><![CDATA[Chapter004-FPGA学习之IP核相关功能【时钟、RAM、FIFO】]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125752234</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125752234</guid><author>ASWaterbenben</author><pubDate>Tue, 12 Jul 2022 23:28:18 +0800</pubDate><description><![CDATA[在之前STM32的学习中，认识到无论实现什么功能，有几个基础功能是必不可少的，缺失这些功能则无法将代码以我们想要的逻辑运行下去，STM32因为STM32CubeMX的存在，使得这些功能能够通过图形化配置，建立代码框架，但我们知道，FPGA是硬件电路代码化，其本身并没有已经固化好的功能，比如串口、IIC、SPI等，甚至连RAM和ROM都没有，但这也就是FPGA可以是任何东西的原因，其并未将功能固化到引脚上的同时，各个功能也没有了像STM32一样的引脚束缚。......]]></description><category></category></item><item><title><![CDATA[Chapter003-FPGA学习之PWM的LED呼吸灯]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125730351</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125730351</guid><author>ASWaterbenben</author><pubDate>Mon, 11 Jul 2022 21:52:30 +0800</pubDate><description><![CDATA[核心目标是在FPGA上实现PWM（脉冲宽度调制），同过改变不同PWM周期内的占空比从而改变等效电压，最终实现LED灯的呼吸效果。]]></description><category></category></item><item><title><![CDATA[Chapter002-FPGA学习之按键控制LED灯和蜂鸣器]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125649111</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125649111</guid><author>ASWaterbenben</author><pubDate>Wed, 06 Jul 2022 22:35:07 +0800</pubDate><description><![CDATA[本次设计目标是使用按键控制蜂鸣器和两个LED灯按键每按下一次，蜂鸣器由响变为不响，或由不响变为响；按键每按下一次，LED灯的状态变化一次，状态有（00-01-11-10）四种。]]></description><category></category></item><item><title><![CDATA[Chapter001-FPGA学习之Vivado的LED闪烁]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125630556</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125630556</guid><author>ASWaterbenben</author><pubDate>Tue, 05 Jul 2022 23:56:20 +0800</pubDate><description><![CDATA[LED闪烁在嵌入式开发设计中地位与“hello world”一致，作为嵌入式项目学习入门的必要实验，其目的是熟悉开发环境的使用、编码规范、关键词使用方法、寄存器概念、时钟概念、复位、仿真、下载程序等嵌入式开发流程的基础部分。所以该章节核心在于学习Vivado软件下FPGA的代码开发、仿真、程序下载这一系列流程。直接打开Vivado软件，在Quick Start选框内选择Create Project接下来会出现新项目建立的导航，在导航内可设置项目名称、项目类型、选择芯片型号；目标是建立一个名称为led_tog]]></description><category></category></item><item><title><![CDATA[FPGA学习准备]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125610219</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/125610219</guid><author>ASWaterbenben</author><pubDate>Mon, 04 Jul 2022 22:47:40 +0800</pubDate><description><![CDATA[接下来的一段时间，我会不断更新与FPGA学习有关的博客，以此记录我的学习过程，在基本问题学习基本结束后，我将以几个之前的实际的复杂ARM工程为目标，使用FPGA进行复现]]></description><category></category></item><item><title><![CDATA[GD32利用CubeMX构建代码的测试]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/121587854</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/121587854</guid><author>ASWaterbenben</author><pubDate>Sun, 28 Nov 2021 11:06:21 +0800</pubDate><description><![CDATA[前言
近期搞到一块GD32F103c8t6的开发板，号称是和STM32F103C8T6 Pin To Pin兼容的，查了一些资料，很多老哥也搞过类似的测试，多半结果是不兼容，具体哪里不兼容，哪些共功能不兼容，老哥们基本不说，所以我来把基础的功能测试一下，看哪些兼容哪些不兼容；
目标
本次测试功能：

GPIO的输入输出
串口发送接收

这几部分都是很基础很基础的功能，所以CubeMX的配置我就不发了，大概说明一下，IO输出是PC13，IO输入是PA0，串口TX是PA9，RX是PA10；
配置过程我将按键（输]]></description><category></category></item><item><title><![CDATA[STM32CubeMX通过FatFS读写U盘]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/121175127</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/121175127</guid><author>ASWaterbenben</author><pubDate>Sat, 06 Nov 2021 12:40:07 +0800</pubDate><description><![CDATA[最近出现了使用STM32读写U盘的需求，本着自己也出了好多良心博客的份上就像偷懒抄一篇优快云，但是鉴于某些博主这点小东西都要收费、还不公开源码，一气之下准备自己写一篇博客来谴责某些不良心的博主；（上述气话，接下来上干货）
大致思路
STM32读写U盘主要分为以下几个方面：
1、文件系统（抽象层，以统一方式对不同外设进行读写）
2、USB_Host（USB硬件驱动，维持USB的正常工作）
3、FreeRTOS（操作系统，鉴于各位可能右用到操作系统的需求加上，也可以裸机跑）
具体思想如下：(是不是很简单，就搞]]></description><category></category></item><item><title><![CDATA[SourceTree对代码版本管理的操作流程及故障处理(不定时更新)]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/119633110</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/119633110</guid><author>ASWaterbenben</author><pubDate>Thu, 12 Aug 2021 10:09:13 +0800</pubDate><description><![CDATA[基于Git的版本管理软件众多，这里仅针对我自己所使用的环境进行说明，本来代码使用命令行进行上传问题也不大，但是可视化效果较差，而且有工具不用的话有些对不起人这个称号，所以现在就针对我用的Git版本管理工具进行一定的说明。
1、SourceTree的安装
在安装SourceTree前，先把Git提前安装了，Git的安装教程网上一大堆，我就不赘述了，想偷懒的同学直接去某软件管家下载一键安装即可。
装软件最好是去官网下载，SourceTree的官网，因为在某软件管家上安装的版本非要Bitbucket的账号，且不能]]></description><category></category></item><item><title><![CDATA[针对嵌入式设备外接设备的驱动开发心得]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/119570813</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/119570813</guid><author>ASWaterbenben</author><pubDate>Tue, 10 Aug 2021 15:52:25 +0800</pubDate><description><![CDATA[工作半年，参与的项目里都存在需要外接的设备或是板上的芯片，这些东西都有一个共性，就是需要通过各种通信方式对设备进行控制或是从设备上获取数据，有官方现成驱动的使用官方现成驱动就好，一般问题不大，但是如果有官方驱动效果差或者是官方没有提供驱动的情况就需要自己动手丰衣足食了。
该博客仅针对外设官方驱动不满足项目需求或者是官方只给了电文及变量列表，也就是DataShell的情况给出我的一点点建议；
1、磨刀不误砍柴工
这些外设通常都是通过一些通信接口来与MCU通信，我主要见过的通信方式包括串口（TTL、RS232以]]></description><category></category></item><item><title><![CDATA[基于STM32CubeMX的片外SPIFLASH嵌入FATFS]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/117902091</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/117902091</guid><author>ASWaterbenben</author><pubDate>Mon, 14 Jun 2021 14:14:50 +0800</pubDate><description><![CDATA[最近有一个关于SPIFLASH嵌入FATFS的需求，自己也是第一次搞，在此做一个实验记录，方便后期查看，核心在于STM32CubeMX、SPI、片外Flash、FATFS文件系统]]></description><category></category></item><item><title><![CDATA[stm32板间串口通信escape协议]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/117323808</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/117323808</guid><author>ASWaterbenben</author><pubDate>Thu, 27 May 2021 11:33:09 +0800</pubDate><description><![CDATA[最近有使用串口的需求，用于两块板间的TTL串口通信，目前常见的串口通信协议可以归纳为两种模式

使用串口和一个定时器的通信协议【严格限制时间，常见协议为Modbus RTU】
使用单个串口的通信协议【存在数据头、数据尾，常见协议为三菱PLC使用的串口控制协议】

对于上述两种模式的优劣势我是如下理解的：

串口加定时器模式能够较好的限制通信时间，优势是在多设备通信过程中不会存在因某个通信包未发送完而导致通信系统瘫痪的问题；其劣势在于MCU板上资源紧张的情况下可能会无法抽出定时器给串口使用，串口通信效率为10]]></description><category></category></item><item><title><![CDATA[STM32CubeMX的CAN总线波特率设置]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/116171694</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/116171694</guid><author>ASWaterbenben</author><pubDate>Mon, 26 Apr 2021 20:43:59 +0800</pubDate><description><![CDATA[最近在搞CAN相关的问题，传输速率从125Kbps到1Mbps不等，由于使用STM32CubeMX作为代码生成平台，所以计算CAN波特率就需要自己动手算，但是算一次又记不住，索性就直接一次算好之后记下来！]]></description><category></category></item><item><title><![CDATA[STM32CubeMX的正交编码器encoder]]></title><link>https://blog.youkuaiyun.com/ASWaterbenben/article/details/115588689</link><guid>https://blog.youkuaiyun.com/ASWaterbenben/article/details/115588689</guid><author>ASWaterbenben</author><pubDate>Sun, 11 Apr 2021 11:13:53 +0800</pubDate><description><![CDATA[由于最近干活遇到需要获取正交编码的功能，所以返回来研究一下STM32CubeMX的编码器功能，之前也更新过STM32的定时器功能，但是因为之前搞平衡车的正交编码器没有搞清楚原理，就直接用了脉冲输入功能草草了事，现在也算是为之前的年轻买单了，不过看到现有的Encoder说明都比较简单，所以就当是为开发者做贡献了，我研究清楚之后来一篇博客。]]></description><category></category></item></channel></rss>