基于STM32简易自动测阻仪学习笔记

本文记录了使用STM32开发简易自动测阻仪的学习过程,重点探讨了软件设计中的关键点,包括按键识别逻辑、阻值筛选算法以及如何在TFTLCD上显示数值曲线。
摘要由CSDN通过智能技术生成

测试的题目是2011年G题:

我负责的部分是软件部分,按照逻辑首先应该构建思维逻辑图:

由这里就能慢慢发现难点是什么:

1.如何用按键识别;2.如何实现筛选阻值;3.利用TFTLCD描绘显示数值曲线

//画曲线
u16 lastX,lastY;
u8 firstPoint = 1;
void drawCurve(short int rawValue)  
{
	u16 x,y;
	y = 120 - rawValue/280;  	//data processing code
	//这里之所以是120-rawValue/280,与屏幕的扫描方向有关,如果出现上下颠倒的情况,可以改成120 + 
	if(firstPoint)//如果是第一次画点,则无需连线,直接描点即可
	{
		LCD_DrawPoint(0,y);
		lastX=0;
		lastY=y;
		firstPoint=0;
	}
	else
	{
		x=lastX+1;
		if(x<320)  //不超过屏幕宽度
		{
			LCD_DrawLine(lastX,lastY,x,y);
			lastX=x;
			lastY=y;
		}
		else  //超出屏幕宽度,清屏,从第一个点开始绘制,实现动态更新效果
		{
			LCD_Clear(WHITE);//清屏,白色背景
			LCD_DrawPoint(0,y);
			lastX=0;
			lastY=y;
		}
  }
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值