基于32F1的电阻屏模式选择菜单

基于32F1的电阻屏模式选择菜单开发
博主因电赛任务调度需求,基于正点原子战舰V3开发板和3.5寸电阻屏,扩展正点原子LCD封装库,编写了模式选择菜单,可自选1到12种模式数量。该菜单启动和切换速度快,触屏感应灵敏准确。目前为第一版,后续将优化。

由于电赛的任务调度需求,我写了这个模式选择菜单,测试基于正点原子的战舰V3开发板,3.5寸电阻屏,对正点原子LCD封装库进行扩展,可自选1到12模式数量,自排版并在触屏时输出模式序号。

LCD_Menu.c

#include "LCD_Menu.h"
#include "key.h"
#include "led.h"

//给模式选项画一个框
//width,height 框左上角起始位置
//H,L 设置框的高,宽
void MODE_Draw_Frame(unsigned int width,unsigned int height,unsigned int H,unsigned int L,unsigned int color)
{
	POINT_COLOR=color;
	LCD_DrawLine(width, height, width + L, height);
	LCD_DrawLine(width, height, width , height + H);
	LCD_DrawLine(width, height + H, width + L, height + H);
	LCD_DrawLine(width + L, height + H, width + L, height);
}

void MODE_Draw_Name(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p,u8 num)
{         
	u8 x0=x;
	width+=x;
	height+=y;
    while((*p<='~')&&(*p>=' '))//判断是不是非法字符
    {       
        if(x>=width){x=x0;y+=size;}
        if(y>=height)break;//退出
        LCD_ShowChar(x,y,*p,size,0);
        x+=size/2;
        p++;
    }
		if(num<10)//用于显示模式
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值