12911|23

10

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

LCD图形显示_菜单管理_PCF8583_TWI_SPI所有C代码公开 [复制链接]

现将2006在一家公司做的一个产品的仿真部分所有源码资料公布,供大家学习和参考!包括参菜单管理算法。菜单翻页可像手机菜单一下,可滚动翻页,并有进度条指示。另还有TWI读写PCF8563的程序。不多说大家看看就知道。以前只公布过protues和hex,反映还可以。今天是源码也公布,希望对大家有帮助。传播请注明作者及出处,谢谢!

图示效果一
此帖出自单片机论坛

最新回复

好人啊! 谢谢分享!   详情 回复 发表于 2012-6-26 11:36
点赞 关注
 

回复
举报

10

帖子

0

TA的资源

纯净的硅(初级)

沙发
 

LCD图形显示_菜单管理_PCF8583_TWI_SPI所有C代码公开



资料包文件目录
E:\debug>tree /f
卷 WORK 的文件夹 PATH 列表
卷序列号码为 000007BC E4BD:002B
E:.
│  效果_1.png
│  效果_2.png
│  效果_1.jpg
│  效果_2.jpg
│  使用手册V1_0.pdf

├─source
│      Main.h
│      Display.c
│      DotLib.c
│      SPI.h
│      SPI.c
│      Display.h
│      Dotlib.h
│      TWI.h
│      PCF8563.c
│      PCF8563.h
│      TWI.c
│      Includes.h
│      Main.c

└─protues
        LCDBoard.DSN
        Debug.cof
        Debug.hex
        LCDBoard.PWI

ourdev_274225.rar

1.05 MB, 下载次数: 444

此帖出自单片机论坛
 
 

回复

10

帖子

0

TA的资源

纯净的硅(初级)

板凳
 

LCD图形显示_菜单管理_PCF8583_TWI_SPI所有C代码公开

程序中的菜单架构提取出来,让大家查看更直观。

/* 菜单架构 */
typedef struct
{
        INT8U KeyTab_MenuIndex;                                                         // 当前状态索引号
        INT8U KeyTab_MaxItems;                                                               // 本级菜单最大条目数
    INT8U KeyTab_PressOk;                                                                // 按下"回车"键时转向的状态索引号
    INT8U KeyTab_PressEsc;                                                               // 按下"返回"键时转向的状态索引号
    INT8U KeyTab_PressDown;                                                              // 按下"向下"键时转向的状态索引号
    INT8U KeyTab_PressUp;                                                            // 按下"向上"键时转向的状态索引号
    void (*CurrentOperate)( void );                                                    // 当前状态应该执行的功能操作
}KeyTabStruct;
void ( *KeyFuncPtr )( void );                                                          // 按键功能指针
/*--------------------------------显示菜单(字库)----------------------------*/
INT8U *TestFace[3]={
        "测试中",                                                                                                                                 
        "当前端口",                 
        "接触电流"         
};
INT8U *Power[3]={
        "设定电压",                                                                                                                                 
        "当前电压",                                                                                                                                 
        "工作电流"                                                                                                                                 
};
INT8U *MenuRoot[5]={                                                                                                                                 
           "一设备类型",                                                                                                                                 
        "二端口设定",                                                                                                                                 
        "三参数设置",                                                                                                                                 
        "四系统设定",                                                                                                                                 
        "五关闭系统"                                                                                                                                 
};
INT8U MenuRootID[5]={EUTtype,PortSet,Paramete,SystemSet,ShutOff};
INT8U *MenuEutTpye[4] ={
        "壹类",                                                                                                                                          
        "贰类",                                                                    
        "接地",                                                                                                                                          
        "不接地"                                                                                                                                          
};
INT8U MenuPortID[9] ={Port0,Port1,Port2,Port3,Port4,Port5,Port6,Port7,Port8};
INT8U *MenuParam[4] ={
        "电源电压",                                                                                                                                 
        "测试时间",                                                                                                                                 
        "间隔时间",
        "外部采样"
};
INT8U MenuParamID[4] ={Voltage,Testtime,Spacetime,Exterior};
INT8U *MenuSystem[3] ={
        "时间设定",                                                                                                                                 
        "背光设定",                                                                                                                                 
        "键音设定"                                                                                                                                 
};
INT8U MenuSystemID[3] ={Time,Backlight,Buzzer};
INT8U *MenuBackLight[2] ={
        "绿光",                                                                                                                                                                                          
        "红光"                                                                                                                                         
};
INT8U MenuBackLightID[2] ={Green,Red};
INT8U *Adjust[1]={
        "校正因子"
};
INT8U*Msg[7] = {
        "启动中…",                                                                                                                                         
        "关机中…",                                                                                                                                 
        "已保存!",
        "电源电压不稳",                                                                                                                                         
        "请稍等!",
        "合格",         
        "不合格!"                 
};
此帖出自单片机论坛
 
 
 

回复

10

帖子

0

TA的资源

纯净的硅(初级)

4
 

回复 板凳 的帖子

/*-----------------------------------按键架构---------------------------------*/  
/*CurMenuID           = 本菜单ID
  MaxMenuItem         = 同级菜单最大项数
  OkMenuID                  = 子菜单层所对应的菜单ID,ID=255为菜单已经到底了
  EscMenuID           = 父菜单层所对应的菜单ID,ID=255为菜单已经到顶了
  DownMenuID          = 弟菜单层所对应的菜单ID,ID=255为菜单是独生子
  UpMenuID            = 兄菜单层所对应的菜单ID,ID=255为菜单是独生子
  CurFunction         = 本菜单所对应的菜单函数指针                                  */                                                   
