自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Microchip Studio修改工程名

然后点击关闭,会显示保存新的atsln文件,此时将原来的文件替换即可。再次打开工程软件会显示加载失败,此时是找不到路径了。选择修改文件夹名字的路径下的cproj文件。打开工程后,右键选择重命名。关闭后回到工程下的文件夹。

2024-01-20 16:01:59 385

原创 STM32F030F4P6 ADC多通道定时器触发DMA搬运

主函数中等待转换完成的标志位,然后打印出来。ADC回调函数中将数值赋值给变量。配置定时器1s读一次。

2023-12-29 11:39:34 599

原创 STM32 硬件SPI读取HT7036程序(HAL库)

由下图HT7036的时序图可以看出,SCK在空闲时是低电平,读数据是从下降沿开始的,则CPOL=0,CPHA=1;HT7036 写数据格式为1个命令加3个数据,手册中表明特殊命令的高位为1.HT7036读数据也是先发一个命令,然后读取三个数据。初始化时先复位,再校表,设置时钟,开启滤波等。先写入地址,再发送3个数据。SPI配置为主从模式,不使能NSS。主函数中先初始化再按地址读数据。

2023-12-27 17:08:26 664

原创 ADS1115 模拟IIC

ADS1115是16位ADC,基准源内部可选,PGA 可提供从 ±256mV 到 ±6.144V 的输入范围。ADS1115有4个控制寄存器,0x00,0x01,0x02。地址可由ADDR引脚决定,一般接地,地址为0x90。写寄存器地址为0x90,读寄存器地址为0x91。(2)发送0x01寄存器地址( 配置通道等)(7)发送地址0x91(表示读数据)(3)发送0x01地址中高位数据。(4)发送0x01地址中低位数据。(6)发送0x00寄存器地址。(1)发送地址0x90。(5)发送地址0x90。

2023-09-09 13:05:28 1471

原创 0-5V转4-20mA电路

本设计采用运放与三极管做二线制恒流源电路。将(1)(6)带入(5)得。

2023-09-06 16:58:45 589

原创 电脑软件打开后在副屏移回主屏

1、打开软件后确认当前活动界面是此软件窗口(alt+tab选中)2、按下alt+空格。

2023-08-10 01:45:12 1611

原创 STM32 互补PWM 带死区 HAL

将64写入sBreakDeadTimeConfig.DeadTime即可将死区设置为1us。例如:Timer1主频64MHz,死区时间1us。DT_data:写入到单片机里的值。DT_time:死区时间。

2023-07-25 19:33:27 2308

原创 STM32+PWM+输入捕获测频

前两个是频率为1KHz,后面修改了PWM的频率,即频率为2KHz。计算频率打印,若是想改变频率可设定定时器的计数。定时器1 通道1发出PWM波 频率1K。定时器2 通道1输入捕获,上升沿触发。外部时钟,主频64M。

2023-07-08 12:42:04 673

原创 USR-C216配置客户端模式,手机接收数据

电脑连接后在浏览器输入10.10.100.254,进入后密码和用户名为admin。若是不清楚现在模块什么配置可先恢复出厂设置,将nReload拉低3S即可。此时模块发出热点名字为USR-C216,无密码。

2023-06-25 11:00:42 155

原创 USR-C216 WIIF连接手机

打开手机网络调试助手选择客户端模式,输入10.10.100.254,端口8899。关于AT指令,先发“+++”,然后3s内发“a”就可以进入AT指令配置了。浏览器输入10.10.100.254。客户端模式服务器地址无效,默认就行。复位后连接USR-C216无线。发AT+ENTM则退出AT指令。账号密码为admin。

2023-06-20 18:35:33 332

原创 STM32F373 SDADC DMA Timer

触发频率为1KHz,1ms转换一次,一次采集两个数据,6通道与8通道。采集到2000个数据则是转换了1000次,时间为1S。在中断回调函数中将SDADC采集与定时器13关闭,然后给出转换完成标志。while中可由按键去触发,等转换完成后则打印出来。zz 定时器13触发。

2023-06-15 21:16:31 682

原创 STM32 ADC+定时器+DMA+FFT

STM32 ADC 定时器 DMA FFT

2023-03-23 21:10:29 3920 2

原创 ESP8266连接网络助手

ESP8266连接到wifi

2023-01-17 00:07:17 1044

原创 STM32F373 SDADC DMA HAL

STM32F373单片机SDADC读取,采用DMA模式

2022-11-19 21:31:43 1192

原创 Modbus 协议传输数据,简易算法可同时实现发送一个或连续发送多个数据

modbus通讯协议简易代码

2022-08-20 00:15:48 2928

原创 Atmega32a-au串口收发

AVR串口

2022-07-29 16:28:42 468

原创 C#获取时间打印

string time_data = DateTime.Now.ToLocalTime().ToString();//获取系统时间textBox1.AppendText(time_data); 获取的是电脑的时间,然后使用textBox文本打印出来

