自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于STM32串口通信

结合上图,波特率到发送/接收之间由状态寄存器(USART_SR)控制。状态寄存器(USART_SR)图这里主要关注TXE、TC、RXNE、IDLE数据寄存器图主要配置数据的传送波特比率寄存器图控制寄存器1控制寄存器2。

2025-04-20 12:54:08 312

原创 基于STM32中断讲解

NVIC、EXTI、AFIO中断配置

2025-04-19 16:57:32 664

原创 oled显示一张图片

oled、单片机、杜邦线。

2024-08-02 18:42:11 245

原创 oled显示字体

oled显示字体

2024-08-02 16:19:19 375

原创 测量温湿度通过蓝牙和串口发送数据显示在LCD1602屏上

代码仅供参考

2024-07-31 18:04:24 235

原创 DHT11温湿度通过串口显示

源码仅供参考

2024-07-30 19:12:30 1172

原创 LCD1602显示一行

笔记仅供参考

2024-07-28 20:35:06 1135

原创 WiFi模块esp工作在路由模式(实时监测)

/为了查找联网状态给的回应。//直到等于1时发送成功,TI为0时变1发送成功;void UART_Routine() interrupt 4 //串口中断。//配置串口工作模式,REN为1则接收数据。//配置定时器为8位自动重装模式。// default port = 333连接服务器。void Uart1_Init() //串口初始化。//用于当联网标志位。

2024-07-25 16:35:34 815

原创 esp8266模块通过观察LED检测AT指令进行状态

通过8266来检测AT进程,直接将安信可串口助手调试翻译过来

2024-07-22 22:27:39 747

原创 串口通信控制单片机LED(源码仅供参考)

if(strstr(cmd,"en")) //数组里面查找 en // 传出数据 ASSII码。//接受数据手动复位。//清空数组 '\0'表示没有字符,长度为size 宏定义。//直到等于1时发送成功,TI为0时变1发送成功;//配置串口工作模式,REN为1则接收数据。void Uart1_Init() //串口初始化。

2024-07-11 17:38:21 503

原创 用串口发送字符串(仅供参考)

/传入字符串 \r\n表示字符串换行的意思。//当TI为0时则!TH1 = 0xFD;//8位自动重装模式 TH1数据溢出自动装入TL1。//这样配目的是无时差。//配置定时器1 8位自动重装模式。//将字符串传入出去。//让波特率更加稳定,防止掉帧。void senddate(char date) //串口发出数据函数。//配置计算波特率模式。void sendstring(char* str) //传入字符串。

2024-07-10 21:15:53 956

原创 上官智能感应垃圾桶

if(dis < 10 || sw1==0 || mark_vibrate == 0) //震动传感器不稳定,定义一个变量。//关盖赋予1 下次?void Time_0handler() interrupt 1 //(不断传波形信号)void vibrate_0() interrupt 0 //中断启动振动模式。if(cnt == 40) //20ms为舵机一个周期形成一个波形。

2024-05-25 20:59:59 1048

原创 函数指针调用与函数调用区别(辨析)

Int (*p)();// *p取代haha地址 类型一样。//调用函数都是此类型 getmax。switch(cmd) //取1为最大值 取2为最小值 取3为两数之和。} //可用三目运算符比较简便。puts("输入错误");puts("输入错误");

2024-05-18 15:24:50 1145

原创 指针变量之求数组对应坐标的数值

int getnumber(int (*p)[4],int hang,int lie) //数组指针对应的二维数组地址存放。//求输出坐标给出对应的值。printf("第%d行第%d的值是%d",hang+1,lie+1,date);puts("请输入行列值");

2024-05-12 16:37:57 458

原创 指针变量之数组反转

/取出地址数值 数字按照由后往前输。i++) //除以2,对调两次size为5。void putnumber(int *parr,int size) //将地址传进来,放到指针变量。//地址右移 第二位数。//对调后面数之间关系。printf("请输入第%d数据",i+1);

2024-05-05 11:35:00 319

原创 c语言指针变量关于函数的封装清晰过程

/地址右移 数组第二位数。void putnumber(int *parr,int size) //将地址传进来,放到指针变量。printf("请输入第%d数据",i+1);

2024-05-04 20:06:24 324

原创 上官c51超声波测距源代码

c51超声波测距源代码

2024-04-17 22:46:10 528 1

原创 上官c51舵机

void Time_0handler() interrupt 1 //(不断传波形信号)void Time_0init() //定时器中断初始化。while(1) //不断循环转动,在此可以调度数。if(cnt == 40) //20ms为舵机一个周期形成一个波形。//定时器0开始计时。//初始转到0°对应0.5ms。if(cnt < jd) //转过的角度。

2024-04-17 19:30:44 828 1

原创 上官C51定时器控制LED闪烁

/规定TRO=1开始计时 TFO=0。TH0 = 0xDC;//定初始值56320~65536下(10ms)TMOD = 0x01;TL0 = 0x00;if(TF0 == 1) //爆表一次为10ms。if(cnt == 100) //100次相当于1s。

2024-04-15 22:29:56 492

原创 利用函数调用求俩个班分数平均值

printf("各班级总人数为:%d\n",len);//最后一个return到main函数 averone&&avertwo。printf("请输入%d个学生分数:\n",i+1);printf("一班平均分%f\n",averone);printf("二班平均分%f\n",avertwo);//接住aver调用 average函数。//将整个数组地址和 人数传过去。//容易入坑,平均值用浮点型。

2024-03-06 00:37:16 834

原创 C语言递归求阶乘

printf("输出的值为=%d\n",sum);puts("请输入一个数");//列如输入3则是2的阶乘*3。

2024-03-03 14:36:32 286

原创 C语言函数嵌套实例

/想法:先两个两个进行比较,在决定最大的数。puts("请输入四个数");#求输入四个数中最大值#

2024-03-02 17:08:33 294

原创 C语言筛选出数组中一些数据最大值以及最大值相应坐标

/加1为了行列匹配,假设[]里面的为0,则 代表第一个数。//将假设值与比他大的值进行互换。//假设第一个数为最大值。//对上述数据进行分行列。

2024-02-28 17:40:36 433 2

空空如也

空空如也

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

TA关注的人

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