KeyTabStruct KeyTab[MAX_KEYTABSTRUCT_NUM]={
/* CurID   Max  Ok          Esc         Down        Up         CurFunction    */   
{FACE,      0,        Menu,       Menu,            255,            255,          *FunctionNul     },
{Menu,                5,        EUTtype,    FACE,            PortSet,        ShutOff,  *FunctionNul     },
{EUTtype,        2,        I_type,         Menu,            PortSet,        ShutOff,  *FunctionNul     },
{I_type,        0,        255,                 EUTtype,        II_type,        II_type,  *Function_I            },
{II_type,        0,        255,                EUTtype,        I_type,     I_type,   *Function_II           },
{PortSet,        9,        Port0,             Menu,            Paramete,   EUTtype,  *FunctionNul     },
{Port0,            0,        255,                 PortSet,        Port1,            Port8,           *Function_Port   },
{Port1,            0,        255,                 PortSet,        Port2,            Port0,           *Function_Port   },
{Port2,            0,        255,                 PortSet,        Port3,            Port1,           *Function_Port   },
{Port3,            0,        255,                 PortSet,        Port4,            Port2,           *Function_Port   },
{Port4,         0,        255,                 PortSet,        Port5,            Port3,           *Function_Port   },
{Port5,            0,        255,                 PortSet,        Port6,            Port4,           *Function_Port   },
{Port6,            0,        255,                 PortSet,        Port7,            Port5,           *Function_Port   },
{Port7,            0,        255,                 PortSet,        Port8,            Port6,           *Function_Port   },
{Port8,         0,        255,                 PortSet,        Port0,            Port7,           *Function_Port   },
{Paramete,        3,        Voltage,        Menu,                SystemSet,        PortSet,  *FunctionNul     },
{Voltage,        0,        255,             Paramete,        Testtime,   Exterior, *Function_Paramet},
{Testtime,        0,        255,             Paramete,        Spacetime,  Voltage,  *Function_Paramet},
{Spacetime,        0,        255,             Paramete,        Exterior,   Testtime, *Function_Paramet},
{Exterior,        0,        255,             Paramete,        Voltage,    Spacetime,*Function_Paramet},
{SystemSet,        3,        Time,            Menu,                ShutOff,    Paramete, *Function_System },
{Time,            7,        Year,            SystemSet,        Backlight,        Buzzer,   *FunctionNul     },
{Year,            0,        255,            Time,            Month,            Second,   *Function_Time   },
{Month,            0,        255,            Time,            Day,            Year,     *Function_Time   },
{Day,            0,        255,            Time,            Week,            Month,    *Function_Time   },
{Week,            0,        255,            Time,            Hour,            Day,      *Function_Time   },
{Hour,            0,        255,            Time,            Minute,            Week,     *Function_Time   },
{Minute,        0,        255,            Time,            Second,            Hour,     *Function_Time   },
{Second,    0,        255,            Time,            Year,            Minute,   *Function_Time   },
{Backlight,        2,        Green,                 SystemSet,        Buzzer,            Time,           *FunctionNul     },
{Green,            0,        255,        Backlight,  Red,        Red,          *Function_BkLight},
{Red,           0,        255,            Backlight,        Green,            Green,    *Function_BkLight},
{Buzzer,        2,        Open,                 SystemSet,        Time,            Backlight,*FunctionNul     },
{Open,            0,        255,             Buzzer,     Close,      Close,          *Function_Open   },
{Close,            0,        255,            Buzzer,         Open,            Open,     *Function_Close  },
{ShutOff,        0,        255,            Menu,            EUTtype,        SystemSet,*Function_ShutOff}
此帖出自单片机论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

5
 
顶了
此帖出自单片机论坛
 
 
 

回复

5

帖子

0

TA的资源

一粒金砂(初级)

6
 
好人啊!
谢谢分享!
此帖出自单片机论坛
 
 
 

回复

6

帖子

0

TA的资源

纯净的硅(初级)

7
 
正想做个菜单呢,呵呵
此帖出自单片机论坛
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(初级)

8
 
xue xi!!!!!!!!!!!!!!!!
此帖出自单片机论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

9
 
谢谢这位兄弟,随便还没有看!
此帖出自单片机论坛
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

10
 
好人啊!
谢谢分享!
此帖出自单片机论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(中级)

11
 
好人啊!
谢谢分享!
此帖出自单片机论坛
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(中级)

12
 
怎末不能下载呢
我想看看呀
此帖出自单片机论坛
 
 
 

回复

2万

帖子

71

TA的资源

管理员

13
 
下载需要4枚芯币,加油啊,下面是积分规则的链接,请参考。
此帖出自单片机论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(中级)

14
 
好人啊!
谢谢分享!
此帖出自单片机论坛
 
 
 

回复

15

帖子

0

TA的资源

一粒金砂(中级)

15
 

Re: [分享] LCD图形显示_菜单管理_PCF8583_TWI_SPI所有C代码公开

good!!!!!!!!!!!!!!!!
此帖出自单片机论坛
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(中级)

16
 

Re: [分享] LCD图形显示_菜单管理_PCF8583_TWI_SPI所有C代码公开

:@ 呵呵这个网站不太好使,哎。
此帖出自单片机论坛

赞赏

1

查看全部赞赏

 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

17
 

Re: [分享] LCD图形显示_菜单管理_PCF8583_TWI_SPI所有C代码公开

好人啊 ,谢谢 分享
此帖出自单片机论坛
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

18
 
thank u for sharing
此帖出自单片机论坛
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(高级)

19
 
我不知道自己的要不要这些东西,先顶个再说~~
此帖出自单片机论坛
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

20
 
此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表