- 博客(34)
- 收藏
- 关注
原创 配置x86环境下的MASM 能直接在windows11上运行一步到位
解决MASM在x86环境下编译后的程序能在windows下快捷如果有用请加个星星吧。
2024-10-25 11:00:49 204
原创 一个简单的个人博客管理平台适合新手学习(最底下有github链接)
左边为文章界面点击文字名字就能进行阅读右边为热门博客功能能够实时统计前五名博客热度并且将前三名展示在卡片中(卡片上的时间为该文章的创建时间)允许检索内容和模糊搜素以及统计热度。
2024-09-25 20:49:25 459
原创 一个自动登入校园网脚本简单案例
江西理工大学校园网自动登入脚本(电信登入脚本,其他脚本可以通过复制请求时候的链接改(不过好像差不多可能浏览器有缓存选项的功能?玄学!))
2024-09-10 14:25:30 493
原创 2024年用scrapy爬取BOSS直聘的操作
query = ""# 检查文件是否存在,如果不存在则创建一个空文件pass#此处省略#此处省略try:qe = input('请搜索岗位和城市id(空格隔开):').split(' ')query=
2024-07-03 19:58:12 1375 3
原创 stm32中的SDIO
要使用 SD 卡制造商特定的 ACMD 命令如 ACMD6,需要在发送该命令之前发送 CMD55 命令,告知 SD 卡接下来的命令为特定应用命令。CMD55 命令只对紧接的第一个命令有效,SD 卡如果检测到 CMD55 之后的第一条命令为 ACMD 则执行其特定应用功能,如果检测发现不是 ACMD 命令,则执行标准命令。CMD12可以中断正在进行的数据通信,让卡返回到传输状态。• CMD:命令控制线,SDIO主机通过该线发送命令控制SD卡,如果命令要求SD卡提供应答,SD卡也是通过该线传输应答信息;
2024-01-25 16:51:53 2459
原创 fatfs_diskio关键代码
0// 预留 SD 卡使用1# define ATA 0 // 预留 SD 卡使用 # define SPI_FLASH 1 // 外部 SPI Flash。
2024-01-23 10:47:37 875
原创 stm32中的SPI
SPI一共三条总线CPHA:当 CPHA=0 时,MOSI 或 MISO 数据线上的信号将会在SCK 时钟线的“奇数边沿”被采样。当 CPHA=1 时,数据线在 SCK 的“偶数边沿”采样。一个边沿被设置为采样后另一个边沿只能为读取数据。CPOL:控制SCK空闲时刻的电平,0为低电平,1为高电平。由波特率发生器根据“控制寄存器 CR1”中的 BR[0:2] 位控制SPI 的 MOSI 及 MISO 都连接到数据移位寄存器上,数据移位寄存器的数据来源及目标接收、发送缓冲区以及 MISO、MOSI 线。当
2024-01-22 15:07:06 2019
原创 stm32中的i2c协议
协议通讯图I2C上一个总线能挂载多个设备共用信号线,可以连接多个从机只用了两个总线,一条双向串行数据线(SDA),一条串行时钟线(SCL)。数据线即用来表示数据,时钟线用于数据收发同步。每个连接到总线的设备都有独立的地址,主机可以通过该地址进行访问I2C空闲时输出高阻态,当所有设备都空闲时,由上拉电阻把总线拉成高电平主机同时使用总线时,会用仲裁的方式来决定。
2023-12-29 21:39:40 1481
原创 stm32DMA
DMA(Direct Memory Access)—直接存储器存取,是单片机的一个外设,它的主要功能是用来搬数据,但是不需要占用 CPU,即在传输数据的时候,CPU 可以干其他的事情,DMA 控制器独立于内核,属于一个单独的外设。数据传输支持从外设到存储器或者存储器到存储器,这里的存储器可以是 SRAM 或者是 FLASH。DMA 控制器包含了 DMA1 和 DMA2,其中 DMA1 有 7 个通道,DMA2 有 5 个通道,这里的通道可以理解为传输数据的一种管道。
2023-12-21 20:41:03 990
原创 usart串口以及通信基本概念
STM32 标准库则是在寄存器与用户代码之间的软件层。对于通讯协议,我们也以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。简单来说物理层规定我们用嘴巴还是用肢体来交流,协议层则规定我们用中文还是英文来交流。通用同步异步收发器 (Universal Synchronous Asynchronous Receiver and Transmitter) 是一个。
2023-12-17 22:47:13 1168
原创 stm32中断概览
NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。在固件库中,NVIC 的结构体定义可谓是颇有远虑,给每个寄存器都预留了很多位,恐怕为的是日后扩展功能。中断-1 NVIC 结构体定义,来自固件库头文件:core_cm3.h// 中断使能寄存器// 中断清除寄存器// 中断使能悬起寄存器// 中断清除悬起寄存器// 中断有效位寄存器// 中断优先级寄存器 (8Bit wide)// 软件触发中断寄存器。
2023-12-10 14:37:57 1238 1
原创 基于51单片机的温度传感器小项目
4.demo中是储存一个字节大小的数据只能满足char类型显然不能满足float存储需要四个字节大小的要求因此可以通过循环调用四次来实现读写float类型的功能,所以自己写了一个读取float类型的模板。本来一开始是写好了读取第一次超出阀值时候的温度和时间但是温度的模块所需要用到的单总线和时钟模块的引脚发生了冲突导致写好的代码无奈删除QWQ。5.如何正常的显示值的改变实时更新改变的Thigh TLow的值(本小功能的最大问题)1.LCD的显示只能显示整数类型,LCD的模板中没有float类型的读取。
2023-12-04 16:41:52 1244
原创 stm32RCC时钟模块
系统时钟(按调配顺序排列)作用由GFGR控制端HSE 高速外部时钟信号外部时钟源CFGR 的位 17:PLLXTPREPLL 时钟源处理HSE后的时钟源CFGR 的位 16:PLLSRCPLL 时钟 PLLCLK对 PLL 的时钟来源进行倍频CFGR的位 21-18:PLLMUL[3:0]系统时钟 SYSCLK处理HSI、PLLCLK、HSE后的时钟源CFGR 的位 1-0:SW[1:0]AHB2 总线时钟 HCLK对PCLK2进行分频处理。
2023-12-02 11:35:30 1412
原创 GPIO按键输入
为了消除按键的抖动,即按键在接通或断开时可能会出现短暂的不稳定状态,通常会使用软件或硬件的方法来处理。通过设定一个时间阈值,只有在电容器充放电过程超过这个时间后,才认定按键状态的改变是有效的,从而实现消抖的效果。松开按键时,电容器开始放电。按下按键时,电容器开始充电,电容器上的电压会逐渐增加。在这个过程中,通过测量电容器上的电压变化,可以检测按键的状态。因此,电容按键消抖的原理在于利用电容器充放电的时间特性,并结合阈值判断来识别有效的按键操作,从而避免因按键抖动导致的错误触发或信号不稳定的情况。
2023-12-01 19:18:24 558 1
原创 使用寄存器点亮LED灯
元件作用保护二极管及上、下拉电阻引脚的两个保护二级管可以防止引脚外部过高或过低的电压输入P-MOS 管和 N-MOS 管使 GPIO 具有了“推挽输出”和“开漏输出”两种模式。输出数据寄存器可以修改 GPIO 引脚的输出电平复用功能输出stm32上的其他片对GPIO引脚的进行控制,此时作为该片上功能的一部分输入数据寄存器读取该寄存器就可以了解 GPIO 引脚的电平状态复用功能输入GPIO 引脚的信号传输到 STM32 其它片上外设,由该外设读取引脚状态模拟输入输出。
2023-11-19 19:34:37 242
原创 初识stm32
我们经常说的 GPIO、串口、I2C、SPI 这些外设就挂载在这两条总线上,这个是我们学习 STM32 的重点,就是要学会编程这些外设去驱动外部的各种设备。FSMC 的英文全称是 Flexible static memory controller,叫灵活的静态的存储器控制器,是STM32F10xx 中一个很有特色的外设,通过 FSMC,情况1:如果不使用DMA总线,CPU首先要通过Dcode总线把数据从SRAM读取到CPU的通用寄存器中,CPU再把数据传到内部的外设。可以在内部的 FLASH。
2023-11-19 19:21:19 60
原创 51单片机中的红外遥控
红外遥控是利用红外光进行通信的设备,由红外LED将调制后的信号发出,由专用的红外接收头进行解调输出通信方式:单工,异步红外LED波长:940nm通信协议标准:NEC标准。
2023-11-12 17:44:43 123 1
原创 51单片机中的AD/DA
AD(Analog to Digital):模拟-数字转换,将模拟信号转换为计算机可操作的数字信号 DA(Digital to Analog):数字-模拟转换,将计算机输出的数字信号转换为模拟信号 AD/DA转换打开了计算机与模拟信号的大门,极大的提高了计算机系统的应用范围,也为模拟信号数字化处理提供了可能。
2023-11-12 16:59:52 281 1
原创 51单片机中的直流电机和PWM
PWM(Pulse Width Modulation)即脉冲宽度调制,在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速、开关电源等领域 PWM重要参数:频率 = 1 / TS 占空比 = TON / TS 精度 = 占空比变化步距例如:利用不同频率的0 1 0 1(不同的周期)来实现等效sin的电压与时间的电压。可以通过PWM的方法来模拟很多计算机中不能直接做出来的参量。高电平表示开,低电平表示关。
2023-11-12 11:43:38 99 1
原创 51单片机中的LCD1602液晶屏
LCD1602(Liquid Crystal Display)液晶显示屏是一种字符型液晶显示模块,可以显示ASCII码的标准字符和其它的一些内置特殊字符,还可以有8个自定义字符 显示容量:16×2个字符,每个字符为5*7点阵。
2023-11-12 11:12:35 722 1
原创 51单片机中的DS18B20(热敏电阻)以及单总线
DS18B20是一种常见的数字温度传感器,其控制命令和数据都是以数字信号的方式输入输出,相比较于模拟温度传感器,具有功能强大、硬件简单、易扩展、抗干扰性强等特点 测温范围:-55°C 到 +125°C 通信接口:1-Wire(单总线) 其它特征:可形成总线结构、内置温度报警功能、可寄生供电。
2023-11-03 20:25:01 191
原创 51单片机中的蜂鸣器
蜂鸣器是一种将电信号转换为声音信号的器件,常用来产生设备的按键音、报警音等提示信号 蜂鸣器按驱动方式可分为有源蜂鸣器和无源蜂鸣器 有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定 无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音。
2023-11-03 16:03:22 146
原创 51单片机中的串行控制寄存器(更新版)
串行口数据缓存寄存器SBUF:用来缓存,如果数据无效内容不变。SMOD0:侦错误检测有效位。当SMOD0=1时检测。REN:允许串行口控制器运行位,1为允许,0为禁止。PCON:电源控制寄存器(不可位寻址)SMOD:波特率加倍选择位,1加倍。两个SM:控制寄存器的模式。TI:发送中断请求标志位。RI:接受中断请求标志位。
2023-10-27 20:21:26 647 1
原创 51单片机中的中断系统(更新版)
EA:总中断允许寄存器。ET2:定时/计数器T2中断允许位。ES:串口中断允许位。ET1:定时/计数器T1中断允许位。EX1:外部中断1允许位。ET0:定时/计数器T0中断允许位。EX0:外部中断0允许位。都是0禁止中断1允许中断辅助中断控制寄存器。IP和IPH控制中断的优先级IE控制中断允许位XICON主要控制外部的中断信号,IEx就是控制INTx的中断标志位,中断条件成立后IEx置1可由硬件自动置0。如IE1就是控制INT1的中断标志位ITx为外部中断的信号类型,如。
2023-10-27 10:04:11 639 1
原创 单片机LED灯的基础知识
cpu通过控制这些寄存器来控制我们的硬件电路,硬件电路来完成我们想要完成的功能其中0是低电平1是高电平根据LED模块的示意图可以看出LED亮起是在P2系列的寄存器输入低电平可以亮起:外接电压VCC在P2寄存器低电平输入的情况下使D系列LED灯亮起,当P2寄存器输入高电平时VCC和P2的电压相遏制D系列LED不导通导致其熄灭。P2系列寄存器赋值为1111 1110 P2_1输入低电平使得D1亮起,其他LED因为输入高电平熄灭P2系列寄存器赋值为1111 1111使得D2熄灭,其他同理LED灯流水灯
2023-10-21 22:00:09 613
原创 C/C++ 数组 指针 字符串
字符串常量的值复制到字符串数组中,字符串数组建立新的内存空间,与字符串常量的地址不同,字符串数组因为其数组的特性,a[0]作为该数组的地址,导致数组的位置不能随意改变,如若改变会造成数组a[1]、a[2]等数据混乱。总之,当使用"%s"格式控制符输出指针和数组时,需要确保指针指向的字符串以null结尾,字符数组具有正确的字符串终止符,并确保数组长度足够容纳字符串,以避免潜在的错误和未定义行为。1. 指针输出:在这个特定的printf语句中,使用"*str"作为"%s"的参数是错误的,会导致编译错误。
2023-10-16 20:54:44 190
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人