历史上的今天

今天是:2024年11月18日(星期一)

2019年11月18日 | 单片机LCD12864无限扩展多级菜单源码

发布者:JoyfulSpirit5 来源: 51hei关键字:单片机  LCD12864  多级菜单 手机看文章 扫描二维码
随时随地手机看文章

单片机源程序如下:

#include "delay.h"

#include "12864.h"

#include "fun.h"

#include "key.h"

#include "wakeup.h"

u8  func_index=0;


void (*current_operation_index)(); //执行当前显示函数

typedef struct

   {

        u8 current;        //当前状态号

        u8  up;//向上翻索引号

        u8 down;//向下翻索引号

        u8 enter;//确认索引号

        u8 num_ent;//编码器确认键

        void (*current_operation)(); //要执行的函数

        } key_table;


         key_table table[21]=

{

  {0,3,1,4,15,(*fun1)},//运行状态

         {1,0,2,6,1,(*fun2)}, //历史记录

        {2,1,3,10,2,(*fun3)},//版本信息

        {3,2,0,11,3,(*fun4)},//功能设置

        {4,5,5,15,4,(*fun5)},//运行参数

        {5,4,4,0,5,(*fun6)}, //运行时间

         {6,9,7,0,1,(*fun7)},//故障记录

        {7,6,8,0,1,(*fun8)},//7天记录

        {8,7,9,0,1,(*fun9)},//今年记录

        {9,8,6,0,1,(*fun10)}, //往年记录

         {10,0,0,0,2,(*fun11)},//版本信息

        {11,14,12,19,3,(*fun12)},//设置通讯地址

        {12,11,13,0,3,(*fun13)},//设置语言

        {13,12,14,0,3,(*fun14)}, //设置时间

         {14,13,11,0,3,(*fun15)},//更多

        {15,18,16,0,15,(*fun16)},//主画面

        {16,15,17,0,15,(*fun17)},//输入数据

        {17,16,18,0,15,(*fun18)}, //输出数据

         {18,17,15,0,15,(*fun19)},//功率参数

        {19,17,15,0,11,(*fun20)},//通讯地址

};

        

        int main(void)

