欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 關于51單片機程序引腳宏定義的問題 [打印本頁]

作者: lzj13055339857    時間: 2020-3-11 11:51
標題: 關于51單片機程序引腳宏定義的問題
我需要宏定義引腳程序要怎么寫?
例如:我P0引腳有8個P0~P7,我把P0~P3作為按鍵輸入,我P4~P6要作為數碼管段選,那么我需要將P4~P6作為一個宏,就像P0=0XFE;醬紫,不知道有沒有大佬幫忙解決下,最好有個例程給參考下!急需!


作者: f556    時間: 2020-3-11 11:51
P0~P3作為按鍵輸入,我P4~P6要作為數碼管段選,
意思是:key要讀輸入值,另外要送輸出值給數碼管
#define  keyVal  P0&0x0F
#define  Seg     P0|=0x70   //P06-5-4

main()
{
    unsigned char keyVal ;
   ....
}
MSP430的操作大多用這類,不象51。原來用51涉及拆分一半的口線,也用了這種方法。
不知是不是你需要的?


作者: 余生不負    時間: 2020-3-11 13:17
可以位定義

sbit P00 = P0^0;
sbit P01 = P0^1;
sbit P02 = P0^2;
sbit P03 = P0^3;
sbit P04 = P0^4;
sbit P05 = P0^5;
sbit P06 = P0^6;
sbit P07 = P0^7;

P00 =1;P00 =0; 這樣一位一位的操作,建議多看一下教程
作者: game灬boy    時間: 2020-3-11 15:04
我有一個大膽的想法,將頭文件中的
sfr P0    = 0x80;
sfr P1    = 0x90;
sfr P2    = 0xA0;
sfr P3    = 0xB0;
中間插入一個PA如:
sfr P0    = 0x80;
sfr PA    = 0x85;
sfr P1    = 0x90;
sfr P2    = 0xA0;
然后定義每個腳
/*        PA        */
sbit PA0        =P1^0;
sbit PA1        =P1^1;
sbit PA2        =P1^2;
sbit PA3        =P1^3;
自己沒有試,但我覺得想法沒問題
作者: xxpp2011    時間: 2020-3-11 15:26
為什么不直接按位定義呢,數碼管三個引腳分別定義P0的其中一位就好

作者: panmingfu    時間: 2020-3-11 16:59
一樓的做法可以試下
作者: 一只小龍貓    時間: 2020-3-11 17:36
直接操作不行嗎?





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1