关闭
当前搜索:

STM32之USB(Host)驱动+Fatfs移植(标准外设库版)

写在前面 现在,网上关于STM32的USB的文章数不胜数。写这篇文章仅仅是对于自我学习的一个记录。主要是对实际学习中遇到的一些棘手问题做个备忘录。使用的芯片为STM32F407VG 。 目前,ST的USB驱动有两套,一套是早期的针对标准外设库的驱动,最新版为2.2.0;一套为针对其Cube系列的驱动,根据芯片不同可能有区别,具体见对应芯片的Cube驱动包 。 本文使用的为针对标准外设库的USB...
阅读(81) 评论(0)

STM32之USB驱动说明(标准外设库版)

写在前面 现在,网上关于STM32的USB的文章数不胜数。写这篇文章仅仅是对于自我学习的一个记录。主要是对实际学习中遇到的一些棘手问题做个备忘录。作者使用的芯片为STM32F407VG 。 目前,ST的USB驱动有两套,一套是早期的针对标准外设库的驱动,最新版为2.2.0;一套为针对其Cube系列的驱动,根据芯片不同可能有区别,具体见对应芯片的Cube驱动包 。 本文使用的为针对标准外设库的USB驱...
阅读(92) 评论(0)

FreeRTOS 低功耗之 tickless 模式

文章原地址:http://www.cnblogs.com/yangguang-it/p/7232448.html 再次基础上,添加了有些东西! tickless 低功耗模式介绍   tickless 低功耗机制是当前小型 RTOS 所采用的通用低功耗方法,比如 embOS,RTX 和 uCOS-III (类似方法)都有这种机制。FreeRTOS 的低功耗也是采用的这种方式。   那么...
阅读(683) 评论(0)

Qt之Qt/Qt Lite 自编译详解(VS/MinGW/...)

欢迎使用Markdown编辑器写博客 本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I...
阅读(621) 评论(0)

C/C++学习之路之C++ String

Tips:  1. 本人当初学习C/C++的记录。  2. 资源很多都是来自网上的,如有版权请及时告知!  3. 可能会有些错误。如果看到,希望能指出,以此共勉! 要想使用标准C++中string类,必须要#include // 注意是,不是,带.h的是C语言中的头文件 using std::string;或using nam...
阅读(326) 评论(0)

C/C++学习之路之标准输入输出

Tips:  1. 本人当初学习C/C++的记录。  2. 资源很多都是来自网上的,如有版权请及时告知!  3. 可能会有些错误。如果看到,希望能指出,以此共勉! 文件  在此之前,有必要先了解一下文件是什么东西!所谓“文件”是指一组相关数据的有序集合。这个数据集有一个名称,叫做文件名。例如源程序文件、目标文件、可执行文件、库文件等。文件通常是驻留在外部介质(如磁盘等)上的,在使...
阅读(588) 评论(0)

C/C++学习之路之函数

说到函数,第一个要说的就是main函数,他是C/C++标准规定的!main的形式如下:/* 形式一*/ int main(int argc, char *argv[]) { statements; return 0; } /* 形式二*/ int main(void) { statements; return 0; } /* 形式三*/ void main() {...
阅读(358) 评论(0)

C/C++学习之路之常用关键字

注意: 1. 以下所谓的可见并不是指编程者可以直接使用,这里的可见是对编译器/连接器来说的,它们在编译链接时能够发现其他文件中的变量。如果编程者要使用,还是必须显示声明。 2. C++标准使用翻译单元表示编译的单位,下面以文件为编译单元来说的。 变量的存储方式及作用域  C及C++中变量的存储方式有三种:自动、静态、动态。 在C++11中,额外增加了一种:线程存储方式(关键字thre...
阅读(379) 评论(0)

C/C++学习之路之数据类型

C数据类型 ANSI C99标准中规定的数据类型如下图所示。 说明: 同一行类型的语义相同,即可以相互替代。 long float类型与double相同,故在C99标准中没有此类型。 部分编译器也提供了unsigned float和unsigned double,最好不要使用,以免影响程序的可移植性。 int默认是signed,所以int, signed, signed int三者等价。其...
阅读(581) 评论(0)

C/C++学习之路之C及C++发展史及标准

C和C++  C++是C语言的一个超集。C++有一个众所周知的特性:对C语言的高度兼容。这样的兼容性不仅体现在程序员可以较为容易地将C代码“升级”为C++代码上,也体现在C代码可以被C++的编译器所编译上。   C++的第一个标准是1998年制定的C++98,而C的第二个官方标准是1999年制定C99,C99制定时,借鉴了很多C++98中的特性,2011年,新C++标准,C++11发布,增添了新特...
阅读(305) 评论(0)

PC-lint使用说明

PC-lint是什么  PC-Lint是一款C/C++软件代码静态分析工具,不仅可以检查一般的语法错误,还可以检查潜在的错误,比如数组访问越界、内存泄漏、使用未初始化变量、使用空指针等。在单元测试前使用PC-Lint来检查代码,可以提前发现程序中的潜在的错误,提高代码的质量。   C/C++的静态检查工具主要有PC-lint、Coverity、Fortify等,后面两种都偏重量级,Coverity...
阅读(850) 评论(0)

VSCode之C/C++调试配置详解

准备  默认情况下,VSCode仅仅内置了对node.js运行时的调试支持,只可以直接调试JavaScript、TypeScript和任何其他翻译为JavaScript的语言。其他语言的调试支持,都是以插件的形式提供支持。为了能够调试C/C++,必须首先安装插件:ms-vscode.cpptools。直接在VSCode的插件库中安装即可。   C/C++插件是负责与VSCode的调试规约打交道的,...
阅读(13592) 评论(1)

FreeRTOS之事件标志组及实现FreeRTOS看门狗

事件标志组是实现多任务同步的有效机制之一。任务间事件标志组的实现是指各个任务之间使用事件标志组实现任务的通信或者同步机制。FreeRTOS在event_groups.c/h文件中提供了事件标志组的具体实现。   根据具体平台的不同,FreeRTOS根据 configUSE_16_BIT_TICKS定义的不同,事件组支持的数量有些区别,具体如下:#define configUSE_16_BIT...
阅读(1701) 评论(0)

STM32之HAL库详解 及 手动移植

HAL库结构  说到STM32的HAL库,就不得不提STM32CubeMX,其作为一个可视化的配置工具,对于开发者来说,确实大大节省了开发时间。STM32CubeMX就是以HAL库为基础的,且目前仅支持HAL库!首先看一下,官方给出的HAL库的包含结构: stm32f2xx.h主要包含STM32同系列芯片的不同具体型号的定义,是否使用HAL库等的定义,接着,其会根据定义的芯片信号包含具体的芯片型号的...
阅读(15221) 评论(2)

FreeRTOS之源码 及 移植 解析

写在前面 2018/1/15更新了文章中的部分错误。 FreeRTOS源码为最新版的10.0.1。FreeRTOS 10包含两个重要的新功能:流缓冲区和消息缓冲区。 从10.0.0开始,FreeRTOS的开源协议改为了MIT。 源码目录   首先,从官网下载最新版的源码,目前最新版为10.0.1。下载后,解压得到源码,FreeRTOS的源码包中的内容还是相当丰富的。简略目录如下:...
阅读(1986) 评论(1)
20条 共2页1 2 下一页 尾页