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

📄 lab2.lst

📁 PICC 16X Code for study and learning
💻 LST
字号:
     1: 

     2: /****************************************************************

     3: *                       Hi-Tech workshop exercise Lab2                                          *

     4: *****************************************************************

     5: * The program will display a binary count value on PORTD (LED)  *

     6: * every delay 200mS                                                                                             *

     7: *                                                                                                                               *

     8: *   Files required:                                                                                             *

     9: *                                                                                                                               *               

    10: *                   lab2.c                                                                              *

    11: *                                       MID_LCD.c                                                                       *

    12: *                   cnfig877a.h (Set the Configuration Word)    *

    13: *                                                                                                                               *

    14: *                   pic.h        (Hi-Tech file)                                 *

    15: *                                                                                                                               *

    16: *****************************************************************

    17: *                                                                                                                               *

    18: *   Notes:                                                                                                              *

    19: *                                                                                                                               *

    20: *   Device Fosc -> 16.00MHz (Clock supplied by target)                  *

    21: *                                                                                                                               *       

    22: *****************************************************************/

    23: 

    24: #include <pic.h>                                // processor if/def file

    25: #include "cnfig877a.h"

    26: #include "mid_lcd.h"

    27: 

    28: //**********************************

    29: //* Function Prototype Declaration

    30: //**********************************

    31: 

    32: 

    33: // ================================================================

    34: // **** Establish PIC16F877A Configuration Word

    35: // **** == HS Oscillator Mode

    36: // **** == Brown-Out Detect Enabled

    37: // **** == Watch-Dog Timer Off

    38: // **** == Code Protect Off

    39: // **** == Low Voltage Programming Off

    40: // **** == ICD2 Debug Mode On

    41: 

    42: __CONFIG  ( HS_OSC & BODEN_ON & WDT_OFF & CP_OFF & LVP_OFF & DEBUG_ON ); 

    43: 

    44: // =================================================================

    45: 

    46: 

    47: #define SW3     RA4

    48: #define SW2     RB0

    49: 

    50: const char LCD_Msg1[]="Hi-Tech PICC Ex2"; 

    51: const char LCD_Msg2[]=" Up:00  Down:00 "; 

    52: unsigned char i;

    53: unsigned char debounce=0;

    54: unsigned char Up_Count=0;

    55: unsigned char Down_Count=0;

    56: 

    57: /*****************************

    58:     INITIALIZE SYSTEM

    59: *****************************/

    60: 

    61: void Init_System(void)

    62: {

    63:         ADCON1=0b00000110;              // Disable A/D Function

    64:         TRISD=0x00;                             // Set PortD for Output

    65:         PORTD=0x80;                             // Initila LED display = 0x80

    66:         TRISA4=1;                               // Set SW2 for input

    67:         TRISE1=1;                               // Set SW6 for Input

    68: }

    69: 

    70: //***************************************

    71: //*             Program Main ( )                *

    72: //***************************************

    73: void main(void)

    74: {

    75:         Init_System();

    76:         OpenLCD();

    77:         LCD_Set_Cursor(0,0);

    78:         putrsLCD(LCD_Msg1);

    79:         LCD_Set_Cursor(0,1);

    80:         putrsLCD(LCD_Msg2);

    81: 

    82:         while(1)

    83:         {

    84:                 if (debounce==0)

    85:                         {

    86:                                 if (!SW3) 

    87:                                         {

    88:                                         PORTD++;

    89:                                         LCD_Set_Cursor(4,1);

    90:                                         puthexLCD(++Up_Count);

    91:                                         debounce=30;

    92:                                         }

    93:                                 if (!SW2) 

    94:                                         {

    95:                                         PORTD--;

    96:                                         LCD_Set_Cursor(13,1);

    97:                                         puthexLCD(--Down_Count);

    98:                                         debounce=30;

    99:                                         }

   100:                         }

   101:                 else

   102:                         {

   103:                                 if (SW3 & SW2) 

   104:                                         {

   105:                                         debounce--;

   106:                                         for (i=0;i<50;i++);

   107:                                         }

   108:                                 else 

   109:                                         debounce=30;    

   110:                         }                

   111:         }

   112:         

   113: }

   114: 

   115: 

⌨️ 快捷键说明

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