自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hpf247的博客

努力的意义,不是让你取得多大的成就,而是让你在平凡的日子里活的比原来的那个自己更优秀。

  • 博客(92)
  • 资源 (19)
  • 收藏
  • 关注

原创 内网穿透(NAT穿透)之ngrok搭建服务器

ngrok是一个域名映射器,可以帮我们将自己的网页或者自己所能访问到的内网映射到公网上,实现外网对我们的网站(内网)的访问。而且ngrok与其服务器都是开源的,我们可以免费使用。下面我说一下对于ngrok实现内网穿透的步骤: 1、打开网站 https://ngrok.com/ ,在里面下载自己对应的版本号即可 直接点击确定,通过 然后点击下载,我下载的是Windows 64位的。 将它解压到

2017-02-19 22:53:56 11705

原创 vscode-server的搭建方法

auth password 指定访问密码,可通过 export 命令设置,参数为 none 时不启用密码访问。– host 0.0.0.0 允许公网访问,默认是127.0.0.1,只能本地访问。– port 8888 指定端口,默认是8080。

2024-03-14 18:59:03 725

原创 Ubuntu下进行openecd+gdb调试代码

1、将编译好的bin文件烧录进GD32芯片里面st-flash write MC200_I2C.bin 0x8000000st-flash reset // 复位2、进入工程根目录(目录中必须有stlink-v2-1.cfg和stm32f1x.cfg文件),使用openocd通过stlink连接芯片openocd -f stlink-v2-1.cfg -f stm32f1x.cfg3、打开新终端,准备开始进行gdb调试arm-none-eabi-gdb ./GD32F103.elf4、

2022-01-25 14:38:01 864

原创 Ubuntu下安装stlink-v2驱动

Ubuntu下安装stlink-v2驱动1、安装依赖库sudo apt-get install git make cmake libusb-1.0-0-devsudo apt-get install gcc build-essential2、安装stlink驱动git clone https://github.com/stlink-org/stlinkcd stlinkcmakemake3、将安装的依赖文件复制到对应文件夹cd binsudo cp st-* /usr/local/

2022-01-25 11:39:27 3309 2

原创 Ubuntu下安装openocd,使用vscode下的cortex-debug调试代码

一、安装openocd1、从github上下载最新版本:git clone https://github.com/openocd-org/openocd.git也可从官网https://openocd.org/下载2、安装相关调试所需要的库:sudo apt install build-essential pkg-config autoconf automake libtool libusb-dev libusb-1.0-0-dev libhidapi-dev libtool libsysfs-

2022-01-25 11:16:58 3447 2

原创 GD32实现将在Ubuntu下使用GCC编译链编译工程

基于GD32F103RCTX系列芯片修改,需要修改地方:1、编译链2、GCC启动文件3、Makefile文件4、链接脚本一、编译链下载安装在https://blog.csdn.net/hpf247/article/details/104027898有介绍怎么下载安装二、GCC启动文件官网没有GCC的启动文件,可以网上下载后修改一下:startup_gd32f10x_hd.S .syntax unified .cpu cortex-m3 .fpu softvfp .thu

2022-01-24 15:49:53 3552 9

原创 Keil中配置GCC编译器开发STM32

一、下载编译链:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads在此我下载的是:gcc-arm-none-eabi-10.3-2021.10-win32.zip二、安装GCC编译链直接解压到D盘:三、配置Keil工程选项:1、选择使用GCC进行编译2、配置编译选项1)配置CC的编译规则2)Assembler规

2022-01-24 11:35:24 2874

原创 C# Chart简单图形波形绘制

此次用C#绘制波形使用的是Chart控件1、 将Chart控件拖进主界面,然后设置属性。// // chart1// chartArea2.Name = "ChartArea1";this.chart1.ChartAreas.Add(chartArea2);legend2.Name = "Legend1";this.chart1.Legends.Add(legend2);this.chart1.Location = new System.Drawing.Point(36, 6);this

2021-12-24 15:21:27 3804 2

