- 博客(32)
- 收藏
- 关注
原创 JavaScript数据结构与算法 — 集合
集合是由一组无序其唯一(即不能重复)的项组成。该数据结构使用了与有限集合相同的数学概念,但应用在计算机科学的数据结构中。
2022-09-21 22:33:56
519
原创 JavaScript数据结构与算法 — 双向链表
双向链表和普通链表的区别在于,在链表中,一个节点只有链向下一个节点的链接;而在双向链表中,链表是双向的:一个链向下一个元素,另一个链向前一个元素。记录学习,当个笔记。
2022-09-14 21:02:50
566
原创 JavaScript数据结构与算法 — 单向链表
链表存储的是有序的元素集合,但不同于数组,链表中的元素在内存中并不是连续放置的。每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(也称为指针或链接)组成。相对于传统的数组,链表的一个好处在于,添加或者移除元素的时候不需要移动其他元素。然而,链表需要使用指针,因此实现链表时需要额外注意。在数组中,我们可以直接访问任何位置的任何元素,而要向访问链表中间的一个元素,则需要从起点(表头)开始迭代链表直到找到所需的元素。(学习JavaScript数据结构与算法(第三版))记录学习,当个笔记。
2022-09-13 21:19:28
540
原创 JavaScript数据结构与算法 — 队列
队列是遵循先进先出(FIFO,也称为先来先服务)原则的一组有序的项。队列在尾部添加新的元素,并在顶部移除元素。最新添加的元素必须排在队列的末尾。(学习JavaScript数据结构与算法(第三版))
2022-09-12 22:11:14
510
原创 基于stm32f103c8的音频数据的Flash读取与DAC播放
一、FLASH的读写操作1、CubeMX工程具体建立的工程参照以前的博客,这里只提几个不同的地方定时器的配置引脚配置中断配置调节堆栈的大小,堆栈大小为4k或2k之后就可以导出2、Keil代码如下下载工程链接:https://pan.baidu.com/s/11Tn8TocHT8qithneDyKFIQ提取码:pmvn将事先准备好的flash.c 及flash.h加入到工程中在main.c文件中添加部分代码编译无误...
2021-12-30 15:28:26
720
2
原创 STM32F103 在 FatFs 模式下对 SD 卡的数据读取
一、SD卡1、SD卡物理结构一张SD卡包括有存储单元、存储单元接口、电源检测、卡及接口控制器和接口驱动器 5 个部分,见图 36-2。存储单元是存储数据部件,存储单元通过存储单元接口与卡控制单 元进行数据传输;电源检测单元保证SD卡工作在合适的电压下,如出现掉电或上状态时, 它会使控制单元和存储单元接口复位;卡及接口控制单元控制SD卡的运行状态,它包括有 8个寄存器;接口驱动器控制 SD卡引脚的输入输出。SD 卡总共有 8 个寄存器,用于设定或表示 SD 卡信息,参考表 36-1。这些寄..
2021-12-24 12:12:52
1047
原创 C程序在 Ubuntu 和 STM32 中内存分区
目录一、程序在内存中的分区二、全局变量和局部变量三、STM32 的内存分配1、STM32 中的内存分配详解2、STM32 中的内存结构三、Ubuntu 和 STM32 地址下输出验证实例1、Ubuntu 下的输出验证2、STM32 地址下的输出验证实例四、总结五、参考资料一、程序在内存中的分区1、栈区(stack)由编译器自动分配释放 ,存放函数的参数值,局部变量的值等,内存的分配是连续的,类似于平时我们所说的栈,如果还不清楚,那么就把...
2021-12-17 21:34:07
296
原创 安装 Altium Designer18和绘制 STM32+SD 卡的电路原理图
一、安装 Altium Designer 181、软件下载网盘提取文件解压缩 Altium_Designer_Beta_18.1.7.iso 文件可以看到,出现下面的很多文件点击光盘映像文件2、安装 AltiumDesigner18双击打开 AltiumDesigner18Setup.exe 文件,开始安装点击Next选择同意,点击Next点击Next选择安装目录,点击Next点击Next等待下载...
2021-12-17 19:16:39
1019
原创 CLion2021 的详细安装并基于 CLion 实现 stm32F103 点亮 LED
目录一、安装CLion20211、软件下载2、软件安装二、安装配置 arm-none-eabi-gcc三、安装配置 MinGW四、安装openocd五、配置CLion六、配置cubeMX七、配置 CLion 工程文件八、添加并编译代码九、烧录运行十、总结十一、参考资料一、安装CLion20211、软件下载官方网站:下载 CLion:适用于 C 和 C++ 的智能跨平台 IDE点击下载即可。(可以免费使用 30 天的教育版,...
2021-12-15 22:43:23
545
原创 使用 keil 仿真调试和 SaleaeLogic16 逻辑仪观察信号的波形
目录一、使用 Keil 的仿真示波器逻辑分析引脚变化1、配置2、观测调试3、结果分析二、使用真实逻辑仪 SaleaeLogic16 观测波形1、SaleaeLogic16 软件下载和安装2、波形分析三、总结四、参考资料一、使用 Keil 的仿真示波器逻辑分析引脚变化1、配置注:我们用到是上一篇中的工程STM32F103C8T6 基于 HAL 库移植 uC/OS-III 系统_qq_47538417的博客-优快云博客在 MDK-ARM 文..
2021-12-04 15:24:00
375
原创 STM32F103C8T6 基于 HAL 库移植 uC/OS-III 系统
目录一、使用 CubeMX 建立 STM32F103 HAL 库工程二、准备 uC/OS-III 源码三、准备项目文件四、HAL 库工程移植文件1、为 HAL 工程配置 uCOS 相关文件2、将 uCOS 相关文件添加到项目3、添加修改代码【初级】(实现简单的 LED 的亮灭控制及通过串口发送数据)4、配置参数五、运行结果六、实现三个任务运行1、目标2、修改添加代码3、运行结果七、总结八、参考资料一、使用 CubeMX 建立...
2021-12-04 13:40:09
723
原创 基于 SPI 协议用 0.96 寸 OLED 显示汉字及温湿度数据
一、SPI协议1、简介SPI协议是由摩托罗拉公司提出的通讯协议(SerialPeripheralInterface),即串行外围设备接口,是 一种高速全双工的通信总线。它被广泛地使用在 ADC、LCD 等设备与 MCU 间,要求通讯速率 较高的场合。2、SPI物理层SPI通讯使用3条总线及片选线,3条总线分别为SCK、MOSI、MISO,片选线为SS,它们的作 用介绍如下:(1) SS*(*SlaveSelect):从设备选择信号线,常称为片选信号线,也称为NSS、CS,以下用..
2021-11-26 17:24:55
6046
原创 STM32F103完成基于I2C协议的AHT20温湿度传感器的数据采集
一、了解I2C 协议1、I2C 协议简介I2C 通讯协议 (Inter - Integrated Circuit) 是由 Phiilps 公司开发的,由于它引脚少,硬件实现简单, 可扩展性强,不需要 USART、CAN 等通讯协议的外部收发设备,现在被广泛地使用在系统内多 个集成电路 (IC) 间的通讯。2、I2C 物理层(1) 它是一个支持设备的总线。“总线”指多个设备共用的信号线。在一个 I2C 通讯总线中,可 连接多个 I2C 通讯设备,支持多个通讯主机及多个通讯从机。 ..
2021-11-23 23:12:46
177
原创 电脑之间利用串口传文件
一、实验目的串口传输文件的练习。将两台笔记本电脑,借助 usb转rs232 模块和杜邦线,建立起串口连接。然后用串口助手等工具软件(带文件传输功能)将一台笔记本上的一个大文件(图片、视频和压缩包软件)传输到另外一台电脑,预算文件大小、波特率和传输时间三者之间的关系,并对比实际传输时间。二、实验器材两台笔记本电脑、两个usb转ttl模块、母对母杜邦线数根三、实验过程实验中usb转ttl模块连线如下RXD——TXDTXD——RXD然后连接到两台电脑的usb口上进行串口通信时需
2021-11-18 19:22:37
3072
原创 在Ubuntu上利用Opencv实现图片上打印汉字
一、汉字点阵字库原理1、区位码整个GB2312字符集分成94个区,每区有94个位,每个区位上只有一个字符,即每区含有94个汉字或符号,用所在的区和位来对字符进行编码(实际上就是字符编号、码点编号),因此称为区位码(或许叫“区位号”更为恰当)。换言之,GB2312将包括汉字在内的所有字符编入一个94 * 94的二维表,行就是“区”、列就是“位”,每个字符由区、位唯一定位,其对应的区、位编号合并就是区位码。比如“万”字在45区82位,所以“万”字的区位码是:45 82(注意,GB类汉字编码为双字节
2021-11-17 23:15:50
315
原创 用HAL库和中断方式控制LED灯、串口通信以及用DMA向上位机发送信息
用stm32CubeMX完成LED点亮和STM32的USART串口通讯并通过逻辑分析仪分析以上波形_qq_47538417的博客-优快云博客
2021-11-05 20:53:18
840
原创 用stm32CubeMX完成LED点亮和STM32的USART串口通讯并通过逻辑分析仪分析以上波形
一、stm32CubeMX完成LED点亮(一)、用stm32CubeMX配置一个模板首先进入双击进入程序,然后NEW Project下选择ACCESS TO MCU SELECTCR进入如下界面后在Pat Number中输入你要的芯片型号,我选择的是stm32F103C8T6选中你要的芯片的封装类型,然后点击Start Project进入如下界面后,在system core中点击sys在Debug选项中选择如下选项然后选择clock configuration界...
2021-10-25 09:06:32
1359
原创 以 STM32F103C8T6实现LED灯闪烁
一、GPIOx端口的各寄存器地址和详细参数(一)、GPIO的简介每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH),两个32位数据寄存器 (GPIOx_IDR,GPIOx_ODR),一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存 器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。(二)、GPIO寄存器描述注:以下来自STM32F103C8T6的中文手册端口配置低寄存器(GPIOx_CRL) (x=A..E..
2021-10-23 17:36:49
3228
原创 STM32的C与汇编语言混合编程
新建一个工程文件文件命名为Func,并保存我选择STM32F103C8 芯片勾选如下选择输入如下代码#include<stdio.h>extern void Init_1(void);int main(){ Init_1(); return 0;}...
2021-10-09 20:45:14
292
原创 OpenCV3.4.15的使用示例
目录一、图片示例(一)编写代码(二)编译文件二、视频示例(一)虚拟机获取摄像头权限(二)播放视频(三)视频录制三、总结四、参考资料一、图片示例(一)编写代码首先创建一个文件夹 code1 ,然后进入文件夹中并进入终端模式。创建一个 test1.cpp 文件。gedit test1.cpp将下面的代码复制粘贴进去。#include <opencv2/highgui.hpp>#include <opencv2...
2021-10-07 20:45:41
486
原创 对CGG的初识
目录一、初识GCC 编译器二、Binutils三、C运行库四、运行实例(一)准备工作先创建一个工作目录 test0,然后用文本编辑器生成一个 C 语言编写的简单 Hello.c 程序。(二)编译过程1.预处理2、编译3、汇编4、链接5、检错三、分析ELF文件1.ELF 文件的段2、 反汇编 ELF五、总结一、初识GCC 编译器GCC(GNU C Compiler)是编译工具,经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现
2021-10-07 11:50:01
1102
原创 gcc生成静态库.a和动态库.so
目录一、用gcc生成静态库和动态库(一)hello实例1.准备过程2. 静态库使用3.动态库的使用4.静态库与动态库比较(二)实例1使用库1.准备过程2. 静态库使用(二)实例1使用库1.准备过程2. 静态库使用3.静态库与动态库的生成文件的比较二、总结三、参考资料一、用gcc生成静态库和动态库(一)hello实例1.准备过程首先创建一个目录,然后用打开终端,在终端中用gedit创建hello.h...
2021-10-07 00:36:01
108
原创 Keil环境下创建STM32汇编语言工程并分析HEX文件内容
一、在Keil环境下创建新项目(一)新建工程点击Project中的New uVision Project创建新项目命名文件名text4并保存选择芯片,我选择的是STM32F103C8CMSIS下选择CORE;Device下Startup(其中包含了启动文件),选完后点击OK(二)添加源文件右击Source Group 1,点击Add New Item to Group 'Source Group 1'...选择文件类型,这里我们点击Asm...
2021-09-28 14:15:34
626
原创 VMware上Ubuntu系统利用Gcc、MakeFile编译c语言
目录一.使用gcc编译c程序(一)编写main1.c(二)编写sub1.h(三)编写sub1.c(四)用gcc编译二.windows环境下用Dev C++编写程序三.使用Makefile编译c程序四.总结五.参考资料一.使用gcc编译c程序(一)编写main1.c#include"sub1.h"int main(){int x=4,y=9;printf("%.2f\n",x2x(x,y));return 0;}(二)编写sub..
2021-09-14 13:57:25
840
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人