关于HAL库发送16bit数据

说明

该文档是作为记录STM32国内帖子关于HALSPI问题解决无法有效回答的补充,网上的回答大部分都是直说怎么发的,但是没说原理是什么

问题记录

  • 在使用HAL库时,HAL提供的发送函数时,提供的接口发送数据为uint8_t *类型的数据的,所以发送16bit数据时主观上感觉无法发送16位的数据,并且HAL库并没有在函数原型上说明如何发送16bit数据

spi发送函数原型定义

spi发送函数原型定义

C语言二级指针用法之模拟句柄用途

先导

因为在学习中使用到了二级指针进行操作,故而作此总结

提前了解

句柄

  • 以下词条来自百度百科

句柄(Handle)是一个是用来标识对象或者项目的标识符,可以用来描述窗体、文件等,值得注意的是句柄不能是常量 。 Windows之所以要设立句柄,根本上源于内存管理机制的问题,即虚拟地址。简而言之数据的地址需要变动,变动以后就需要有人来记录、管理变动,因此系统用句柄来记载数据地址的变更。在程序设计中,句柄是一种特殊的智能指针,当一个应用程序要引用其他系统(如数据库、操作系统)所管理的内存块或对象时,就要使用句柄 。

二级指针

指针是C语言中最高深莫测的部分了,能够直接操作内存的这些指针如果使用得当的话可以完成很多很高效的代 …

Qt CMake GUI项目生成脚本

自动初始化Linux下Qt通用开发的CMake GUI工程的脚本

  • 这个脚本的来由是在我使用了CMake作为Qt工程的编译工具之后,为了使得即使在没有qtcreator的情况下也能快速地建立CMake Qt GUI工程从而使用其他的文本编辑器如VSCode或者Atom进行开发,而开发的工程建立脚本。
  • 本项目已经发布至我的github

Makfile文件的编写

Makfile文件的编写

  • 不定期更新

make和Makefile

  • 以下来自百度百科

make:

make是一条计算机指令,是在安装有GNU Make的计算机上的可执行指令。该指令是读入一个名为makefile 的文件,然后执行这个文件中指定的指令。有时make又指GNU MakeGNU Make 是一个用来控制可执行文件和其他一些从源文件来的非源代码文件版本的软件。

Makefile:

一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一 …

CMake编写总结

CMake编写总结

  • 不定期更新

CMake介绍

  • 以下来自百度百科

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CMakeLists.txt。CMake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软 …