色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > PIC結(jié)構體及定義位元結(jié)構

          PIC結(jié)構體及定義位元結(jié)構

          作者: 時間:2011-10-18 來源:網(wǎng)絡 收藏

          及定義
          extern volatile near unsigned char PORTB; // PORTB是一個字節(jié)(unsigned char)。由于變量是在寄存器中定義的,因此需要extern 修飾符。 volatile 修飾符告知編譯器不能假定PORTB能保留賦給它的值。 near 修飾符指定了端口位于存取RAM 中。
          extern volatile near union { // 定義PORTBbits為一的聯(lián)合體(union)變量。指定 PORTBbits 是可位尋址的匿名結(jié)構的聯(lián)合。特殊功能寄存器中的每一位可能有不只一種功能,因此聯(lián)合中對于同一個寄存器有多個結(jié)構定義。struct { // 地址在Access RAM
          unsigned RB0:1; // 定義PORTB的標準功能
          unsigned RB1:1;
          unsigned RB2:1;
          unsigned RB3:1;
          unsigned RB4:1;
          unsigned RB5:1;
          unsigned RB6:1;
          unsigned RB7:1;
          } ;
          struct {
          unsigned INT0:1; // 定義PORTB的另外功能
          unsigned INT1:1;
          unsigned INT2:1;
          unsigned CCP2:1;
          } ;
          } PORTBbits ; //這里定義了一個結(jié)構聯(lián)合體變量 PORTBbits

          //然后就可以用了。
          PORTB=0x35; // PORTB 與 PORTBbits 地址一樣。
          //等同于 PORTBbits = 0x35;
          PORTBbits.RB7=1; // RB7 輸出高電平



          評論


          技術專區(qū)

          關閉