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

📄 vmeter_18.lst

📁 在picdemo2实验板上的一款lcd+adc程序
💻 LST
字号:
     1: #include <pic18.h>

     2: #include "HD44780.h"

     3: 

     4: const char own[]={

     5: /*ri*/0x2E,0x2A,0x2A,0x2E,0x2A,0x2A,0x2E,0x20,  

     6: /*yue*/0x2E,0x2A,0x2E,0x2A,0x2E,0x2A,0x36,0x20,

     7: /*nian*/0x28,0x2F,0x32,0x2F,0x2A,0x3F,0x22,0x20,

     8: };

     9: 

    10: unsigned char volts[]="0.00";           //0.00

    11: const char *string="U=0.00V";           //U=0.00V

    12: const char   *warn=" WARN!";                    //WARN!

    13: const char *normal="NORMAL";            //NORMAL

    14: 

    15: unsigned int V=8,Old_V=0;

    16: bit step;

    17: 

    18: void Display(void)

    19: {

    20:         volts[0]=V/1000;

    21:         volts[2]=(V-volts[0]*1000)/100;

    22:         volts[3]=(V-volts[0]*1000-volts[2]*100)/10;

    23:         

    24:         volts[0]|=0x30;

    25:         volts[2]|=0x30;

    26:         volts[3]|=0x30;

    27:         

    28:         volts[1]='.';

    29:         

    30:         PutString(1,3,volts);

    31:                         

    32:         return;

    33: }

    34: 

    35: void main(void)

    36: {

    37:         TRISA0=1;

    38:         TRISB=0x01;

    39:         TRISE0=0;

    40:         

    41:         LCD_Begin(MODE_4BIT);

    42: 

    43:         ADCON0=0x41;

    44:         ADCON1=0x8e;

    45:         

    46:         SetChar(3,own);

    47:         

    48:         PutString(1,1,string);  

    49:         PutString(2,3,"2005\xa\x30\x32\x09\x32\x31\x8");

    50:                 

    51:         while(1)

    52:         {

    53:                 GODONE=1;

    54:                 while(GODONE==1){;}

    55:                         

    56:                 Old_V=V;

    57:                 

    58:                 V=((ADRESH<<8)+ADRESL)*4.91;

    59:                 

    60:                 if(Old_V!=V)Display();

    61:                 

    62:                 if(V>3500)

    63:                 {

    64:                         PORTB=~PORTB;

    65:                         if(step=!step)PutString(1,10,warn);

    66:                         else PutString(1,10,"      ");

    67:                         RE0=0;

    68:                 }

    69:                 else

    70:                 {

    71:                         PORTB=0;

    72:                         PutString(1,10,normal);

    73:                         RE0=1;

    74:                 }

    75:                 

    76:                 DelayS(1);

    77:         }

    78:         

    79:         return;

    80: }

    81:                 

    82:         

    83:         

⌨️ 快捷键说明

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