原创 DAC-DMA-TIMER总结(实现5阶正弦波)

一、实现原理:先将一个可以生成正弦波的数据表(table)保存在一片固定地址的内存中,然后在DAC以及这块内存中间使用DMA建立一个专属通道,使用定时器的TRGO触发模式触发DAC,DAC模块就可以定时地通过DAM通道拿取这片内存中的正弦波的数据,然后经过DAC数模转换,输出到引脚就可以得到一定频率、幅值的正弦波(波形)了。二、实现方法(基于GD32):1、定义正弦波数组const unsigned short int sine_data[200] ={ 2048,2308,2..

2021-12-22 21:13:49 1534

原创 Angular提交规范

在git提交中应该有Header、Body、Footer,其中,Header是必要的,Body和Footer是选择性写的。1、Header的格式指定为提交类型(type)、作用域(scope,可选)和主题(subject)① build:对构建系统或者外部依赖项进行了修改② ci:对CI配置文件或脚本进行了修改③ docs:对文档进行了修改④ feat:增加新的特征⑤ fix:修复bug⑥ pref:提高性能的代码更改⑦ refactor:既不是修复bug也不是添加特征的代码重构⑧ sty

2021-09-01 19:32:31 2160

原创 git命令使用总结

git命令使用一、 代码仓库1)创建仓库1、进入需要创建代码库的文件夹 cd文件夹路径2、创建/初始化仓库 git init3、拉去远程仓库到本地 git clone2)添加文件到仓库1、添加文件到暂存区 git add 文件名(添加单个文件)/git add .(添加所有文件)/.gitignore文件中指定的文件会被忽略2、提交到本地仓库 git commit -m “commit message”(或遵循commit message规范)3、查看工作区状态 git status4、

2021-07-21 20:31:29 143

原创 jdk环境配置

一、jdk是在官网下的:(16.0.1)https://www.oracle.com/java/technologies/javase-jdk16-downloads.html下载后进行安装;二、环境变量的配置1、 右键我的电脑属性,在弹出的页面上点击高级系统设置高级环境变量, 在弹出的“环境变量”窗口中,点击新建按钮,新建一个名为JAVA_HOME的环境变量,变量值为Java的安装路径,例如:D:\ Java\jdk_9.0.12、 添加Path环境变量,该变量在环境变量中已经存在,

2021-07-19 18:27:47 1255

原创 编写批处理脚本使用JLink.exe / ST-LINK_CLI.exe烧写STM32F103RC系列芯片

一、使用JLink.exe烧写STM32F103RC系列芯片说明:使用的是SWD模式进行附件烧写,需要用到的文件如下:1、 DownloadFlash.bat文件内容如下:@echo off:startecho 开始烧写固件jlink.exe Jlink_Config.txtgoto :start2、 Jlink_Config.txt文件内容如下:usb 0si 1hspeed 4000device STM32F103RCloadbin Release.bin 0x08000

2021-07-16 16:10:39 4252 3

原创 不带DDR的ZYNQ使用OCM加载程序运行的方法

软件版本:Vivado Vitis2019.2第一步: 在Vivado的ZYNQ Block Design时候不配置DDR第二步: 在Vitis中:1、 在Vitis中新建Platform,选择xsa文件:2、 在xparameters.h中添加DDR的地址空间定义,如下:3、 修改链接文件,修改每个段都到ram_0,因为ram_1空间全部给到应用程序4、 修改fsbl工程的main.c,增加XPAR_PS7_DDR_0条件编译5、 修改fsbl.h,重定义DDR_EN

2020-12-02 21:39:20 3324

原创 Vitis2019.2添加ARM核(ps7_cortexa9_1)

1、 打开platform.spr,然后右击ps7_cortexa9_0,点击Add Domain2、 选择ps7_cortex_a9_1

2020-12-01 15:25:42 738

原创 FreeRTOS使用总结

1、任务创建和删除:xTaskCreate() 使用动态的方法创建一个任务xTaskCreateStatic() 使用静态的方法创建一个任务xTaskCreateRestricted() 创建一个使用 MPU 进行限制的任务,相关内存使用动态内存分配vTaskDelete() 删除一个任务1.1 函数 xTaskCreate()BaseType_t xTaskCreate(TaskFunction_t pxTaskCode,const char * const pcName,const ui

2020-09-07 20:50:33 521

原创 UCOSIII使用总结(三)

1、任务创建: OSTaskCreate() 函数void OSTaskCreate (OS_TCB *p_tcb,CPU_CHAR *p_name,OS_TASK_PTR p_task,void *p_arg,OS_PRIO prio,CPU_STK *p_stk_base,CPU_STK_SIZE stk_limit,CPU_STK_SIZE stk_size,OS_MSG_QTY q_size,OS_TICK time_quanta,void *p_ext,OS_OPT opt

2020-09-07 20:02:06 1387 1

原创 UCOSIII使用总结(二)

1、 修改os_cfg_app.h文件里面的宏定义#define OS_CFG_TMR_TASK_RATE_HZ 可以修改UCOSIII内部软件定时器的时间分辨率。(比如100u就是10ms,1000u就是1ms)注意:OS_CFG_TMR_TASK_RATE_HZ的值不能大于 OS_CFG_TICK_RATE_HZ(设置时钟节拍频率)的定义。2、 修改os_cfg.h文件里面的#define OS_CFG_SCHED_ROUND_ROBIN_EN 的值(0/1)能够使能时间片轮转调度功能,时间片长

2020-09-02 15:14:40 394

原创 SD系统启动卡恢复为普通SD卡的方法

SD系统启动卡恢复为普通SD卡的方法是:在Linux系统下使用硬盘操作命令fdisk删除多个SD卡分区后新增一个分区,再将新增分区格式化为普通SD卡分区。1、 卸载SD卡分区:umount /media/hpf/bootumount /media/hpf/rootfs 2、 使用硬盘操作命令fdisk:sudo fdisk /dev/sdb (使用ls /dev/sd,然后按Tab键,可以知道目前的sd卡是哪一个以及有多少个分区)3、 删除SD卡分区1:输入d输入14、 删除SD卡分区2

2020-08-21 16:48:31 919

原创 Xilinx SDK无法使用math.h的解决办法

在使用Xilinx SDK时,发现无法使用math.h中的一些函数,比如pow(),sqrt()等;原因在于使用math.h中声明的库函数还有一点特殊之处,就是gcc命令行必须加-lm选项,因为数学函数位于libm.so库文件中(这些库文件通常位于/lib目录下),-lm选项会告诉编译器,程序中用到的数学函数要到这个库文件里找。使用平台:Vitis 2019.2只需要右击Application Project,然后按照下面操作即可:...

2020-08-21 10:48:51 2359 1

原创 STM32F7系列改变外部晶振时的修改点

在进行STM32F7平台开发过程中,有时候需要修改外部晶振的频率。否则会导致外设频率被改变,不能以正常频率运行,典型的就是UART波特率会改变,从而导致输出乱码。这时候需要修改下面文件的几个参数,以将外部晶振从25MHz改到8MHz为例:**1)**system_stm32f7xx.c,将HSE_VALUE从25000000U改为8000000U**2)**stm32f7xx_hal_conf.h,将HSE_VALUE从25000000U改为8000000U**3)**stm32f7xx...

2020-08-20 12:21:21 519

原创 ZYNQ学习总结:在vitis SDK中查询API函数(1)

平台:Vivado 2019.2

2020-05-26 15:16:03 1466

原创 ln, lg, log在C中的应用

在C语言中定义的函数和数学上定义的函数有所区别:C语言中只定义的两个函数:(1)y=log(double x)(2)y=log10(double x)第(1)个代表数学式中的ln,第(2)个代表数学式中的 lg;而数学上要求loga(b) (a不为e和10),可用换底公式表示为log(b)/log(a)(或者 log10(b)/log10(a))。注意一点的是要包含头文件math.h函数为...

