C語言位域操作方法(精編版)_第1頁
C語言位域操作方法(精編版)_第2頁
C語言位域操作方法(精編版)_第3頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、c 語言位域操作方法#include <avr/io.h>#ifndef _use_advancedportcommand # define _use_advancedportcommand# define painuse # define pbinuse # define pcinuse# define pdinuse0xff 0xff 0xff0xff# define peinuse0x00# define pfinuse0x00# define pginuse0x00# define phinuse0x00# define piinuse0x00# define pjinus

2、e0x00# define pkinuse0x00# define plinuse0x00# define pminuse0x00# define pninuse0x00# define poinuse0x00# define ppinuse0x00# define pqinuse0x00# define prinuse0x00# define psinuse0x00# define ptinuse0x00# define puinuse0x00# define pvinuse0x00# define pwinuse0x00# define pxinuse0x00# define pyinus

3、e0x00# define pzinuse0x00# define read_pa0 (pina<<7)>>7) # define read_pa1 (pina<<6)>>7) # define read_pa2 (pina<<5)>>7) # define read_pa3 (pina<<4)>>7) # define read_pa4 (pina<<3)>>7) # define read_pa5 (pina<<2)>>7) # define re

4、ad_pa6 (pina<<1)>>7) # define read_pa7 (pina>>7)# define read_pb0 (pinb<<7)>>7) # define read_pb1 (pinb<<6)>>7) # define read_pb2 (pinb<<5)>>7) # define read_pb3 (pinb<<4)>>7) # define read_pb4 (pinb<<3)>>7) # define read_

5、pb5 (pinb<<2)>>7) # define read_pb6 (pinb<<1)>>7) # define read_pb7 (pinb>>7)# define read_pc0 (pinc<<7)>>7) # define read_pc1 (pinc<<6)>>7) # define read_pc2 (pinc<<5)>>7) # define read_pc3 (pinc<<4)>>7) # define read_pc4

6、 (pinc<<3)>>7) # define read_pc5 (pinc<<2)>>7)# define read_pc6 (pinc<<1)>>7) # define read_pc7 (pinc>>7)# define read_pd0 (pind<<7)>>7) # define read_pd1 (pind<<6)>>7) # define read_pd2 (pind<<5)>>7) # define read_pd3 (pi

7、nd<<4)>>7) # define read_pd4 (pind<<3)>>7) # define read_pd5 (pind<<2)>>7) # define read_pd6 (pind<<1)>>7) # define read_pd7 (pind>>7)typedef struct byte_bitunsigned bit0:1; unsigned bit1:1;unsigned bit2:1;unsigned bit3:1; unsigned bit4:1;unsigne

8、d bit5:1;unsigned bit6:1; unsigned bit7:1;portbit;# define porta_bit (*(volatile portbit *)porta) # define portb_bit (*(volatile portbit *)portb) # define portc_bit (*(volatile portbit *)portc) # define portd_bit (*(volatile portbit *)portd)# define ddra_bit (*(volatile portbit *)ddra) # define ddrb

9、_bit (*(volatile portbit *)ddrb) # define ddrc_bit (*(volatile portbit *)ddrc) # define ddrd_bit (*(volatile portbit *)ddrd)# define ddr_pa0 ddra_bit.bit0 # define ddr_pa1 ddra_bit.bit1 # define ddr_pa2 ddra_bit.bit2 # define ddr_pa3 ddra_bit.bit3 # define ddr_pa4 ddra_bit.bit4 # define ddr_pa5 ddra

10、_bit.bit5 # define ddr_pa6 ddra_bit.bit6 # define ddr_pa7 ddra_bit.bit7# define ddr_pb0 ddrb_bit.bit0 # define ddr_pb1 ddrb_bit.bit1 # define ddr_pb2 ddrb_bit.bit2 # define ddr_pb3 ddrb_bit.bit3 # define ddr_pb4 ddrb_bit.bit4 # define ddr_pb5 ddrb_bit.bit5 # define ddr_pb6 ddrb_bit.bit6 # define ddr

11、_pb7 ddrb_bit.bit7# define ddr_pc0 ddrc_bit.bit0 # define ddr_pc1 ddrc_bit.bit1 # define ddr_pc2 ddrc_bit.bit2 # define ddr_pc3 ddrc_bit.bit3 # define ddr_pc4 ddrc_bit.bit4 # define ddr_pc5 ddrc_bit.bit5 # define ddr_pc6 ddrc_bit.bit6 # define ddr_pc7 ddrc_bit.bit7# define ddr_pd0 ddrd_bit.bit0 # de

12、fine ddr_pd1 ddrd_bit.bit1 # define ddr_pd2 ddrd_bit.bit2 # define ddr_pd3 ddrd_bit.bit3 # define ddr_pd4 ddrd_bit.bit4 # define ddr_pd5 ddrd_bit.bit5 # define ddr_pd6 ddrd_bit.bit6 # define ddr_pd7 ddrd_bit.bit7# define _pa0 porta_bit.bit0 # define _pa1 porta_bit.bit1 # define _pa2 porta_bit.bit2 #

13、 define _pa3 porta_bit.bit3 # define _pa4 porta_bit.bit4 # define _pa5 porta_bit.bit5 # define _pa6 porta_bit.bit6 # define _pa7 porta_bit.bit7# define _pb0 portb_bit.bit0 # define _pb1 portb_bit.bit1 # define _pb2 portb_bit.bit2 # define _pb3 portb_bit.bit3 # define _pb4 portb_bit.bit4 # define _pb

14、5 portb_bit.bit5 # define _pb6 portb_bit.bit6 # define _pb7 portb_bit.bit7# define _pc0 portc_bit.bit0 # define _pc1 portc_bit.bit1 # define _pc2 portc_bit.bit2# define _pc3 portc_bit.bit3 # define _pc4 portc_bit.bit4 # define _pc5 portc_bit.bit5 # define _pc6 portc_bit.bit6 # define _pc7 portc_bit.

15、bit7# define _pd0 portd_bit.bit0 # define _pd1 portd_bit.bit1 # define _pd2 portd_bit.bit2 # define _pd3 portd_bit.bit3 # define _pd4 portd_bit.bit4 # define _pd5 portd_bit.bit5 # define _pd6 portd_bit.bit6 # define _pd7 portd_bit.bit7# define portdefine();#endif2 第二種位操作方法typedef union unsigned char value; structunsigned int bit0:1; unsigned int bit1:1; unsigned int bit2:1;unsigned int bit3:1; unsigned int bit4:1; unsigned int bit5:1; unsigned int bit6:1; unsigned int bit7:1; bit_field; port;用法:聲明: port pa;位操作:pa.bit_fiel

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論