{

        u8 num;

        SystemInit();                //系统初始化

        delay_init(72);             //延时初始化

        LCD12864_InitPort(); //端口初始化

        LCD12864_Init();         //液晶初始化

  Key_Init();//按键初始化

        

        

//  LCD12864_Pos(3,5);

        LCD12684_Wdat(0x35);


                while(1)

         {

                 num=KEY_Scan();//得到键值

                if(num==3)


//                {

//                switch(num)

//                        { 

//                                case 1:

//                                func_index=table[func_index].up;  break;  //向上翻

//                                case 2:

//                                func_index=table[func_index].down; break;   //向下翻

//                                case 3:

//                                func_index=table[func_index].enter; break;   //确认

//                                case 4:

//                                func_index=table[func_index].num_ent; break; 

//                                }           

//         LCD12864_Clr();    //clear all dots

//                 }                                

//                current_operation_index=table[func_index].current_operation;

//                (*current_operation_index)();//执行当前操作函数

//   }

        { 

                 delay_ms(500);

                Sys_Enter_Standby();

        }

         

//         if(KEY_Scan()==1)

//         {

//                RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);

//                 

//         

//         

//         

//         

//         }

  }


……………………



关键字:单片机  LCD12864  多级菜单 引用地址:单片机LCD12864无限扩展多级菜单源码

上一篇:检测0~20MA电流传感器报警控制程序
下一篇:单片机+DHT11温湿度检测程序

推荐阅读

  “警察叔叔,这个机器人好可爱啊,它叫什么名字?”“它叫安安警官,正在协助我们执勤。”广州海珠警方在广州塔景区启用的-2000警用机器人上岗执勤,不少市民群众前来围观。   这位名为“安安警官”的警用机器人高1.6米,重80公斤,白胖圆润,可爱呆萌,身上贴有“警察”“POLICE”等警方标识。   “安安警官”的投入使用,是广州海珠警方坚...
关于自动驾驶,博世的官网里是这样描述的:您可以乘坐通勤车去上班,吃一顿轻松的早餐,看看报纸。 您不再陷入交通堵塞,您的汽车会自动带您到想去的任何地方。 而且比现在更安全,因为自动驾驶汽车可以大大减少事故发生次数, 它们能比驾驶员更快地察觉并避免危急情况,并且严格遵守交通规则,从不疲倦。 即使在紧急情况下,它们的反应也比驾驶员快得...
企查查APP显示,11月17日,深圳市智信新信息技术有限公司法定代表人变更,从饶俊祥变更为华为消费者业务首席运营官万飚。此外,该公司注册资本由1亿元增加至约30.73亿元,增幅约2973%。11 月 17 日,多家企业在《深圳特区报》发布联合声明,深圳市智信新信息技术有限公司已与华为投资控股有限公司签署了收购协议,完成对荣耀品牌相关业务资产的全面收购...
11月17日上午消息,在今天凌晨的投资者活动上,高通首席财务官Akash Palkhiwala 表示,高通预计在2023年仅供应苹果20%的调制解调器芯片。也就是说,苹果自己的5G基带应该会在2023年推出。  高通表示,这只是“出于预测目的的规划假设”,但跟之前的传言相符。  调制解调器,又称基带,是手机负责通讯功能的核心模块。苹果此前曾将希望全部压...

史海拾趣

问答坊 | AI 解惑

PLC晶体管输出和继电器输出的区别zz

1.负载电压、电流类型不同负载类型:晶体管只能带直流负载,而继电器带交、直流负载均可。电流:晶体管电流0.2A-0.3A,继电器2A。电压:晶体管可接直流24V(一般最大在直流30V左右,继电器可以接直流24V或交流220V。2.负载能力不同晶体管带负载的能 ...…

查看全部问答∨

大家ucos里面还用看门狗吗?

请问大家ucos写的程序里,还用看门狗吗?如果用的话,大家怎么喂狗?是每个任务里都喂吗?如果这样的话,因为ostimetick不停的在调度任务,那么即使一个任务死掉,其他的任务也会来喂狗,不就起不到狗的作用了吗?请教大家。…

查看全部问答∨

FPGA讨论贴及基础资料索引

xilinx讨论帖!https://bbs.eeworld.com.cn/thread-76438-1-1.html Actel 交流贴!https://bbs.eeworld.com.cn/thread-82614-1-1.html 大家发现有好的帖子,欢迎回帖推荐哈!!…

查看全部问答∨

wince iimage encoder

有哪位大侠实现过wince iimage组件的encoder 目前小弟困在IImageEncoder::GetEncodeSink( IImageSink** sink) 的实现上, 小弟是先CreateNewBitmap 一个bitmap然后queryinterface 得到imagesink, 但是不知道CreateNewBitmap 中的 width, & ...…

查看全部问答∨

求助:Wince实现超链接

就是有个窗口,上面有个文本,然后鼠标移动到文本上面时点击可以弹出浏览器然后浏览对应的地址。 以前做过MFC的,但是WINCE的怎么实现不太清楚,希望大家帮助~~~~谢谢~…

查看全部问答∨

华为的EC325 怎样才能开机时自动连接网络呢?

HUAWEI Mobile Connect开机时可以启动但是网络连接必须点一下连接才行!…

查看全部问答∨

windowsCE下的中断线程

各位兄弟关于中断有几个问题,请各位高手指导一下!先谢谢啦! 问题:1、InterruptInitialize(g_I2CSysIntr, gI2CIntrEvent, 0, 0)这个函数是把逻辑中断号与事件gI2CIntrEvent相关联,但是          我看g_I2CSysI ...…

查看全部问答∨

www.kingofcoder.com 100MB 免费空间 + 100MB mysql 空间

www.kingofcoder.com 100MB 免费空间 + 100MB mysql 空间 大家快点来呀 JSP, PHP, oracle空间, 很快就会开通, 大家快点登记吧…

查看全部问答∨

6折转LPC2368开发板

本帖最后由 ddllxxrr 于 2016-1-7 17:10 编辑 手头有一块LPC2368开发板,9成新,超前电子的,现想转手换点现金买个2440或者6410, 原价469,现价240吧,联系qq 289916015 …

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved