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

📄 main.c

📁 电子称重的程序
💻 C
字号:
#include<config.h>
#include<head.h>
#include<main.h>
#pragma OPTIMIZE(9)


void   (* pFuntion)(MSG *Msg);


BOOL       tempbit;
code    void(*S_Funtab[])(MSG *)={s_stopfun,s_startfun,s_syssetfun,s_usersetfun,s_weightfun};
#define US_Startfun SS_Startfun
code    void(*US_Funtab[])(MSG *)={US_Startfun,US_Unitsetfun,US_Funsetfun,US_Holdsetfun,US_Comsetfun};
code    void(*SS_Funtab[])(MSG *)={SS_Startfun,SS_Filsetfun,SS_Weisetfun,SS_Linsetfun,SS_Calsetfun};



/**************************************************************************
*      函数原型:void main(void);
*      功    能:主程序,进行系统初始化和称重等操作。
**************************************************************************/
void main(void)
{
 MSG     pMsg;

 MessageInit();
 systimeinit();         //系统时间初始化
 lcd_init();             //LCD驱动初始化
 aprintf(0x00,"Y1C-1.1");
 beep(200);
 DataInit();             //24c02初始化
 key_init();          //按键驱动初始化
ComInit();
 //LoadData();
 adinit();          //AD芯片初始化
 setstate(S_START);
 while(1)
 {
  if(GetMessage(&pMsg))   //取得消息
  {
   pretreatmentmsg(&pMsg);//预处理信息
   OSMsgDo(&pMsg);       //公共消息处理
   pFuntion(&pMsg); //调用当前状态对应处理函数
  }
 }
}

void    pretreatmentmsg(MSG *pMsg)
{
 switch(pMsg->message)
 {
 case  M_KEYUP:
       PostMessage(M_CHAR,pMsg->param);
       break;
 }
}
void    OSMsgDo(MSG *pMsg)
{

 switch(pMsg->message)
 {
 case   M_ADHAD:
       AdDo();
       break;
 }
}


void    setstate(Uchar state)
{
  pFuntion=S_Funtab[state];
  PostMessage(M_REFURBISH,Sys_State);
  Sys_State=state;
  fun_state=0;
  cfun_state=0;
}




⌨️ 快捷键说明

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