自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 proteus 7.8和8.9快捷键设置

并删除源文件搞定。

2024-04-10 18:43:41 575

原创 文件删除不掉,找不到路径

其它办法都不行,7zip也不行,后来下载了一个winrar,添加到压缩文件并删除源文件搞定。文件删除不掉,找不到路径。

2024-01-25 09:52:13 417

原创 AD学习笔记

在规则中修改。

2023-09-07 14:01:48 132

原创 keil标准库gpio_test。

[TOC] keil标准库gpio_test。

2023-08-16 10:39:51 165

原创 下载STM32固件库

点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

2023-05-29 21:06:57 301

原创 keil代码文件格式化

keil格式化文件AStyle_3.1_windowskeil格式化230113https://www.aliyundrive.com/s/jA9otcJTfZy点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

2023-01-13 11:08:56 618

原创 windows网上邻居功能,局域网内文件共享步骤,问题总结,看不到共享文件夹

文件共享步骤共享前的设置1.右键此电脑,打开管理2.找到 服务和应用程序3.检查sever受否是自动4.检查 computer browser 是否是自动如果没找到computer browser 则需要找到勾选下图的两个位置、点击确定后应该会重启,点击电脑重启开始共享文件夹右键文件夹打开属性、勾选共享、点击确定都点确定在另个一个同一局域网中应该就可以映射文件夹了点击确定可以多出一个映射盘如果这篇文章对你有所帮助,请点赞评论关注支持下,如果遇到新的问题,

2022-05-24 23:18:06 9014

原创 keil工具栏错乱,图标显示不正常,工具栏不小心删除,等keil界面问题

keil工具栏错乱,图标显示不正常,工具栏不小心删除,等keil界面问题都可以一键恢复到软件刚装好的状态。****window–>Reset View to Defaults如果点完还没恢复可以私聊博主

2022-05-24 10:49:49 2509 5

原创 C# 文件以txt文档模式存储,存储地址的设置 saveFileDialog控件的使用

效果图设置地址按钮 saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"; //默认存储文件类型 saveFileDialog1.RestoreDirectory = true; //还原之前选定的目录 saveFileDialog1.FileName = DateTi

2022-05-18 22:38:42 1145

原创 C# 串口,窗口缩放设置、通信serialPort控件 、解决线程间操作无效、设置串口文本编码方式、获取计算机COM口、ComboBox1下拉框默认值、MessageBox提示

串口数据收发 if (serialPort1.IsOpen == true) //发送 { serialPort1.Write("1"); //发送字符 } private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) //串口接收 { String[] arr1

2022-05-18 19:48:02 657

原创 C#快捷键 代码格式化

格式化代码 ctrl+k+d

2022-05-18 12:13:18 3109

原创 315M接收 PT2264发送 无线模块的使用

315M接收 PT2264发送 无线模块的使用 315M接收波形说明315M接收波形说明最后的一大段低电平是每次发完数据的静默时间,前面是几帧相同正式的数据。每帧数据周期大概19.4ms,包含了24个有效数据。一个起始数据(就是开始的一个相对大的低电平,其实信号长度大概时4.7ms),一个结尾数据,就是最后没用的一个高电平。每个有效数据的周期大约长600us = 4T,每个有效数据包含四个最小时间单位(每个最小有时间 T = 600/4 = 150us )。数据 0 用1T 高电平

2021-10-27 17:44:22 1290

原创 cubemx生成的工程问有问题

cubemx生成的工程晶振不对,不能运行cubemx的运行是需要java的JDK环境支持的。但是需要JDK和cubemx的版本适合才行,目前,cubemx5.? 就是六以下和JDK8适配度很好,如果要用cubemx6.几或以上的版本,亲注意同时需要找到配合使用的JDK二级标题三级标题四级标题五级标题六级标题...

2021-08-28 08:43:28 279

原创 51单片机免冷启动下程序不用断电重启也能下载

