第十五届蓝桥杯模拟考试I_物联网设计



反思:

本次模拟让我惊醒,写这个作品如同搭积木,在拼接的时候都要仔细检查这个积木是否出bug,确保没有问题再将其拼接到之前搭好的大模块之中,因为就是这样的题目我在处理过程中就遇到了BUG,原因竟出在输入模式要上拉,我原本一直以为无论是否上拉输入模式都会保持高电平,这次这个大的体系,就将他的不稳定性展现出来,所以我又醒悟到单个研究某个积木还不够,得将这个积木拼接到,大模块中再好好观察它的状态,这样才是完整的,所以要多做这种题,多去暴露问题。

本次也暴露出很多问题,如省赛手册的矩阵按键太老了,列1是PB1,列2是PB0,还好练了这个题不然一直蒙在鼓里,眼高手低太可怕😭

再一个就是上拉问题,其他的问题基本上都是我之前遇到的BUG,还得多练,不知道还有其他的BUG没被我发现不,以我的运气留着比赛一踩一个准

刚开始写可以先在主函数中检查中断,TIM是否配好了,这俩东西贼容易忘掉什么

自己的函数里可以测试拼接后的大模块到底行不行,main函数测试单个积木到底有没有问题



排版还是挺满意的,就是遇到的BUG让我心情久久未平复

按键判别以后就用这种了,简单易懂,免得写一堆BUG

c 复制代码
void Function_CheckKey(){

	HAL_GPIO_WritePin(COLUMN1_GPIO_Port, COLUMN1_Pin, GPIO_PIN_RESET);
	if(HAL_GPIO_ReadPin(ROW1_GPIO_Port, ROW1_Pin) == 0){
		while(HAL_GPIO_ReadPin(ROW1_GPIO_Port, ROW1_Pin) == 0);
		KEYFLAG = 1;
	}
	HAL_GPIO_WritePin(COLUMN1_GPIO_Port, COLUMN1_Pin, GPIO_PIN_SET);
	
	HAL_GPIO_WritePin(COLUMN2_GPIO_Port, COLUMN2_Pin, GPIO_PIN_RESET);
	if(HAL_GPIO_ReadPin(ROW1_GPIO_Port, ROW1_Pin) == 0){
		while(HAL_GPIO_ReadPin(ROW1_GPIO_Port, ROW1_Pin) == 0);
		KEYFLAG = 2;
	}
	HAL_GPIO_WritePin(COLUMN2_GPIO_Port, COLUMN2_Pin, GPIO_PIN_SET);
	 
}

完美的对称学

定时器一般就用TIM7了,我看大佬都用这个,可能LPTIM测的不准吧,比赛定时器实在配不好就直接Delay算了也是一种智慧

相关推荐
数据皮皮侠39 分钟前
最新上市公司业绩说明会文本数据(2017.02-2025.08)
大数据·数据库·人工智能·笔记·物联网·小程序·区块链
Hy行者勇哥2 小时前
物联网软件开发过程中,数据流图(DFD),用例图,类图,活动图,序列图,状态图,实体关系图(ERD),BPMN(业务流程建模)详解分析
java·物联网·struts
wei_shuo4 小时前
时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读
物联网·apache·时序数据库·iotdb
时序数据说10 小时前
时序数据库市场前景分析
大数据·数据库·物联网·开源·时序数据库
TDengine (老段)19 小时前
TDengine IDMP 高级功能(4. 元素引用)
大数据·数据库·人工智能·物联网·数据分析·时序数据库·tdengine
火车叨位去194921 小时前
力扣top100(day04-05)--堆
算法·leetcode·职场和发展
David WangYang1 天前
基于 IOT 的安全系统,带有使用 ESP8266 的语音消息
物联网·安全·语音识别
qq_513970441 天前
力扣 hot100 Day76
算法·leetcode·职场和发展
AI精钢2 天前
H20芯片与中国的科技自立:一场隐形的博弈
人工智能·科技·stm32·单片机·物联网
程序员曦曦2 天前
10:00开始面试,10:06就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展