- 博客(21)
- 收藏
- 关注

原创 STM32利用FATFS文件系统给SD卡读写数据
利用FATFS文件系统如何给SD卡写入数据1. 操作步骤第一步:给SD卡注册工作区FATFS fs; //SD 卡逻辑驱动器的工作区f_mount(&fs,“0:”,1); //为SD卡逻辑驱动器注册工作区第二步:创建文件夹f_mkdir(“0:\shiyan”);//创建 (shiyan) 文件夹第三步:创建文件FIL File;f_open(&File, “0:\Shiyan\tianqi.dat”, FA_OPEN_ALWAYS | FA_WRITE);//在
2021-03-27 14:57:09
15409
1
原创 C/C++语言曲线的拟合的最小二乘方法
应用计算方法C语言程序:03接 应用计算方法C语言程序:02编写C语言曲线的拟合的最小二乘方法,以计算方法课本例题8-3为例。1、获取矩阵A和b#define POW_N 3double A[POW_N][POW_N] = { 0 };double b[POW_N] = { 0 };double data1[12] = { 256,201,159,61,77,40,17,25,103,156,222,345 };void coefficient_matrix(double *data, i
2022-05-14 22:02:45
2228
4
原创 C/C++ 语言实现使用LU分解求解线性方程组
应用计算方法C语言程序:02接 应用计算方法C语言程序:01以计算方法课本例题4-6为例。设矩阵A,b分别为:A[3][3] = { {1,3,3},{2,1,1},{2,3,4} }; b[3] = { 1,2,1 };利用C语言程序求解方程组如下:(其中LU分解程序见应用计算方法C语言程序:01)程序中矩阵求逆部分程序使用了博友(重中之重小星星)的程序(感谢博主的分享):原文链接void Matrix_inverse(double arc[3][3], int n, double
2022-05-14 21:48:04
2814
2
原创 C/C++ 语言实现矩阵LU分解
LU分解又叫做Doolittle分解。Ax=b,A为方阵时,对矩阵A的LU分解矩阵L、U公式如下图:对矩阵A的LU分解C代码如下:#include <iostream>#include "math.h"using namespace std;double L[3][3] = { 0 }, U[3][3] = { 0 };void Doolittle(double a[3][3]){ for (int i = 0; i < 3; i++) { //更新L矩阵
2022-05-14 20:30:45
3945
原创 C\C++各种变量存放区域(全局变量、局部变量区分)
学习笔记:1内存分区模型C++程序在执行时,将内存大方向划分为4个区域·代码区:存放函数体的二进制代码,由操作系统进行管理的·全局区:存放全局变量和静态变量以及常量·栈区:由编译器自动分配释放,存放函数的参数值,局部变量等·堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义;不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程1.1程序运行前在程序编译后,生成了exe可执行程序,未执行该程序前分为两个区域代码区:存放CPU执行的机器指令代码区是共
2021-12-28 22:00:38
3739
原创 break和continue语句的使用
break语句的作用:用于跳出选择结构成循环结构break使用的时机:1 出现在switch条件语句中,作用是终止case并跳出switchint i=3;switch(i){case 1:function1();break;//终止case,跳出switchcase 2:function2();break;case 3:function3();break;case 4:function4();break;default:break;}2 出现在循环语句中,作用是跳出当前的循环语句
2021-12-10 21:53:07
1524
原创 C语言回调函数详解及实例
回调函数:函数 F1 调用函数 F2 的时候,函数 F1 通过参数给函数 F2 传递了另外一个函数 F3 的指针,在函数 F2 执行的过程中,函数F2 调用了函数 F3,这个动作就叫做回调(Callback),而先被当做指针传入、后面又被回调的函数 F3 就是回调函数。............
2021-12-06 20:45:39
6920
7
原创 字符型(char)数组分配内存时占用多少个字节
1.直接定义的字符串会占用2.结构体中字符型(char)数组在分配内存时会多分配3个字节示例及运行结果如下#include <stdio.h>#include <stdlib.h>struct student{ long no; char sex; char name[20]; int age; float score; struct student *next;};struct student11{ long no; char sex; char
2021-09-09 17:44:11
22329
原创 C语言创建动态数组
C语言创建动态数组1.编写步骤1. 添加所需头文件stdlib.h2. 创建对应类型指针int *arry;3. 使用void* malloc (size_t size)函数分配数组地址空间注: 地址空间大小,以字节为单位int size=5;arry=(int )malloc(sizesizeof(int));//创建5个int类型的数据空间并返回空间首地址,地址大小为5*4=20字节4. 使用void free (void* ptr)函数释放动态地址空间free(arry);使
2021-09-02 19:35:35
12263
1
原创 控制数据自增上限方式
将数据从1自增到100的上限限定有两种方法:条件判断法int t=0;while(1){ t++; delay_ms(10); if(t>100) t = 0;}数值计算法int t=0;while(1){ t++; delay_ms(10); t=t % 100;}
2021-08-30 21:09:31
176
原创 STM32中断与事件的区别
STM32中断与事件的区别 EXTI_InitStruct.EXTI_Line=EXTI_Line0; EXTI_InitStruct.EXTI_LineCmd=ENABLE; EXTI_InitStruct.EXTI_Mode=EXTI_Mode_Interrupt;//事件控制器模式为中断 EXTI_InitStruct.EXTI_Trigger=EXTI_Trigger_Rising;//触发方式为上升沿触发 EXTI_Init(&EXTI_InitStruct);上面代码是为了
2021-05-28 00:30:27
1618
原创 C语言中volatile关键字的作用
C语言中volatile关键字的作用一.背景编译器优化介绍: 由于内存访问速度远不及CPU处理速度,为提高机器整体性能,会进行两种优化。 在硬件级优化: 引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。 软件级优化: 一种是在编写代码时由程序员优化,另一种是由编译器进行优化。 编译器优化常用的方法有:将内存变量缓存到寄存器;调整指令顺序充分利用CPU指令流水线,常见
2021-05-25 10:09:59
1530
原创 WPS三线表的绘制方法
WPS三线表的绘制方法第一步:首先绘制好自己的表格;第二步:选中整个表格并将鼠标置于阴影处点击鼠标右键;第三步:点击边框和底纹(或点击表格属性再点击其下面的边框和底纹),弹出边框和底纹对话框;第四步:点击上图红圈圈出的地方,让竖线及中间线消失,如下图,接着点击“宽度”,改为1.5磅,然后点击红圈圈出的地方(顶线和底线),线会变粗,最后点击确定,经过第四步操作后表会变为如下图所示;第五步:选中表格第一行,并将鼠标置于阴影处点击鼠标右键,然后点击边框和底纹;第七步:弹出如下边框和底
2021-04-22 22:22:23
16335
1
原创 学习通信协议376.1和 modbus时发现一个好用的帧校验和工具
在学习376.1和 modbus协议时发现了一个很好用的在线帧校验和计算工具。在此记录一下网址:https://www.23bei.com/tool-59.html.
2021-04-01 00:05:54
1110
原创 TIM_GetCounter(TIMx)与TIM_GetCapture2(TIMx)的比较与TIM_GetCapture2(TIMx)对标志位TIM_IT_CCx的影响
TIM_GetCounter(TIMx)与TIM_GetCapture2(TIMx)的比较与TIM_GetCapture2(TIMx)对标志位TIM_IT_CCx的影响1.TIM_GetCounter(TIMx) 读取TIMx寄存器CNT中的计数值/** * @brief Gets the TIMx Counter value. * @param TIMx: where x can be 1 to 17 to select the TIM peripheral. * @retval C
2021-03-16 11:17:02
15480
原创 KEIL仿真波形时,不实时显示波形
KEIL仿真波形时,不实时显示波形用KEIL仿真,引脚输出波形时,不能实时显示波形解决办法。仿真波形时,进行如下操作:第一步:点击View第二步:点击Periodic Window Update (下图中红色区域)
2021-01-10 09:21:03
1957
1
原创 下载Python安装包及支持包路径
下载Python安装包及支持包路径下载Python安装包路径:链接: https://www.python.org/downloads/2.链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/进入该网页后使用ctrl+F 直接寻找自己所需的支持包即可。
2020-12-06 00:35:16
438
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人