sfr ISP_CONTR = 0xe7; //定义ISP寄存器 if(SBUF == 0xf8) //放串口中,如果连续8次接收到f8进入ISP监控程序区准备接收下载的程序 { D_count ++ ; if(D_count > 7) { ISP_CONTR = 0x60 ; } }STC单片机在进行冷启动时会从ISP引导码开始执行程序,而进行热启动或按复位键软启动时是从用户程序段开始执行的。STC单片机增加了ISP/IAP控制寄存器ISP_CONTR,用.

2021-06-04 11:09:48 2309

原创 log打印,对printf()串口输出进行再次封装

#define log(format, ...) printf(format, ##__VA_ARGS__) /* 把log变成了pintf打印出内容那个和直接放printf中一样 */ #define logfile(format, ...) \ printf("[%s:%d->%s] "format, __FILE__, __LINE__, __func__, ##__VA_ARGS__) ; /* [../Src/main.c:

2021-05-31 16:31:21 648

原创 单片机常用函数模板以及在KEIL的Templates中添加自己的注释模板

单片机常用函数模板以及在KEIL的Templates中添加自己的注释模板 keil通用51单片机32单片机keil添加keil通用switch (){ case 0: break; case 1 : break; default: break;}51单片机 /********************************************** 51单片机printf()串口打印重定向*******************************

2021-05-31 13:28:35 1668

原创 SG90舵机的驱动

舵机的控制一般需要一个20ms的时基脉冲,该脉冲的高电平部分一般为0.4ms - 2.4ms 之间可以任意调整角度舵机是以占空比的方式驱动的,下面是常用角度 (可调以实际测量为准)0.4ms-------------0度; 2.5%0.8ms------------45度; 5.0%1.3ms------------90度; 7.5%1.8ms-----------135度; 10.0%2.4ms-----------180度; 12.5%正常配置PWM输出, HAL_TIM_PWM

2021-05-26 10:24:20 1578 2

原创 创建freeRTOS在freeRTOS系统的线程中利用串口打印

这里写目录标题在main函数中重定向关闭自动生成的线程创建自己的线程cubemx的配置在main函数中重定向int fputc(int ch,FILE *f) { uint8_t temp[1] = {ch};// HAL_UART_Transmit(&huart1,temp,1,500); return ch ;}关闭自动生成的线程void StartDefaultTask(void const * argument){ /* USER CODE BEGIN

2021-05-17 14:51:09 580

原创 TDS算法

/* TDS检测的是1秒内信号线发生跳变沿的次数, 外部中断必须是上升下降两种边沿都触发*/uint16_t EX_Count = 0 ; //记录产生外部中断的次数uint16_t TDSTemp = 0 ; //进行的温度补偿 uint16_t TDS = 0 ; //最终的TDS值void conductivity() //TDS算法{ uint16_t kt = 0; if(EX_Count > 600 ) { TDSTemp = .

2021-05-06 14:24:36 1848 1

原创 PH值算法