2020-04-07 10:22:01 3639

原创 shell脚本获取进程ID并kill高占用CPU的进程

说明:kill了占用CPU高的python3进程vim kill_highPCU_python3.sh#!/bin/sh#i=2#while (i--)#docpu=$(top -b -n1 | grep "python3" | head -1 | awk '{print $9}')pid=$(top -b -n1 | grep "python3" | head -1 | awk ...

2020-03-17 10:24:06 1841

原创 VSCode中对编程有用的一些插件的介绍与安装

Setting Sync:能够在每次换个电脑或者临时换个新环境时,不需要重新配置各种插件,直接同步;TODO Highlight:这个插件会分析代码中的TODO标签,在加亮之后,可以集中显示;TODO Tree:用于记录很多需要做但是暂时没办法立即做的事情,如修改样式,日期格式处理等;C/C++:C/C++插件;Chinese Simple:简体中文插件;Code Runne...

2020-03-12 10:17:55 306

原创 Windows下安装和配置WSL

百度百科描述WSL:Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu 14.04 "Trusty Tahr"映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。1、启用或关闭Win...

2020-02-02 12:16:50 4090 1

原创 在linux上搭建stm32开发环境

环境:ubuntu18.041、官网下载编译链:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads我下载的是gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2版本wget h...

2020-01-18 10:54:01 758

原创 C#学习总结(一)

1、C#:简单,面向对象,类型安全2、C#语言的特点:语法简洁,面向对象设计,安全性机制,错误异常处理机制,兼容性高,与web紧密结合3、.Net框架包含.Net框架类库 与 CLR(公共语言运行室);.Net包括.Net Framework(开发平台)与Visual Studio(开发工具)4、CLR又包含(CLS:公共语言规范 CTS:通用类型系统)5、C#在编译过程中编译成中间语...

2020-01-16 12:19:33 440

原创 使用串口多缓存

串口的多缓存就是指有多个缓存,一般指短时间内不断发送数据,从而存到不同buff区域。】在STM32的datasheet中说到只有在多缓存通讯中才推荐这种清除程序://串口接收if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET){ if (Recstat != RcvEnd) // 判断是否接收完成(在滴答定时器中实现串口是否接收完成...

2020-01-14 12:26:06 1799

原创 在ubuntu18.04上更新内核

1、查看Ubuntu现有的内核版本(),可以看到现在的内核版本是5.0.0uname -a2、前往官网https://www.kernel.org/,下载内核源码,我下载的是目前最新版的5.4.10版本3、我将下载到的文件存放在Ubuntu桌面上,如下图4、打开终端进入桌面目录,解压sudo tar -xavf linux-4.18.14.tar.xz5、安装各种依赖sud...

2020-01-10 16:24:30 11181 4

原创 UCOSIII使用总结(一)

1、DMA中断跟其他中断一样,DMA中断进入时调用UCOS中断处理,结束时调用中断级任务调度函数就可以了2、有些地方还需要注意堆栈字节对齐的问题,如果任务运行出现莫名其妙的错误(比如用到 sprintf 出错),请考虑是不是字节对齐的问题。3、OSSemPost()函数:如果有一个或多个任务在等待这个信号量,则优先级最高的任务将获得这个信号量,然后由调度器来判定刚获得信号量的任务是否为系统中优...

2020-01-07 18:24:43 1950

原创 STM32F767芯片在使用中的注意点(一)

1、STM32F767的ADC最大工作频率是36Mhz,而 ADC 时钟(ADCCLK)来自 APB2,APB2 频率一般是 108Mhz,我们设置 ADCPRE=01,即4 分频,这样得到 ADCCLK 频率为 27Mhz。2、FMC是STM32F429/439专有的,是在FSMC的基础上支持SDRAM的升级版本3、AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2&g...

2020-01-07 17:39:48 4238

原创 安装双系统ubuntu + windows

