自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 突击蓝桥杯嵌入式(十二)——第十二届省赛第一场真题 停车场

所需:PA7 PWM LED(锁存器) 串口9600 LCD 按键4个,整体难在逻辑,我们先配置好硬件,进入工程PA7要求:2KHZ,初始化占空比0 串口一,打开接收中断首先我们大概想一下轮廓,首先一辆车进来,我们第一要判断他这个车在不在我们的停车场里,然后如果在的话,就给他结账,如果不在的话,我们需要判断现在停车场里是否有车位,如果有,则保存其信息,如果没有,则不管。先把八股文写一下:按键:LCDLED串口逻辑部分,先检查ID,在判断,是

2022-06-17 21:09:34 2444 13

原创 突击蓝桥杯嵌入式(十一)——长短按、EEPROM多字节、多数据类型读写

前言:今天是6.14,作业很多、考试很多,但考虑到6.18比赛,还是象征性的挣扎一下,国赛不考拓展版的话,只能是考一点比较阴间的东西,我感觉可能按键和EEPROM这方面他会作妖,所以今天浅浅的写一篇博文。首先我们先说一下思想:大概就是一个延时函数,然后根据按下的时间长短去判断,其实最好是用状态机,但是我水平有限,不会写,所以只能够用最普通的方法去做这个东西,能用,效果也凑合。声明变量区来个Scan函数Key进程二、EEPROM进阶读写先说存float,float,其实一般的小数,可以把他扩大100

2022-06-15 12:22:51 921 2

原创 龙芯教育派从零开始(一)——制作启动U盘、开启SSH服务、下载Loongpio库

本人参加了全国大学生嵌入式芯片与系统设计大赛龙芯赛道,所选取的芯片是龙芯教育派,由于各种考试和其他比赛冲突,于6月2日正式开始一个写这个学习记录,确实是有些晚了,7月15日要提交作品,希望在有限的时间里突击一下。首先说以下需求,我们需要在龙芯教育派上识别人脸,并且在识别之后用GPIO口传数据给其他的设备,接下来我们就围绕着这个目标去开始我们的开发之旅吧。据交流群的小伙伴反馈,组委会发送的龙芯教育派第一次上电会有如下现象:风扇转、电源正常、滴滴响、HDMI无信号输出,如果你出现这些个现象,那么恭喜你,你可能需

2022-06-03 22:34:00 5213 13

原创 蓝桥杯嵌入式第十三届第二场真题代码分享——可能无缘国赛了