/* 计算原理,之前的计算原理是按照人家提供的计算公式进行计算的,但是对于成品设计还好,不用动程序了,但是对于定制设计,在使用中发现移植效果不好, 因为要配合掉电存储,大量的计算,移植起来比较麻烦,所以这里采用一种新的计算方法,移植起来很简单,只要计算出PH输出的电压数据即可,计算出的电压 保留两位小数,然后直接代入下个公式,这个公式是自己推出来的,误差目前测试三种溶液没有超过 0.5 ,368这个数据来源是这样, PH 电压 PH变化值 电压变化值 电.

2021-05-04 08:31:31 2857

原创 串口printf()重定向

1 重定向1 51单品机2 32单片机2 printf格式1 重定向1 51单品机 char putchar(char ch) { SBUF = ch; while(TI == 0); TI = 0; return ch; } 2 32单片机int fputc(int ch,FILE *f) { uint8_t temp[1] = {ch};// HAL_UART_Transmit(&huart1,temp,1,500); return ch.

2021-04-29 17:51:28 534

原创 离散点生成公式

2021-03-05 19:17:08 397

原创 32单片机串口DMA接收

Uart_SeriaInit(); //串口接收初始化 SeriaReciveIRQ(&Uart3_Seriadef); //在串口中断中接收数据/*************************************************** 功能:串口的DMA接收函数***************************************************/void recWIFI(void){ if(Uart3_Seriadef.Rec...

2021-01-25 10:12:18 251

原创 易安卓常用功能记录

1.请求本软件需要的权限 变量 权限2 为 文本型() 权限2 = 分割文本("android.permission.WRITE_EXTERNAL_STORAGE" , ",") 权限操作1.申请权限(权限2) '注意:本命令只在安卓6.0以上的版本中才有效,E4A的设置里,最低安卓版本建议设置为17(安卓4.2),目标安卓版 本建议设置为26(安卓8.0) 权限操作1.申请权限(权限操作1.取应用所需权限(权限操作1.取自身包名()))...

2021-01-22 17:41:08 1071

原创 51单片机定时器的使用

/*********************************************** 定时器0初始化**************************************************/long TimINIT 65536 - 11059200/12*50/1000void Timer0Init(void) //50毫秒@11.0592MHz{ TMOD &= 0xF0; //设置定时器模式 TMOD |= 0x01; //设置定时器模式 T.

2020-12-28 10:06:13 631

原创 51单片机串口的使用

#include<reg52.h>/********************非精确延时*********************/void delay(long d){ while(d--) ;}/***************************************** 串口单字节发送********************************************/void uar1tByte(char byte){ SBUF = byte ;

2020-12-26 09:37:08 289

原创 添加共享打印机

win+R 在运行中输入目标IP\192.168.2.115点击确定输入密码点击要添加的打印机即可在设备和打印中选中对应打印机为默认设备即可

2020-12-25 10:39:34 247

原创 定时器输入捕获

HAL_TIM_IC_Start_IT(&htim3,TIM_CHANNEL_1); //PA6 打开定时器捕获中断 //打开定时器溢出中断,防止捕获到的值过大产生溢出根据自己要捕获的值得大小判断要不要考虑溢出中断// HAL_TIM_Base_Start_IT(&htim3); uint16_t T3Count = 0 ;void HAL_TIM_IC_CaptureCallback(TIM_H...

2020-12-24 18:27:16 367 1

原创 SM32通过定时器输出PWM波

HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_3) ; //打开定时器PWM中断/* &htim3 : 指定时器3TIM_CHANNEL_3 : 指通道3对应的GPIOpin 50 : 高电平占50us,用来调整占空比,具体占空比 = 高电平时间/周期时间 频率 = 1(秒)/周期时间(毫秒) 即频率就是每秒的周期个数。*/ __HAL_TIM_SET_COMPARE(&hti..

2020-12-23 13:52:13 2109

原创 32单片机,UART串口通信。

如果不需要接收只是发送,中断也不用开,直接 HAL_UART_Transmit(&huart1, (uint8_t *)"中国你好\r\n",strlen("中国你好\r\n"),1000); /* 发送字符串时要用strlen,不能用sizeof。*/就可以发送出去。如果需要接收则/************************************************************单字节收发,没接收一个字节就会产生一次中断频繁产生中断容易出错***.

2020-12-22 17:02:08 662

原创 基于51单片机TLC2543芯片实现AD转换

#include<reg52.h> //头文件sbit TCL2543_EOC = P1^0; //转换结束标志IO口sbit TCL2543_CLK = P1^1; //I/O时钟输入sbit TCL2543_ADIN = P1^2; //串行数据输入端sbit TCL2543_DOUT = P1^3; //串行数据输出端sbit TCL2543_CS = P1^4; //片选脚IO//===================单片机发送数据=======

2020-12-21 20:10:45 3295 4

原创 基于32单片机的数码管驱动程序

/*真值表对应的是2位八段共阴 数码管 本程序是从PB3-PB9如果只是IO口不同可以通过左右移解决*/ uint32_t NTTruth[] = //数码管真值表0_F{ 0x3f0, 0x180, 0x368, 0x3c8, 0x198, 0x2d8, 0x2f8, 0x380, 0x3f8, 0x3d8,};uint8_t NTrefresh = 0 ; //数码管动态扫描变量uint16_t Time1ms = 0 ; //定时器1毫秒...

2020-12-21 20:02:17 802

原创 stc12单片机,SIM800,GPRS通信

#include <STC12C5A60S2.H>#include"stdio.h"#include"string.h"typedef unsigned char uint8_t ;typedef unsigned int uint16_t ;uint16_t Smog = 0 ; //测试变量//sim800GPRS联网----------------------------------------------------uint8_t idata s

2020-12-17 14:22:17 547

原创 STC12单片机双串口共用独立波特率发生器发生波特率

#include <STC12C5A60S2.H>typedef unsigned char uchar ;typedef unsigned int uint ;uint Smog = 0 ;void Uart_Init(void){ EA=1; //打开总中断 PCON &= 0x7F; //波特率不加倍 /* 定时器 串口模式和51一样 允许独立波特率发生器运行 串口2波特率不加倍 允许使用内部扩展RAM 独立波特率

2020-12-16 12:11:48 1501

原创 STM32,ADC检测

uint16_t ADC_Dat = 0 ; //定义接收AD值得变量 HAL_ADC_Start(&hadc1); HAL_ADC_PollForConversion(&hadc1,0xffff); //等待检测结束 ADC_Dat=((HAL_ADC_GetValue(&hadc1))); //得到AD值 HAL_ADC_Stop(&hadc1); //结束AD检测...

2020-12-15 11:41:52 796

原创 notpad++格式化代码,作为keil4的外部编辑器

1. 格式化代码下载notpad并且安装,安装都是下一步就行。notpad软件提取码:1111/1P15krVDnw9rqUS4bnJmlrg)安装完成后把自动格式插件:NppAStyle.dll 放到安装目录的plugins文件夹下链接:插件提取码 1111 重启软件...