**1、**使用UltralSO, 将系统镜像用“写入硬盘映像”方式写入U盘。**2、**电脑BOOT启动方式选择UEFI,选择U盘(系统镜像)为第一启动项,同时将Secure Boot 设置为Disable。**3、**进入安装时安照顺序/home (10G)/swap (8G(2倍内存大小))/boot (1G)/ (40G)去划分存储区域。...

2019-11-16 09:51:26 136

原创 Keil如何用fromelf.exe工具生成目标(bin,hex等)文件

比如要生成.bin文件: fromelf.exe --bin -o “XX.bin” "#L"工程配置如下:最终生成了XX.bin格式文件 :下面列出fromelf.exe语法:fromelf [options] input_file (命令的格式)Options: --help display this help screen (显示帮助信息) ...

2019-11-05 17:53:10 7868

原创 C# 串口ComboBox下拉事件自动识别串口号并在下拉框中显示

序言:在.Net 2.0版本之后,就默认提供了System.IO.Ports.SerialPort类,用户可以简单地编写少量代码就完成串口的信息收发程序。// 代码 (下拉触发事件)private void comboBoxUart_2_DropDown(object sender, EventArgs e){ int i = 0; this.comboBoxUart_2....

2019-11-02 10:21:43 4420

原创 Windows缺少mfc110.dll的解决方法

mfc110.dll是存放在windows系统中的一个重要dll文件,缺少它可能会造成部分软件或游戏无法正常运行。当系统提示“没有找到mfc110.dll” 或 “丢失mfc110.dll”等类似错误信息时,通过以下办法解决:1、 到 此microsoft下载地址 或者 下载 ;2、 双击vcredist_x64.exe 以及 vcredist_x86.exe 运行;接着再重新软件或游...

2019-09-18 21:48:38 5023

原创 动态内存分配