楼主这里个粗心的小bug,就是题目要求KEY3增加购买数量的时候,如果超出购买数量应该回到0,也就是0-库存数-0,而楼主写成了0-库存-库存,没错,会直接锁死,呜呜呜,可能无源国赛了,各位友友努力吧。/* USER CODE BEGIN Header *//** ****************************************************************************** * @file : main.c * @brief

2022-05-14 19:42:14 529 2

原创 突击蓝桥杯嵌入式(十)——巩固训练,第十一届省赛第一场真题

突击蓝桥杯嵌入式(十)——巩固训练,第十一届省赛第一场真题一、题干二、题目解析配置任务:1.ADC:测量R37电压2.LED:配置锁存器3.按键3个变量声明uint8_t str[21];__IO uint32_t uwTick_KEY_Speed;__IO uint32_t uwTick_LCD_Speed;__IO uint32_t uwTick_Check_Speed;uint8_t key_value;uint8_t key_old;uint8_t key_

2022-05-13 09:00:16 602

原创 突击蓝桥杯嵌入式(九)——康复训练,第十一届省赛第二场真题

突击蓝桥杯嵌入式(九)——康复训练,第十一届省赛真题好长时间不敲代码,做个康复训练一、题干二、赛题解析我们先确定一下需求:按键:PB0 PB1 PB2 PA0LED:把锁存器配置好PWM输出:PA6,PA7 输出比较ADC测量: PB15逻辑没啥难度,难点就是输出比较,我上篇有写过//变量声明区__IO uint32_t uwTick_KEY_Speed;__IO uint32_t uwTick_LCD_Speed;__IO uint32_t uwTick_change_

2022-05-11 21:15:02 229 3

原创 突击蓝桥杯嵌入式(八)——逻辑分析仪使用、同一定时器发出不同频率的两路方波

突击蓝桥杯嵌入式(八)——逻辑分析仪使用、同一定时器发出不同频率的两路方波引言:由于当地疫情原因,笔者参加的是第十三届第二场的省赛,然后以线上形式进行,由于家里没有示波器,所以查看方波波形需要用到逻辑分析仪,这篇主要是介绍一下逻辑分析仪的使用,以及如何用同一定时器发出不同频率和占空比的PWM信号(输出比较)。一、输出比较不多废话,我们直接上定时器配置,需要注意以下几点:首先,把你想要输出信号的引脚,设置为图里的输出比较模式,然后配置预分频系数,由于笔者时钟频率设置的是80MHZ,所以这里填写了80-

2022-05-09 21:06:51 1205

原创 用OpenCV-Python自带的LBPH识别器实现简单人脸识别(下)

用OpenCV-Python自带的LBPH识别器实现简单人脸识别(下)本文主要是代码展示,如果想看详细教程请移步(上)篇1.数据的收集#使用之前请现在根目录创建data文件夹,然后改你自己的分类器路径#使用方法,填入ID号和姓名,然后看摄像头就行def get_data(id,name): camera = cv2.VideoCapture(0) flag, img = camera.read() face_cascade = cv2.CascadeClassifier

2022-05-02 16:00:58 3056

原创 用OpenCv-Python自带的LBPH识别器实现简单人脸识别(上)

用OpenCv-Python自带的LBPH识别器实现简单人脸识别(上)引言:本文开发环境为: Windows10 + phchram + Anaconda5.2 (Python3.6)+ Opencv4.5.5,用opencv-contrib原生的API完成了人脸识别的功能,其可以任意添加人脸ID数据,但其效果比较差(勉强能用),如果日后有时间的话,给大家出一期(挖坑)利用基于paddle人脸识别教程。特别注意:上篇只是一个大致流程和核心API的讲解,其含有大量细节未补充,如果有copy需求,请看下篇

2022-05-02 14:38:09 5125

原创 突击蓝桥杯嵌入式(七)——第十三届省赛第一场真题

突击蓝桥杯嵌入式(七)——第十三届省赛第一场真题二、思路梳理我们直接在LCD例程的基础上,改需增加的外设如下:LED灯(配置锁存器PD2),串口(波特率9600,带中断),按键4个,PWM输出。题目较为简单,其逻辑部分如下:上电之后,板子初始化,LCD显示为@@@,默认密码为123,PWM脉冲输出1KHZ的方波信号,然后开启串口接收中断(7个数据进入中断),然后中断里对于字符串进行处理,利用ssanf分离出输入的初始密码和新密码,然后对比密码是否正确,如果错误,则不改变

2022-04-24 18:26:17 3082 3

原创 VSCODE+Arduino生态快速入门ESP32(二)——微信小程序点灯(上)

VSCODE+Arduino生态快速入门ESP32(一)——微信小程序点灯(上)概述:本文(上)包含的内容有:ESP32端连接WIFI并分配静态IP地址并通过UDP通信接受小程序传来的消息1.ESP32端连接WIFI并分配静态IP地址(1)WIFI配置函数IPAddress staticIP(192, 168, 0, 113);IPAddress gateway(192, 168, 0, 1);IPAddress subnet(255, 255, 255, 0);IPAddress dns(1

2022-04-16 20:17:42 3632 5

原创 VSCODE+Arduino生态快速入门ESP32(一)——点个呼吸灯、开个定时器

VSCODE+Arduino生态快速入门ESP32(一)——点个呼吸灯、开个定时器我手里这块是ESP32WROOM开发板,20多块钱,性价比非常高。1.环境搭建环境搭建就不在此赘述,CSDN上的大佬写的都很详细,我使用的环境为VSCODE + PlatformioIDE + Arduino 开发,搭建环境是一件十分耗时间的事情,笔者即使用了魔法,也整整花了快一天的时间,所以各位小伙伴一定要耐心。2.呼吸灯笔者手上的这块WROOM开发板上的LED对应的引脚为D2,然后我们简单介绍一下ESP32上PW

2022-04-12 16:20:48 5923 3

原创 突击蓝桥杯嵌入式(六)——第十届省赛真题

突击蓝桥杯嵌入式(六)——第十届省赛真题一、题干二、题目分析考点1.ADC(没啥好说的) 占用引脚PB15(R37)考点2:按键4个(PB0,PB1,PB2,PA0)考点3:LCD,高亮考点4:LED点灯三、程序编写直接在自带的LCD例程上改,CUBEMX增加按键、ADC,锁存器PD2,然后开始编写程序,先把模板都写出来。按键的:uint8_t Key_Scan(){ static uint8_t key_value; if(HAL_GPIO_ReadPin(GPIOB,G

2022-04-08 17:50:54 2546

原创 突击蓝桥杯嵌入式(五)——EEPROM、RTC时钟、PWM输出和捕获和点灯改进版

突击蓝桥杯嵌入式(五)——EEPROM、RTC时钟、PWM输出和捕获和点灯改进版一、PWM捕获频率和占空比PWM捕获,首先我们看新板子上的2个信号发生器 分别占用PB4和PA15然后我们配置CUBEMX,先选中PB4,TIM_CH1.然后左面选择定时器3,选择PWM Input on CH1,时钟源选择内部时钟配置预分频,然后开启定时器3终端。然后配置时钟80MHZ,生成代码,然后我们介绍一下怎么获取占空比和频率。先开启中断: HAL_TIM_IC_Start_IT(&hti

2022-04-08 16:59:54 2294

原创 突击蓝桥杯嵌入式(四)——滴答定时器、按键的三行代码消抖、LCD与ADC

突击蓝桥杯嵌入式(四)——滴答定时器、按键的三行代码消抖、LCD与ADC1.滴答定时器定时运行我们利用滴答定时器,让LED每隔1s闪烁一次//首先我们定义一个变量__IO uint32_t uwTick_LED_Speed_Ctrl;//然后写LED闪烁的子函数int flag = 1;void LED_Proc(void){ if((uwTick - uwTick_LED_Speed_Ctrl)<1000) return; //每隔1s运行一下(1000ms) uwTick

2022-03-31 13:29:57 4843 4

原创 突击蓝桥杯嵌入式(三)——串口收发

突击蓝桥杯嵌入式(三)——串口收发(以第十二届蓝桥杯真题停车场串口部分为例)本文的话主要练习串口的收发,包括串口发送,接收数据的处理,我们还是简单的实现一个小例子,题目如下:设计一个有8个车位的停车场装置,通过串口来分辨车辆的进出和待de1时间,如果车辆出去,就用串口发送收费情况(一小时2块,未满一个小时按照一个小时算)和时间,例子如下:A01202203191500 表明编号为A01的车辆在2022年3月19日下午15时进入停车场。A01202203191800 表明编号为A01的车辆在2022年

2022-03-22 15:00:36 2454

原创 突击蓝桥杯嵌入式(二)——LED灯、按键、外部中断

突击蓝桥杯嵌入式(二)——LED灯、按键、外部中断此节主要为基本环境搭建,如何使用CUBEMX配置工程文件、如何调试仿真器等,本节需要实现的功能如下:配置2个LED和2个按键,按下第一个按键后,led1亮,按下第一个按键后,LED2亮一、CUBEMX基本配置首先明确我们需要的外设为,2个LED、2个按键(使用外部中断)首先搜索STM32G431RB,并选择RBTxLED灯(PC8-PC15)KEY(PA0,PA8,PB1,PB2),锁存器(PD2)配置用户标签下降沿检测(GND)

2022-03-22 15:00:09 5312 1

原创 突击蓝桥杯嵌入式(一)——内容概览

突击蓝桥杯嵌入式(一)——内容概览​ 蓝桥杯嵌入式省赛的时间为4月9日,离写这篇文章时只剩下20天左右的时间,期间我们需要掌握基本的外设使用、并且做一下近几年真题,还需要复习一下客观题,争取拿到大概百分之70以上的分数,拿到国赛资格。​ 首先我选择的是新款的竞赛板子,STM32G431RBT6,配合使用CUBEMX进行开发,首先我们从第十二届的真题来研究需要掌握的硬件外设。他要求我们设计一个停车场收费系统,有8个车位,2种车辆类型,并且用串口接受停车场车辆的出入信息并计费输出。这道题相比于往年题来

2022-03-22 14:56:25 2290 2

原创 基于CUBEMX和STM32C8T6的同轴麦轮小车制作(三)——麦克纳姆轮运动学原理及速度解算。

基于CUBEMX和STM32C8T6的同轴麦轮小车制作(三)——麦克纳姆轮运动学原理及速度解算。摘要:本文如标题,分为2个部分,一个是关于麦克纳姆的为什么可以进行全向移动,一个是如何通过分析通过各轮子单独转速来合成底盘整体的运动速度。1.麦轮运动学原理​ 首先我们要明确一点,那就是轮子之所以会和地面发生相对移动,是因为它收到了地面给他的静摩擦力,我们可以想象一个轮子,如果它朝前转动,那么轮子底部与地面接触的那一点,其相对于地面是向后运动的,也就是其摩擦力是向前的,是与运动方向相同的。下面我们带入到

2022-03-08 22:32:01 3679

原创 基于CUBEMX和STM32C8T6的同轴麦轮小车制作(二)——HAL库接受jy61p陀螺仪数据,并解决数据溢出卡死问题。

基于CUBEMX和STM32C8T6的同轴麦轮小车制作(二)——HAL库接受jy61p陀螺仪数据,并解决数据溢出卡死问题本文利用STM32C8T6中的串口1于JY61P实时通信,并用串口2将其角度打印出来,期间遇到了串口数据溢出卡死的问题,在编写ORE错误回调函数后得到有效解决,其分为CUBEMX基本配置、函数编写、效果展示3个部分。一、CUBEMX基本配置1.配置串口1、2,此处要注意串口1的波特率要和JY61P的一致(默认是9600,具体可以在上位机中调节),开启串口1的接收中断。2.配置时

2022-02-28 12:53:19 5898 30

原创 基于CUBEMX和STM32C8T6的同轴麦轮小车制作(一)——整体框架构思

基于CUBEMX和STM32C8T6的同轴麦轮小车制作(一)——整体框架构思一、摘要拟设计一款两轮的麦轮平衡车,可以实现全向移动(但是不能转弯23333),具体实现功能为:(1)保持直立(PID调节,角度环、速度环)需要的参量:角度环PD调节:角度(陀螺仪),角加速度(陀螺仪)速度环PI调节:速度(编码器),速度积分(编码器)(2)全向移动:需要的参量:平移环PD调节:横向速度(通过编码器反馈值解算),加速度(陀螺仪)(3)可以遥控:HC-05蓝牙模块,改变目标前进速度、平移速度。(

2022-02-28 12:49:38 4974 2

原创 ROS学习(二)——服务通信的C++实现

ROS学习(二)——服务通信的C++实现.引言:本文分为三个部分,分别为服务通信的理论模型、自定义srv文件的导入以及服务端和响应端对应的C++实现。一、服务通信理论模型服务通信的理论模型与单片机的中断模式类似,我们先将服务端程序挂起,然后只有当客户端发出请求的时候,服务端才会响应,调用对应的回调函数。在这里我们也举一个比较简单的例子:服务端进行加和运算,把客户端发来的两个数字求和并输出。二、自定义srv文件的导入在本例子中,我们需要3个变量:即客户端要输入的2个数字num1,num2,以及服务端

2022-02-17 23:19:34 1106

原创 ROS学习(一)——话题通信的C++与Python实现

ROS学习(一)——话题通信的C++与Python实现引言:本文分为三个部分,分别为话题通信的理论模型以及其C++与Python的实现代码。一、理论模型在我们的实际使用中,需要注意的几个东西就是以下几个概念:(1)话题。(2)订阅。(3)发布。他们其中的关系我们可以用一个例子来表述:假设我们现在正在相亲,我们和女方聊天,现在我们提出了一个问题:“结婚以后房子写谁的名字?”,那么我们这时候的话题就是“房子”,我们就是发布方,而接话的女方就是订阅方。二、C++实现1、发布实现:C++的发布代码分为

2022-02-07 20:51:24 1491

原创 工训备赛日志(三)——基于PaddleLite的垃圾分类模型在树莓派上的部署

工训备赛日志(三)——基于PaddleLite的垃圾分类模型在树莓派上的部署引言:笔者用树莓派4B,在OpenCv和PaddleLite2.8环境下,将之前训练好的模型成功部署,本文内容分为四个部分,分别是:树莓派4B环境搭建、模型的转换、模型部署、结果演示四个部分。目录:一、树莓派4B环境搭建1.OpenCv-Python安装2.PaddleLite源码编译安装二、模型转换三、模型部署一、树莓派4B环境搭建1.OpenCv-Python安装.安装依赖:sudo apt-get ins

2022-01-27 23:07:31 2386 7

原创 工训备赛日志(二)——上位机与stm32之间的一种简易通信方式

工训备赛日志(二)——上位机与stm32之间的一种简易通信方式一、摘要上位机检测到物体之后,要将信号传递给控制底层的STM32,这里提出了一种基于读取电平和外部中断的简易通信方式。此方法占用五个GPIO口,其作用分别如下:上位机检测到垃圾种类之后,进入while循环,改变1,2,3,4位的电平信号,下位机检测到电平之后读取2、3、4位的数据信号,并控制舵机的的旋转角度,转完复位之后,改变0位电平信号,触发上位机外部中断,进行下一次检测。二、上位机伪代码:import RPi.GPIO as

2022-01-09 12:30:16 1531

原创 工训备赛日志(一)——利用PaddleX与Paddle inference在windows环境下实现简单垃圾分类

工训备赛日志(一)——利用PaddleX与Paddle inference在windows环境下实现简单垃圾分类此节分为以下几个部分一、数据集准备二、利用PaddleX-gui训练模型三、利用Paddle inference部署四、结果测试一、数据集准备笔者准备了电池、瓶子、易拉罐、陶瓷、香烟、水果、水果皮、蔬菜、蔬菜皮共计九种类型的垃圾图片,并将其放在以各自名字命名的文件夹下。Mydate--Battery--Bottle--Cans--Ceramics--Cigarette-

2022-01-05 16:06:03 1935 1

适配PaddleX的垃圾分类数据集

包含电池、瓶子、易拉罐、陶瓷、香烟、水果、水果皮、蔬菜、蔬菜皮的训练图片,利用PaddleX训练出的模型精度可以达到百分之95左右

2022-01-05

空空如也

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

TA关注的人

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