蓝桥杯备赛题解(小蜜蜂)(二)
必备基础技能训练15 项
【基础08】外部中断的基本操作
新建工程,以I/O 模式编写代码,在CT107D 单片机综合训练平台上,实现以下功能:
1、将CT107D 上J5 处跳帽接到2~3 引脚,使S4 和S5 按键一端接地,S4 按键的另一端接到单片机的P32/INT0 引脚,S5 按键的另一端接到单片机的P33/INT1 引脚。
2、系统上电后,关闭蜂鸣器,关闭继电器,关闭8 个LED 灯。
3、控制L1 指示灯循环闪烁。
4、将P32/INT0 引脚定义成外部中断,下降沿触发,使能相关中断控制位。即按下S5按键就会产生一个外部中断触发信号,进入外部中断服务函数。
5、在外部中断服务函数中,点亮L8 指示灯,延时片刻后,熄灭。
实现代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081#include "re ...
阿里云图床搭建
一、登录阿里云
注册、登录、实名认证
二、购买对象存储OSS
在产品中找到对象存储OSS
我是新用户,这里先购买三个月的使用期
三、开通对象存储服务 OSS
四、创建bucket
选择左侧的bucket列表,然后选择右侧的创建Bucket
HDFS、版本控制、服务端加密方式、实时日志查询、定时备份 都不开通,不然需要另外收费
地域结点只要复制 oss-cn-beijing 即可,后面的.aliyuncs.com不需要;后面会用到这个地域结点
五、获取AccessKey
在弹出的页面里,记住你的 accessKeyId 和 accessKeySecret
六、下载配置PicGo
下载:Releases · Molunerfinn/PicGo (github.com)
图床设置:
设定Keyld:填写刚刚获得的AccessKeyID
设定KeySecret:填写AccessKeyIDSecret
设定Bucket:填写bucket名称,这里填写的是你所创建的bucket名字,不是浏览器里的域名
确认存储区域:填写你的 ...
蓝桥杯备赛题解(小蜜蜂)(一)
必备基础技能训练15 项
【基础01】LED 指示灯的基本控制
新建工程,以I/O 模式编写代码,在CT107D 单片机综合训练平台上,实现以下功能:
1、系统上电后,关闭8 个LED 灯。
2、循环实现LED 跑马灯控制,控制要求为:
首先,8 个LED 灯同时闪烁3 次;
然后,从L1 灯至L8 灯依次点亮;
接着,从L1 灯至L8 灯依次熄灭
代码实现:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#include <REG51.H>sbit HC138_A = P2^5; // 74HC138的A引脚sbit HC138_B = P2^6; // 74HC138的B引脚sbit HC138_C = P2^7; // 74HC138的C引脚void Delay(unsigned int t) // 延迟函数{ unsigned char i, j; while (t > 0) { ...
VSCode开发51单片机
一、安装插件(EIDE)
二、配置Keil C51路径
三、新建项目
建立8位MCU项目
四、修改编译器
五、创建文件夹
创建一个存放代码的文件夹,并将其添加到项目中
六、新建文件,进行测试
正常方式在SRC文件夹下创建文件
编译
使用烧录软件将生成的hex文件下载
流水灯代码
12345678910111213141516171819202122232425262728#include <REG51.H>#include <intrins.h> void Delay(unsigned int t) // 延迟函数{ unsigned char i, j; while (t > 0) { i = 2; j = 239; do { while (--j) ; } while (--i); t--; }}void mai ...
部署和添加域名
一、Netlify建站
1.1 注册
去官网进行注册Netlify
绑定自己的GitHub账号
1.2 导入GitHub仓库
根据提示操作进行,一切默认
1.3 查看部署好的网站
我的通过Netlify部署完是:yhhomea.netlify.app【这里还没有绑定自己的域名,下图的已经绑定域名】
现在打开Netlify部署的网址打开速度较慢,后面通过使用ClouldFlare CDN加速来提高访问速度
二、配置域名
2.1 购买域名(新用户1元一年)
这里推荐新用户购买
在购买域名前,要先进行实名认证
根据提示进行实名认证
2.2 域名解析
打开阿里云域名控制台,找到自己购买的域名
根据下图继续,添加两条解析
2.3 Netlify中添加自己的域名
三、ClouldFlare加速
3.1 注册Clouldflare并登陆
这里可能需要挂梯子
3.2 添加站点
3.3 阿里云配置DNS
找到下图所示的两个NS
进入阿里云域名控制台,找到你购买的域名,点击管理
完成后点击确定
3.4 等待clouldflare确定邮 ...
个人博客搭建
环境准备:
1.安装git
2.安装node.js
3.最好下载一个代码编辑器(例如:VScode、Sublime Text、notepad++等)
一、安装HEXO
打开cmd,输入以下命令
1npm install hexo-cli -g
报错及解决方法
参考这篇博客,文档的权限进行提升:
(2条消息) npm安装报错(npm ERR! code EPERM npm ERR! syscall mkdir npm ERR! path C:\Program Files\nodejs\node_ca…)_晴雷的博客-CSDN博客
如果发现,根据博客里面的步骤进行更改时,无法修改某一文档的权限时,根据报错时的提醒,单独修改某一文件夹的权限
二、初始化化文件夹
2.1 选择一个盘,创建一个blog文件夹
2.2 通过cmd窗口,切换盘符,进入该文件夹
2.3 初始化
在blog文件夹下输入以下指令
1hexo init
如果出现以下错误
多试几次,网络原因,克隆失败(可以直接开加速器或者挂梯子)
出现Start blogging with Hexo!表示初始化成功
三、搭 ...
ADC模数转换器
ADC模数转换器
ADC(Analog-Digital Converter)模拟-数字转换器
ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁
DAC是数字-模拟转换器,但是PWM比DAC简单好用,一般使用DAC驱动电机,目前DAC主要应用于波形生成领域
12位逐次逼近型ADC,1us转换时间
分辨率:0 ~ 2^12^ -1,即0 ~ 4095 ,位数越高量化结果越精细,分辨率越高
输入电压范围:0 ~ 3.3V,转换结果范围:0 ~ 4095
18个输入通道,可测量16个外部和2个内部信号源
STM32F103C8T6 ADC资源:ADC1、ADC2,10个外部输入通道
规则组和注入组两个转换单元
一次启动一个组,可以连续转换多个数据
模拟看门狗自动监测输入电压范围
检测指定通道,当数值超出阈值时,自动申请中断,无需手动在主函数中进行判断
一、逐次逼近型ADC
二、ADC框图
2.1完整框图
2.2 分析
2.3 输入通道对应引脚
通道
ADC1
ADC2
ADC3
通道0
PA0
PA0
P ...
定时器
一、TIM定时中断
定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断
例:stm32中定时器的基准时钟一般是72MHZ,【周期是频率的倒数1T = 1/72us】,如果计数72个,就是1us,计数72000个,就是1ms
16位计数器、预分频器、自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时
计数器:进行计数的寄存器,每来一个时钟,计数器加一
预分频器:对计数器时钟进行分频
自动重装寄存器:计数器的目标值,设定计多少数申请中断
2^16^=65536 预分频器和自动重装寄存器设置最大,定时器时间最大为59.65s【1/(72MHZ/65536*65536)】
不仅具备基本的定时中断功能,而且还包含内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等多种功能
根据复杂度和应用场景分为了高级定时器、通用定时器、基本定时器三种类型
二、定时器类型
类型
编号
总线
功能
高级定时器
TIM1、TIM8
APB2
拥有通用定时器全部功能,并额外具有重复计数器、死区生成、互补输出、刹车输入等功能
通用定时器
TI ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick Start
Create a new post
1$ hexo new "My New Post"
More info: Writing
Run server
1$ hexo server
More info: Server
Generate static files
1$ hexo generate
More info: Generating
Deploy to remote sites
1$ hexo deploy
More info: Deployment