2022-05-21 19:40:11 1118

原创 C#定时器LED灯闪烁

先在Form1_Load里添加定时器初始化程序,再添加一个时间到达的处理事件 private void Form1_Load(object sender, EventArgs e) { System.Timers.Timer t = new System.Timers.Timer(1000);//实例化Timer类,设置间隔时间为1000毫秒; t.Elapsed += new System.Timers.ElapsedE

2022-05-21 19:37:30 856

原创 C#删除控件添加的时间

双击控件会在程序里添加事件 private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { } private void comboBox2_SelectedIndexChanged(object sender, EventArgs e) { }若是不用的这事件可以删除,但是删除后会有运行错误法一:点击转

2022-05-21 19:06:23 135

原创 C#上位机简单操作

单选按键只可单选,需要panel工具框选到一起textbox文本框可以设置下拉按键按下后设置不可再按

2022-05-20 00:19:58 272

原创 Microchip Studio ASF4入门

设置一下外部晶振选择一下引脚,输入输出上拉等#include <atmel_start.h>#include <avr/io.h>#include <util/delay.h>int main(void){ /* Initializes MCU, drivers and middleware */ atmel_start_init(); /* Replace with your application code */...

2022-04-30 15:38:25 769 1

原创 AVR 看门狗

/* * ATmega16_wdto.c * * Created: 2022/4/29 16:27:00 * Author : admin */ #ifndef F_CPU#define F_CPU 8000000UL#endif#include <avr/io.h>#include <avr/wdt.h>#include <GPIO_IO.h>#include <util/delay.h>int main(void)//GCC.

2022-04-29 18:01:30 359

原创 Microchip studio添加自己的库文件

选最后一个选择自己的库文件路径

2022-04-29 16:59:45 375

原创 USART HMI串口屏简单使用

本次使用的是K0系列的3.5寸屏方向自己定,编码选择GB2312,可显示汉字选用文本控件。可加个背景,先将图片转换成bmp或jpg格式。右键添加图片给文本控件添加名字添加按键控件,同样使用右边的属性中txt来改名可给按键绑定事件,按下按键页面切换到page0(首先添加一个页面)按键2触发文本控件的名字,将文本的名字改成aaa添加曲线编译调试用指令来改名曲线使用add id,ch,val 例...

2022-04-22 13:46:17 3179

原创 STM32 FreeRtos (HAL)

FreeRtos的时钟要单独选择一个定时器选择外部时钟选择freertos系统 CMSIS_V1创建一个任务一般只需要把优先级改一下就好再选择要控制的GPIO两个按键,两个灯两个按键分别控制两个灯,在两个任务里不会互相干扰void StartDefaultTask(void const * argument){ /* USER CODE BEGIN StartDefaultTask */ /* Infinite loop */...

2022-04-10 00:10:45 1028

原创 Simulink中MATLAB Function 使用

添加MATLAB Function,双击打开会跳到matlab中 输入函数function c = san(a,b)c=sqrt(a*a+b*b);end点击Edit Data。设置为single类型,applysimulink中将Constant的类型改成single加入Display组件运行后结果为5...

2022-04-02 23:12:57 7546 3

原创 Simulink光伏太阳能PV曲线绘制

1、Simulink图绘制太阳能板:PV Array动态电压源:Controlled Voltage Source斜坡信号:Ramp乘法器:Product示波器:xy Graph2、参数设置太阳能板设置1个并联1个串联太阳能得最大电压为36.3v,则让斜坡信号最大设置为40,仿真时间设置的是0.05ssample time是采样时间,即采集数据的间隔时间。当默认的为-1时,是和前一个元件相同。表示系统自动采样,所以一般不用更改。不过设置为-1时一会曲线就会断.

2022-04-02 17:25:17 7224 1

原创 python 窗口输入数据并运算(温度转换示例)

#TempConvert.pywhile True: TempStr=input("请输入") if TempStr[0] in['F','f']: #in表示检查F,f是否在TempStr列表中 C=(eval(TempStr[1:])-32)/1.8 #eval是去最外侧的引号 并执行余下的参数 print("转换后温度{:.2f}C".format(C)) elif TempStr[0] in['C','c']: F.

2022-04-02 10:53:46 1194

原创 python 常用数据类型计算

1.浮点型截取小数点后几位round(a,b) a是浮点型,b是保留的小数位数a=123.33*17.3>>> round(a,3)2133.6092.复数截取实部与虚部z.real取实部,z.imag取虚部>>> z=12+89j>>> z.real12.0>>> z.imag89.0...

2022-04-02 10:36:21 1048

原创 STM32 读写Flash (HAL)

此功能每次单片机上电先读取Flash数据,然后将数据写入Flash再串口打印。读出的数据累加再次写入Flash这样每次关机后再上电就会继上一次的数累加,实现断电保存数据功能uint32_t FlashData;uint32_t Flashaddr = 0x08007000;void writeFlashTest(uint32_t writeFlashaddr,uint32_t writeFlashData)//FLASH写入数据{ HAL_FLASH_Unlock();

2022-03-31 00:01:05 4600

转载 主辅电源切换

https://blog.csdn.net/zaohang/article/details/123525579?utm_source=app&app_version=5.2.1&code=app_1562916241&uLinkId=usr1mkqgl919blen

2022-03-30 22:14:32 156

原创 STM32 HAL ADC+DMA

选PA2,PA3,开启扫描模式,连续转换,关闭间断通道选择,不配置则只会转换一个通道。使用软件触发若是不用DMA中断,在NVIC中关闭中断,再在adc中的NVIC里去掉DMA中断选择一个字节必须使用uint32_t /* USER CODE BEGIN 1 */ uint32_t AdcBuf[2]={0};//DMA 选用一个字节,则必须使用uint32_t uint8_t i; /* USER CODE END 1 */在main函数中加入adc校准...

2022-03-30 19:35:12 2442 5

原创 STM32 HAL ADC多通道

stm32F103c8系列的ADC ,本次选用PA2,PA3Scan Conversion Mode( 扫描模式 ) 使用了多个通道ENABLE就是开启扫描模式,否则DISABLEContinuous Conversion Mode(连续转换模式) 连续转换ENABLE,不连续则DISABLE开一次转换一次Discontinuous Conversion Mode(间断模式) 多个通道则需使能ENABLEnumber of Discontinous Conversions间断模.

2022-03-30 00:19:52 7401 4

原创 STM32F103C8T6 PWM(PB15)HAL

APB2为72M 设置计数频率为1M PWM频率为1KHzPB15为互补输出主函数加入 /* USER CODE BEGIN 2 */ MX_TIM1_Init(); HAL_TIMEx_PWMN_Start(&htim1,TIM_CHANNEL_3); //互补通道输出开启 /* USER CODE END 2 */生成的代码中将tim.c中的模式成pwm,因为cubemx不支持修改加入以下代码,则PB15接LED可为呼吸灯...

2022-03-28 21:14:34 1636

原创 STM32 HAL 定时器中断

Clock Source:选用内部时钟APB2时钟clock为72MHz(采用STM32F103C8T6,TIME1为高级定时器时钟为APB2,其它3个为APB1时钟)PSC:分频系数。定时器时钟为APB时钟除以(PSC+1)=72M/(7199+1)=10KHzARR:重载值。设置为9999中断时间=(PSC+1)*(ARR+1)/clock=(7199+1)*(9999+1)/72000000=1s生成代码后在main中开启定时器中断HAL_TIM_Base_Start

2022-03-28 19:45:49 2815

原创 python turtle函数简单使用

先画个蟒蛇import turtle turtle.setup(650,350,200,200) #创建窗口的大小宽,高 窗口的位置X,Yturtle.penup() #画笔抬起,不留下痕迹turtle.fd(-250) #向后-250turtle.pendown() #画笔落下,留下痕迹turtle.pensize(25) #改变画笔的粗细turtle.

2022-03-28 11:25:00 3190

原创 STM32 HAL OLED(0.96模拟IIC)

先配置两个端口为上拉输出 GPIO_InitTypeDef GPIO_InitStruct = {0}; __HAL_RCC_GPIOB_CLK_ENABLE(); HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10|GPIO_PIN_11, GPIO_PIN_RESET); /*Configure GPIO pins : PB10 PB11 */ GPIO_InitStruct.Pin = GPIO_PIN_10|GPIO_PIN_11; GPIO_I

2022-03-23 18:14:47 1697 1

原创 STM32 HAL 串口收发(无DMA,中断接收)

STM32CUBE配置一、使用printf发送数据,在usart.c中添加代码串口重定向/* USER CODE BEGIN 0 */#include <stdio.h> #ifdef __GNUC__#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)#else#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)#endifPUTCHAR_PROTOTYPE{

2022-03-23 16:41:07 1997

原创 STM32 HAL 外部中断

模式选择下降沿触发,选择端口上拉将中断回调函数加在stm32f1xx_it.c文件中/** * 函数功能: 按键外部中断回调函数 * 输入参数: GPIO_Pin:中断引脚 * 返 回 值: 无 * 说 明: 无 *//* USER CODE BEGIN 1 */void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){ //在此判断是哪个外部中断端口 if (HAL_GPIO_ReadPin(GPIOB,...

2022-03-23 16:28:10 3613

原创 STM32_HAL基本设置操作

选择芯片,直接输入就行选择下载方式,硬件BOOT0与BOOT1需拉低。选择外部高速时钟时钟倍频不分频配置PB13输入配置PB15输出保存位置配置输出文件点击GENERATE CODE创建工程打开后配置一下keil基本的设置 GPIO_InitStruct.Pin = GPIO_PIN_13; //端口 GPIO_InitStruct.Mode = GPIO_MODE_INPUT; //输入 ...

2022-03-21 23:16:42 778

空空如也

空空如也

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

TA关注的人

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