在编写很多程序时,我们无法提前预知需要多少内存来存储某个定义变量(数组)中的特定信息,所需内存的大小需要在真正运行时才能确定。动态内存的优点在于函数执行完毕之后仍然可以被其他函数使用。 动态内存的释放:使用free;free掉一个指针,只是将指针指向的内存空间释放掉了,并没有将指针置为NULL,指针仍指向被释放掉的内存的地址,在判断指针是否为NULL的时候,通常是通过if(pt == NUL...

2019-09-16 11:51:14 169

原创 Ubuntu下samba服务器配置和使用

1、 安装samba软件 (部分Ubuntu版本有自带)sudo apt-get install sambasudo apt-get install smbclient安装完成后执行确认已经正确安装完成, 使用命令: samba -V2、 配置samba服务器,使用如下命令打开samba的配置文件sudo vi /etc/samba/smb.conf在文件最后添加如下配置信息:...

2019-08-10 09:54:34 483

原创 Ubuntu 更新软件源

1、 首先备份当前的源,当前的源所在文件位置为/etc/apt/sources.list 执行备份:cp /etc/apt/ sources.list /etc/apt/ sources.list.backup2、 打开Ubuntu源列表文件,修改软件源sudo vim /etc/apt/sources.list把整个sources.list文件里面的内容替换成下面的内容( 根据需要选择...

2019-08-02 10:22:05 1111

原创 怎样获取STM32MCU的唯一ID

每个STM32MCU设计中都有唯一的ID**(96位)**,每个ID都具备有不可修改和唯一性,这一点在基本的程序防解密上很有效果,ID结合加密的程序可以有效增加破解的难度和成本。每款STM32的存储器地址不一样,不同的微控制器型号96位的ID存储位置不一样。这个96位的唯一身份标识,可以以字节(8位)为单位读取,也可以以半字(16位)或者全字(32位)读取。各款MCU的ID地址与Flash...

2019-03-27 15:37:48 1053

基于STM32下的syscalls文件

1、可以在GCC编译链中使用syscall.c文件使用C库函数(如sprintf/printf)。

2022-01-25

JLink+ST-Link烧录所需文件.zip

JLink+ST-Link烧录所需文件,编写批处理脚本使用JLink.exe / ST-LINK_CLI.exe烧写STM32F103RC系列芯片

2021-07-16

Source Insight 宏.zip

选择Options的Save Configuration先保存自己的配置,以便回退,然后再选择Options的 Load Configuration来装载该配置,如果不喜欢我的配置风格,只想要热键和菜单定义, 只要勾上菜单和热键两个子项即可。

2020-06-03

CP2102_Drive.zip

CP2102_Drive:(32位系统请安装CP210xVCPInstaller_x86.exe 64位系统请安在CP210xVCPInstaller_x64.exe)

2020-06-01

FTP Transfer-FileZilla(32-64bit).zip

FTP Transfer-FileZilla(32-64bit), FTP传输软件工具,支持 32位跟64位。

2020-06-01

linux-5.4.10.tar.xz

该资源为 linux-5.4.10.tar.xz 该资源为 linux-5.4.10.tar.xz 该资源为 linux-5.4.10.tar.xz

2020-01-10

crc_verify.zip

CRC校验使用工具; CRC16/CRC32/XMODEM校验码; 可以直接将文件拖进工具,然后选择CRC16/CRC32进行校验;

2020-01-03

C++应用程序所必需的运行时组件(vs2012).zip

C++应用程序所必需的运行时组件(vs2012), 安装各个需要C++组件的软件都可以使用这个组件。

2019-11-16

OMAP-L138启动方式.pdf

介绍了 OMAP-L138 SOC 启动相关的知识点。包括启动流程,各种启动 模式的注意事项,AIS 文件格式,ARM启动 DSP 的过程,DSP 启动文件的配置与 格式,同时加载 ARM与 DSP 代码的方法,如何通过配置 AIS 文件提高加载速度, flash 烧写,启动问题常用定位方法。内容也适合于同系列的 OMAPL132, AM1808,TMS320C6748 等芯片。

2019-10-09

vcredist(mfc110.dll).zip

**mfc110.dll**是存放在windows系统中的一个重要dll文件,缺少它可能会造成部分软件或游戏无法正常运行。 双击运行以上两个.exe文件。

2019-09-17

特别好用的Source Insight宏

GLOBAL.CF3,一个特好用的Sourceinsight宏。 操作如下:Options --> Load Configuration --》 Load,然后选择文件位置即可。

2018-10-11

进行与设备各种操作的VISA32类文件

最全的VISA类文件,可以进行与设备的各种操作。其中包括Resource Template Functions and Operations,Basic I/O Operations,Formatted and Buffered I/O Operations,viPrintf Overloads,viSPrintf Overloads,viScanf Overloads,viSScanf Overloads,Memory I/O Operations,64-bit Extension Functions,Shared Memory Operations,Interface Specific Operations,Constants

2018-09-05

msvcr100d.dll

如果系统提示"找不到msvcr100d.dll"或"msvcr100d.dll缺失"或者"msvcr100d.dll"错误,可以使用下列两个其中的一个解决问题。

2018-08-03

Chrome Proxy SwitchyOmega扩展程序

该插件为Chrome浏览器实现代理服务的插件,能够实现socks5代理服务的功能。

2018-03-12

windows64位下的debug工具

该工具可以使得汇编程序在windows64位下debug,里面包含DOSBox0i安装包,MASM.EXE、LINK.EXE、ML.EXE、DEBUG.EXE等

2017-12-14

Apache服务配置文件讲解

文档描述了怎样配置Apache服务以及对其中各种参数的更改。

2017-11-26

STM32输出12路pwm程序

该程序可以适用各种系列的STM32单片机,在该程序中是利用3个定时器实现输出12可调节占空比的PWM;如果需要更多通道的PWM,可以依照程序中示例添加其他相对应的定时器去实现。

2017-11-26

FileTool.exe

轻松解决win7/win8/win8.1等系统下VC++6.0的无法打开文件(Ctrl+O)问题

2017-07-21

电脑故障1000实例

电脑故障1000实例

2017-03-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除