- 博客(71)
- 资源 (3)
- 收藏
- 关注

原创 Linux下C语言编写贪吃蛇小游戏源码
#include<curses.h>#include<stdlib.h>#define UP 1#define DOWN -1#define LEFT 2#define RIGHT -2struct snake{ int hang; int lie; struct snake *next;};struct snake *head= NULL;struct snake *tall= NULL;int key;int dir;s
2020-06-28 17:15:11
2482
1

原创 超声波测距调成SG90舵机源码
根据超声波测距调动SG90舵机源码#include <Servo.h>#define DuoPIN D5//定义舵机#define Echo D2//定义超声波收#define Trig D8//定义超声波发Servo myDuoJi;long getTime()//超声波发波测距{digitalWrite(Trig,HIGH);delayMicroseconds(10);digitalWrite(Trig,LOW);return pulseIn(Echo,HIGH);}
2020-05-29 17:02:31
1656
原创 使用Pyqt5基于yolo目标识别算法实现车辆和行人识别
使用PyQt5开发的一个上位机,加载了yoloV8目标识别算法可对汽车和行人进行识别
2024-07-28 15:21:02
1926
7
原创 基于STM32通过云平台实现智慧大棚【手机远程查看温湿度】【报警】
基于STM32,通过正点原子的ESP8266模块,实现将数据上传到云平台的功能,同时也可通过手机远程查看现场的温湿度数据。
2024-07-26 23:09:49
1238
原创 AutoSar中的Spi_SetupEB函数原理与实现
主要介绍了MCU作为SPI从机的代码实现,使用AUTOSAR标准进行实现以及遇到的问题及解决办法
2024-07-26 17:12:43
1532
4
原创 数组指针、函数指针、二级指针、字符串函数
输出内容回掉函数的底层逻辑就是函数指针输出内容输出内容输出内容输出内容assert() 的用法很简单,我们只要传入一个表达式,它会计算这个表达式的结果:如果表达式的结果为“假”,assert() 会打印出断言失败的信息,并调用 abort() 函数终止程序的执行;如果表达式的结果为“真”,assert() 就什么也不做,程序继续往后执行。输出结果:字符串拼接函数strcat输出结果............
2022-07-11 22:24:17
453
原创 斐波那锲数列与冒泡排序法在C语言中的用法
首先简单介绍一下什么是斐波那契数列C语言实现逻辑详见下面代码输出打印的内容如下二、冒泡排序法以下为由大到小尽心冒泡排序输出结果
2022-06-26 21:10:29
411
2
原创 FreeRTOS一些常识笔记之快速上手
一、为啥要用实时多任务操作系统real-time Operate System 简称有:RTOS,有如下的好处:用户无需关心时间信息内核负责计时,并由相关的API完成,从而使得用户的应用程序代码结构更简单。模块化、可拓展性强也正是由于第一点的原因,程序性能不易受底层硬件更改的影响。姐,各个任务是独立的模块,每个模块都有明确的目的,降低了代码的耦合性。效率高内核可以让软件完全由事件驱动,因次,轮询未发生的事件是不浪费时间的。相当于用中断来进行任务切换。中断进程更短通过把中断的处理推迟到用
2022-05-29 11:39:22
1776
原创 OpenCV+百度云人脸识别项目及源码
#include<iostream>#include "opencv2/opencv.hpp"#include "face.h"using namespace std;using namespace cv;using namespace aip;int main(){ VideoCapture cap(0);//初始化摄像头 if(!cap.isOpened())//打开摄像头 { cout<<"Camera open failed"<<endl
2022-05-19 14:39:21
1892
4
原创 树莓派3B刷机及调试出通过网络连接
在电脑中搜索Win32 Disk imager 这个工具,然后插上读卡器,找到对应的磁盘选择树莓派镜像2019-04-08-raspbian-stretch.img(稍后上传到我的资源中)大约会传5分钟左右,会提示成功,关掉这个软件即可通过读卡器进入到内存卡的文件中,需要做两件事,第一步是观点默认蓝牙改为串口,然后是改好串口对应的波特率,找到config.txt文件,在末尾加上dtoverlay=pi3-miniuart-bt再找到cmdline.txt文件,更改如下内容dwc_o..
2022-05-04 14:39:10
2393
原创 STM32最小系统使用FlyMcu烧写步骤
使用的是FlyMcu操作软件,首先搜索串口,点击搜索到之后选择,三个点选择即将要烧录的hex文件,找到STMISP,选择校验与编程后执行,将BOOT0置1(跳线帽变动),BOOT1不用管,下面选择DTR的低电平复位,RTS高电平进BootLoader,然后点击开始编程,如果软件无动作,可以按一下单片机上的按键,编程结束之后,将BOOT0置0。然后再按一下单片机中的按键及即可运行新程序了。...
2022-03-22 09:34:06
14539
原创 基于STM32下OLED显示实现文字取模软件配置
在做OLED显示实验时,文字很难编辑出对应的点,从网上找到了这个文字转换软件(需要可以私信我),以下是软件的配置项
2022-03-17 16:39:16
1839
原创 STM32控制GPIO完成点亮LED灯
1. 什么是GPIO:GPIO(General-Purpose IO ports,通用输入/输出接口),用于感知外界信号(输入模式)和控制外部设备(输出模式)。STM32F103C8T6一共有48个引脚,除去电源引脚、晶振时钟引脚、复位引脚、启动选择引脚、程序下载引脚(大部分为最小系统必须引脚),剩下的则是GPIO引脚。下图为STM32F103系列GPIO的基本结构,左侧连接MCU内部,中间上半部分为输入,中间下半部分为输出,右侧为MCU引出的外设I/O引脚。2. GPIO工作模式STM32
2022-02-19 17:55:10
15721
原创 ARM 与 STM32 的关系
ARM 与 STM32 的关系ARM介绍:总结 具有以下三种含义:ARM是一家全球半导体行业技术领先的公司,主要业务是设计RISC嵌入式处理器。ARM是一类微处理器芯片或产品的统称,即所有采用ARM公司提供方案开发的RISC处理器。ARM是一项技术的名称,即采用RISC的处理器体系结构。ARM公司发展史(图片由百问网提供支持)1978年,奥地利籍物理学博士HermannHauser,和他朋友,一位英国工程师ChrisCurry,共同创建了一家名为“Cambridge Process
2022-02-18 17:56:00
2645
原创 memset等动态内存管理函数举例
动态内存管理以mem开头的函数,初始化内存空间memset–使用一个常量字节填充内存空间memcpy–拷贝内存空间memmove–拷贝内存空间menchr–在内存空间中搜索一个字符#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 10int main(){ int *ptr = NULL; int i; ptr = (int *)malloc(N * sizeof
2021-08-01 17:48:37
220
原创 小浩编程:内存空间 malloc和free
malloc – 申请动态内存free – 释放动态内存calloc – 申请并初始化一系列内存空间realloc – 重新分配内存空间下面举例malloc和free#include <stdio.h>#include <stdlib.h>//因为用到了malloc和exit 和 freeint main(){ int *ptr; ptr = (int *)malloc(sizeof(int));//写不写(int *)都可以,因为malloc返回的类型是v
2021-07-29 22:38:42
151
原创 小浩编程:static简单举例应用
static应用举例#include <stdio.h>void func(void);void func(void){ static int count = 0; printf("count = %d\n",count); count++;}int main(void){ int i; for(i = 0; i < 10; i++) { func(); } return 0;}打印结果为0123456789#include &
2021-07-29 22:11:57
149
原创 小浩编程:指针函数和函数指针
用指针变量作为函数返回值:指针函数 int *p();#include <stdio.h>char *getWord(char);//函数声明,函数定义是需要声明的char *getWord(char c);//定义函数{ switch(c) { case 'A':return "Apple"; case 'B':return "banana"; default:return "None"; }}int main(){ char input; printf("
2021-07-26 22:30:14
147
原创 Python使用递归实现安诺塔游戏操作步骤
什么是汉诺塔? 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。def hanoi(n,x,y,z): if n ==1: print(x, '-->',z) else: hanoi(n-1,x,z,y)#将前n-1个盘子从x移动到y上 p
2020-12-09 12:17:23
183
原创 树莓派与语音模块实现开关小灯
源码#include <wiringSerial.h>#include <wiringPi.h>#include <stdio.h>#include <string.h>#include <unistd.h>#include <sys/time.h>#define SWITCHER 25//定义25口为继电器口int main (){ int fd; char cmd[128]={'\0'};
2020-10-18 15:35:52
944
1
基于STM32连接云平台查看温湿度功能代码
2024-07-26
基于STM32 将时间、温湿度、心率显示在OLED屏幕上
2022-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人