- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 Github Pages 搭建网站
个人站点访问https://用户名.gitub.io搭建步骤1. 创建个人站点 ->新建仓库(仓库名必须是【用户名.github.io】)2. 在仓库下新建index.heml文件即可3. Github pages仅支持静态网页仓库里面只能是heml文件Project pages 项目站点https://用户名.gitub.io/仓库名搭建步骤1. 进入项目主页,点击settings2. 在settings主页点击【】...
2021-09-03 20:50:42
295
原创 蓝桥杯嵌入式模块练习之扩展版MEME
三轴传感器PA4~7都不能作为其他用处,三周传感器需要使用到这四个引脚资源当然,如果不用中断,也可以只结PA4,5,PA6,7可接到温度传感器和温湿度传感器。这个外设的通信协议也是I2C跟我们之前说到的E2PROM一样,所以我们就轻车熟路了。主要是以下两点:更改I2C驱动里的SDA和SCL引脚正确配置三轴传感器修改I2C的引脚定义:i2c.c:#define I2C_PORT GPIOA //********记得修改#define SDA_Pin GPIO_Pin_5
2021-05-07 17:40:25
335
原创 Openmv学习day2——AprilTag
仅作为个人学习,原文地址:链接: link.AprilTag的简介AprilTag是一个视觉基准系统,可用于各种任务,包括AR,机器人和相机校准。这个tag可以直接用打印机打印出来,而AprilTag检测程序可以计算相对于相机的精确3D位置,方向和id。AprilTag的种类AprilTag的种类叫家族(family),有下面的几种:TAG16H5 → 0 to 29TAG25H7 → 0 to 241TAG25H9 → 0 to 34TAG36H10 → 0 to 2319TAG36H
2021-04-22 20:42:12
2339
原创 Openmv学习day1——色块识别
find_blobs函数image.find_blobs(thresholds, roi=Auto, x_stride=2, y_stride=1, invert=False, area_threshold=10, pixels_threshold=10, merge=False, margin=0, threshold_cb=None, merge_cb=None)参数较多,详细介绍见https://book.openmv.cc/image/blob.html返回色块的属性。blobs = im
2021-04-22 20:22:48
2658
3
原创 蓝桥杯嵌入式模块练习之定时器捕获
使用固件库,路径为STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\TIM\InputCapture开启时钟,这里用PA1捕获,使用TIM2的通道2.配置相关引脚,设置中断优先级。进行捕获设置,这里还需要配置定时器,下面代码会贴出。u8 tim2mode;u32 IC3ReadValue1;u32 IC3ReadValue2;void gpioinit(){ GPIO_InitTypeDef GP
2021-04-15 21:23:36
139
原创 蓝桥杯嵌入式模块练习之比较输出PWM
使用固件库,路径为STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\TIM\OCToggle先打开时钟,这里我们使用PA6,PA7输出比较PWM对相关引脚配置设置中断优先级,之前还得设置中断优先级分组。配置相关定时器和比较输出使能相关定时器和中断前记得清零定时器和比较值。写好的比较pwm配置如下void pwminit(u32 ch1fre,u32 ch1duty,u32 ch2fre,u32 c
2021-04-11 17:55:27
321
原创 蓝桥杯嵌入式模块练习之USART
使用固件库,路径为STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\USART\Interrupt当然还要开启相应的时钟和配置引脚我们就不需要复用引脚了,使用USART2,PA2为TXD,PA3为RXD当然我们让接收中断还得进行中断设置再到中断函数中找中断服务函数修改过后初始化函数如下void usartinit(){ USART_InitTypeDef USART_InitStructure;
2021-04-10 21:35:18
231
原创 蓝桥杯嵌入式模块练习之ADC
使用嵌入式比赛的资源包。路径为6-STM32固件库代码V3.5版\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\ADC\ADC1_DMA找到main.c打开之前还要定义PB0的模式和开启时钟,整个配下来代码如下void adcinit(){ ADC_InitTypeDef ADC_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2P
2021-04-08 21:28:01
259
原创 蓝桥杯嵌入式模块练习之RTC
直接使用嵌入式比赛的资源包。路径为STM32固件库代码V3.5版\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\RTC\LSI_Calib找到main.c打开直接复制这些到自己的初始化函数中,此外还需要配置RTC中断同样我们找到配置抢占和子优先级可根据自己需要接下来需要设置初始时间,根据自己需要RTC_SetCounter(23*3600+59*60+50); //初始时间为23:59:50
2021-04-06 19:49:19
384
原创 蓝桥杯嵌入式模块练习之点亮LED&KEY
LED原理有单片机基础就很简单了,上原理图。573锁存器使能端为PD2,当PC8-PC15为低电平,且573锁存时LED点亮。初始化LED代码如下,先关闭所有LED。void ledinit(){ GPIO_InitTypeDef GPIO_InitStructer; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOD,ENABLE);//PD2 PC8-PC15 GPIO_InitStructer.GPI
2021-02-18 21:03:53
419
原创 蓝桥杯嵌入式模块练习之新建工程
蓝桥杯嵌入式比赛系列1新建工程STM32工程文件建立找到固件库V3.5版本建一个文件夹,里面建四个文件夹,分别取名CORE,FWLIB,USER,OUTPUT。接着在相应文件夹添加文件先找启动文件在固件库文件夹下点击Libraries\STM32F10x_StdPeriph_Driver将inc和scr文件夹复制到FWLIB中接着返回Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x将三个.c文件复制到USER文件夹。接着点击ST\STM32F1
2021-02-16 21:55:19
417
原创 蓝桥杯单片机模块练习之频率测量
蓝桥杯单片机比赛系列9频率测量频率测量原理相关电路频率测量实现代码频率测量原理相关电路频率测量使用器件是NE555。使用时需将P34与SIG引脚相连。用板子上一个不用的跳线帽,比如红外线连接P34和NET SIG。频率测量实现代码我们直接对着代码讲解吧,下面给出数码管显示频率测量的代码。使用两个定时器,一个定时5us,一个计时10ms。假设单片机晶振为12MHz,15单片机机器周期为12MHz.1s中只有10ms开启定时器0,定时器0每5us判断P34引脚的高低电平,来判断是NE555
2020-11-30 21:45:30
1494
原创 蓝桥杯单片机模块练习之超声波
蓝桥杯单片机比赛系列8超声波超声波原理相关电路超声波实现代码超声波原理相关电路200k的R5决定了超声波为40k左右。上图为超声波驱动电路。注意电路板上J2跳线帽1和3,2和4相连为超声波模式,3和5,4和6相连为红外线模式,不过考试现在还没考过红外线。超声波实现代码我们直接对着代码讲解吧,下面给出数码管显示测量距离的代码。首先定义了发送和接收引脚P10,P11;开了两个定时器,定时器0计200ms为超声波测距离更新,定时器1用来计算超声波来回时间,进而算出距离。传统51单片机中定
2020-11-30 20:37:45
1002
原创 蓝桥杯单片机模块练习之AD/DA
蓝桥杯单片机比赛系列AD/DA转换AD/DA原理相关电路pcf8591器件地址代码解释修改代码AD自写代码ADDAAD/DA原理相关电路通过pcf8591芯片实现ad转换。板子上ad采集主要采集滑动变阻器的电压值和与光敏电阻串联电阻的电压值。ad为8位精度,采集电压0-5V对应的值为0-255。根据需要可以对读取的值进行调整。da也通过pcf8591输出,对应引脚在外部引出,在20PIN中19位。da为8位精度输出,输出0-255对应电压0-5V。pcf8591与单片机的通讯协议是iic。i
2020-11-30 17:33:11
3058
1
原创 蓝桥杯单片机模块练习之EEPROM
蓝桥杯单片机比赛系列7EEPROMEEPROM原理相关电路AT24C02器件地址EEPROM自写代码EEPROM原理相关电路有了系列6的基础,上手eeprom就简单多了,板子上对应的器件是AT24C02。AT24C02器件地址AT24C02是2KROM的 eeprom。地址对应第一个。EEPROM自写代码unsigned char readeeprom(unsigned char add){ unsigned char temp; IIC_Start(); IIC_SendByte
2020-11-30 17:32:52
825
1
原创 蓝桥杯单片机模块练习之实时时钟RTC
蓝桥杯单片机比赛系列5实时时钟RTCRTC原理相关电路时钟寄存器代码解释修改代码自写代码实现代码RTC原理相关电路实时时钟芯片采用DS1302,需要三个引脚和单片机相连。DS1302有自己的指令协议。操作DS1302大致过程,就是将各种数据写入DS1302的寄存器,以设置它当前的时间格式。然后使DS1302开始运作,DS1302时钟会按照设情况运转,再用单片机将其寄存器内的数据读出。时钟寄存器我们只关心时分秒,后面的操作只涉及时分秒。由图可知时分秒分都将十位和个位分开,个位放在低四位,十
2020-11-29 12:27:13
401
原创 蓝桥杯单片机模块练习之温度传感器DS18B20
蓝桥杯单片机比赛系列4温度传感器DS18B20温度传感器DS18B20原理相关电路onewire总线几个需要知道的暂存器和命令代码解释修改代码自写代码实现代码温度传感器DS18B20原理相关电路DS18B20遵循onewire总线协议,只需一根线即可与单片机进行通讯。onewire总线onewire总线具体概念等这里不展开叙述,只讲比赛相关的内容。竞赛中资源包里有头文件onewire.h和源文件oneire.c。只需进行修改即可操作DS18B20传输温度数据。几个需要知道的暂存器和命令DS
2020-11-29 09:25:27
3601
10
原创 蓝桥杯单片机模块练习之按键扫描
蓝桥杯单片机比赛系列3按键扫描按键扫描原理及实现在独立键盘模式时,要将J5跳在BTN模式。也就是J5中2,3短路。此时S7,S6,S5,S4一端直接接地,一端连接P30,P31,P32,P33。按键按下时P30,P31,P32,P33都为低电平。在程序中判断即可,为了防止抖动造成误判,要加延迟。代码如下。void keyscan(){ if(P30==0) { delay(5); if(P30==0) { //S7动作 } while(!P3
2020-11-20 11:08:40
734
原创 蓝桥杯单片机模块练习之点亮数码管
蓝桥杯单片机比赛系列2数码管显示数码管原理蓝桥杯单片机板子上的数码管是共阳管,com公共端接高电平,相关段abcdefgdp给低电平可点亮相应字段。abcdefgdp八段对应P0端口8位。相关码值对应可在蓝桥杯单片机比赛资源包中找到,如下所示。数字P0 Value00xc010xf920xa430xb040x9950x9260x8270xf880x8090x90段选位选U7控制段选,U8控制位选
2020-11-19 22:04:56
901
原创 蓝桥杯单片机模块练习之关闭外设
蓝桥杯单片机比赛系列**1初探关闭外设**关闭LED关闭继电器和蜂鸣器关闭LED本节将会介绍板子上的最简单最基础的部分。比赛一般上来需要关闭无关外设,蓝桥杯的板子比较特殊,51上电默认P0,O1,P2,P3都是高电平,打开电源开源的一瞬间程序还没走上,可能会开启板子上连接的发光二极管(led),继电器(relay),蜂鸣器(beep),之后会根据走的程序决定是否开启,我们现在要在程序里面把他们都关闭。先看LED的相关电路,可以看出51单片机的P3^6引脚就是WR,上电为高电平。由板子上跳线帽I
2020-11-19 17:34:53
1980
原创 蓝桥杯单片机大赛
第十一届蓝桥杯单片机比赛心得前期的准备十月份省赛十一月份国赛错过结果发布想要做一点事情,传承前期的准备本次蓝桥杯大赛由于疫情原因延迟了将近7个月举行,原先是3月份举行,拖到了10月份,本人在寒假的时候早就已经准备好了,国赛省赛题目都刷过一遍了,然而一拖再拖,很难受。。。首先要看懂蓝桥杯单片机的原理图,分模块看懂,这里先上完整的图,在后面的模块分析编程实现中具体解释。十月份省赛我是在江苏省参加的蓝桥杯单片机比赛,考点在金陵科技学院。从学校坐地铁将近两个小时,吐了。比赛进场也比较随意,甚至我不提要
2020-11-17 22:18:52
3713
9
STC单片机原理及应用
2020-11-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人