2020-12-05 11:30:04 365

原创 stm32基于hal库的定时器的使用

HAL_TIM_Base_Start_IT(&htim1); //主函数中添加打开定时器中断uint16_t timCount = 0 ;/*可以在任何地方添加定时器回调函数*/void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){ if(htim == &htim1) { timCount++; }}程序源码,提取码1111...

2020-12-05 09:09:05 1230

原创 stm32单片机,基于HAL库,EX外部中断

外部中断的使用1. CubeMX的配置1.选中需要的引脚2.外部中断是中断所以千万别忘记开中断了2.keil的编写1. CubeMX的配置1.选中需要的引脚2.外部中断是中断所以千万别忘记开中断了然后给工程取个名就可以生成工程了2.keil的编写打开新工程先编译下方便找函数的定义位置uint16_t EX_Count = 0 ;/*外部中断回调函数*/void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){ if(GPIO_Pin== GP

2020-12-03 15:36:22 364

原创 stm32单片机第一阶段学习清单

1.GPIO{三种常用操作输入输出取反}2.外部中断3.定时器{1.捕获2.PWM的发生与监测3.AD转换4…}4.通信{1.Usart2.Iic3.Spi4…}5.系统{1.Freertos2…}

2020-12-02 17:33:34 125

原创 stm32单片机基于hal库对对GPIO的操作

32单片机对GPIO的操作和51单片机对io口的操作是一样的,常用的有三个,输出,io口至高至低,输入,检查测io口的高低电平,取反,用于闪烁处理。/*读取io口电平*/HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)/*io口电平取反*/HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)/*io口电平至1至0*/HAL_GPIO_WritePin(GPIO_Type

2020-12-02 08:39:02 2203

keil标注库gpio-test测试程序

keil标注库gpio-test测试程序

2023-08-16

空空如也

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

TA关注的人

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