⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menu.c

📁 在开发FPGA上比较有用
💻 C
字号:
/**************************************************************
程序说明      :FreeDev输入输出和菜单模块
类    型      :Nios II
说    明      :
              测试系统菜单相关函数
**************************************************************/
#include <stdio.h>
#include <alt_types.h>
#include <io.h>
#include <system.h>
#include <string.h>

/*********************************************
函数名:MenuHeader(void)
功  能:菜单头显示函数
输  入: 
返  回: 
备  注:
**********************************************/
void MenuHeader(void)
{
  printf("\n\n");
  printf("数字音频处理控制系统实验.   <---->\n");
  printf("Audio音频开发系统\n");
}

/*********************************************
函数名:MenuBegin(char *title)
功  能:显示菜单开始
输  入: 
返  回: 
备  注:
**********************************************/
void MenuBegin( char *title )
{
  printf("\n\n");
  printf("----------------------------------\n");
  printf("%s\n",title);
  printf("----------------------------------\n");
}

/*********************************************
函数名:MenuItem(char letter, char *name )
功  能:显示菜单项
输  入: 
返  回: 
备  注:
**********************************************/
void MenuItem( char letter, char *name )
{
  printf("     %c:  %s\n" ,letter, name);
}

/*********************************************
函数名:MenuEnd( char lowLetter, char highLetter )
功  能:显示菜单结束并接收用户输入
输  入: 
返  回: 
备  注:
**********************************************/
int MenuEnd( char lowLetter, char highLetter )
{
  static char entry[3];
  static char ch = 23;

  printf("     q:  Exit\n");
  printf("----------------------------------\n");
  printf("\nSelect Choice (%c-%c): [Followed by <enter>]",lowLetter,highLetter);

  fgets(entry, sizeof(entry), stdin);
  if(sscanf(entry, "%c\n", &ch))
  {
    if( ch >= 'A' && ch <= 'Z' )
      ch += 'a' - 'A';
    if( ch == 27 )
      ch = 'q';
    if(ch != 'q' && ( ch < lowLetter && ch > highLetter ))
    {
      printf("\n -ERROR: %c is an invalid entry.  Please try again\n", ch);
    }
  }
  return ch;
}

/*********************************************
函数名:ShowSelect( char lowLetter, char highLetter )
功  能:显示菜单结束并接收用户输入
输  入: 
返  回: 
备  注:
**********************************************/
int ShowSelect(char *prompt,char sel1, char sel2 )
{
  static char entry[3];
  static char ch = 23;

  while(1){
    printf("----------------------------------\n");
    printf("%s",prompt);
    printf("\n请选择(%c-%c): [回车确认]",sel1,sel2);

    fgets(entry, sizeof(entry), stdin);  //获取屏幕字符
    if(sscanf(entry, "%c\n", &ch))
    {
      if( ch == sel1 || ch == sel2)
        break;
    }
  }  
  return ch;
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -