自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 运放同向加法电路计算

2024-12-11 10:25:25 315

原创 microchip中使用printf给AVR单片机串口重定向

初始化中一定要加入stdout = &mystdout;重定向中修改需要的串口。

2024-09-19 22:23:26 609

原创 STM32 看门狗 HAL

由时钟图可以看出看门狗采用的是内部低速时钟,频率为40KHz。打开看门狗,采用32分频,计数1250。

2024-07-02 13:20:56 368

原创 STM32 HAL库读取ID

在stm32f1xx_hal.c文件中由读取ID号的子函数,不同单片机的UID_BASE不同,本单片机用的是STM32F103CBT6,跳转之后可以看到地址为:0x1FFFF7E8。在程序中只需定义一个数组调用读取ID的函数即可。与ST-link读出来的ID号一样。

2024-07-02 12:58:52 624

原创 ESP8266做主机 手机网络助手为从机

在手机上下载网络调试助手,打开TCP客户端 创建后192.168.4.1 端口8089然后连接ESP8266热点。ESP向手机发数据前先发送要发几个数据AT+CIPSEND=0,8表示发8个,然后再发8个数。AT+CIFSR查看地址,一般ESP8266 为192.168.4.1。上面创建好热点后,就不用更改。单片机在初始化时先创建端口。

2024-05-07 00:32:14 326

原创 STM32 PWM波定时溢出中断

主函数初始化开启PWM和中断。回调函数中判断是否为tim2。

2024-05-05 21:57:38 637

原创 Microchip Studio修改工程名

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

2024-01-20 16:01:59 553

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

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

2023-12-29 11:39:34 1053

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

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

2023-12-27 17:08:26 1483 1

原创 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 3684 4

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

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

2023-09-06 16:58:45 1402 2

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

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

2023-08-10 01:45:12 6406 2

原创 STM32 互补PWM 带死区 HAL

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

2023-07-25 19:33:27 3073

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

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

2023-07-08 12:42:04 784

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

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

2023-06-25 11:00:42 355 1

原创 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 3916

原创 STM32F373 SDADC DMA Timer

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

2023-06-15 21:16:31 1154

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

STM32 ADC 定时器 DMA FFT

2023-03-23 21:10:29 6140 3

原创 ESP8266连接网络助手

ESP8266连接到wifi

2023-01-17 00:07:17 1177

原创 STM32F373 SDADC DMA HAL

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

2022-11-19 21:31:43 2037

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

modbus通讯协议简易代码

2022-08-20 00:15:48 3715

原创 Atmega32a-au串口收发

AVR串口

2022-07-29 16:28:42 582

原创 C#获取时间打印

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

2022-05-21 19:40:11 1213

原创 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 1034

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

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

2022-05-21 19:06:23 180

原创 C#上位机简单操作

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

2022-05-20 00:19:58 365

原创 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 959 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 462

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

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

2022-04-29 16:59:45 508

原创 USART HMI串口屏简单使用

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

2022-04-22 13:46:17 3904 1

原创 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 1157

原创 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 8060 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 10155 2

原创 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 1309

原创 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 1202

原创 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 5051

转载 主辅电源切换

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

2022-03-30 22:14:32 247

原创 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 2712 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 8104 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 1991

空空如也

空空如也

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

TA关注的人

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