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

📄 bits2.c

📁 keil C51 Bits2事例
💻 C
字号:
/*------------------------------------------------------------------*-

   Bits2.C (v1.00)

  ------------------------------------------------------------------

   Reading and writing individual port pins.

   NOTE: Both pins on the same port

   --- Generic version ---

   COPYRIGHT
   ---------

   This code is associated with the book:

   EMBEDDED C by Michael J. Pont 
   [Pearson Education, 2002: ISBN: 0-201-79523-X].

   This code is copyright (c) 2001 by Michael J. Pont.
 
   See book for copyright details and other information.

-*------------------------------------------------------------------*/

#include <reg52.H>  

// Function prototypes
void Write_Bit_P1(const unsigned char, const bit);
bit Read_Bit_P1(const unsigned char);

/* ............................................................... */

void main (void)
   {
   bit x;
   
   while(1) 
     {
     x = Read_Bit_P1(0);   // Read Port 1, Pin 0
     Write_Bit_P1(1,x);    // Write to Port 1, Pin 1
     }
   }

/* --------------------------------------------------------------- */

void Write_Bit_P1(const unsigned char PIN, const bit VALUE)
   {
   char p = 0x01;  // 00000001

   // Left shift appropriate number of places
   p <<= PIN;  
   
   // If we want 1 output at this pin
   if (VALUE == 1)
      
      P1 |= p;  // Bitwise OR
      
      
   else
   // If we want 0 output at this pin
   {p = ~p;  // Complement
   P1 &= p; // Bitwise AND  
   }}

/* --------------------------------------------------------------- */

bit Read_Bit_P1(const unsigned char PIN)
   {
   unsigned char p = 0x01;  // 00000001

   // Left shift appropriate number of places
   p <<= PIN;  
   
   // Write a 1 to the pin (to set up for reading)
   Write_Bit_P1(PIN, 1);

   // Read the pin (bitwise AND) and return
   return (P1 & p); 
   }

/*------------------------------------------------------------------*-
  ---- END OF FILE -------------------------------------------------
-*------------------------------------------------------------------*/

⌨️ 快捷键说明

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