- 博客(57)
- 收藏
- 关注
原创 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
原创 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
原创 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
原创 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
原创 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
原创 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关注的人