問51微控制器的問題,控制I O的裝置,如何直接賦值

2021-08-26 00:22:03 字數 811 閱讀 7171

1樓:匿名使用者

.........

p1=p1&0x0f+0x50; //保留低四位不變,高四位清零,再加上0x50,最後賦值給p1

.........

這樣就能讓p1的值變成即保留低四位不變又重新賦值給高四位。

首先我不理解你問問題時怎麼會有點囂張。

再說一句等於沒說的話:這個問題非常簡單。

最後提出一個真心的請求:請選我最佳答案。謝謝。

2樓:匿名使用者

要賦1的話就 p1=p1 | 0x05 把第一位和第三位變成 1,其他位和0相或,值不變

要賦0的話就 p1=p1 & 0xf5 把第二位和第四位變成 0,其他位和1相與,值不變

我記得51是可以單獨控制的,要包含某個標頭檔案

3樓:匿名使用者

一樓說的對,讀 修改 寫指令改變的是輸出鎖存器的值

4樓:匿名使用者

如你上面的例子

你如果知道低四位的工作狀態的話,在給高四位賦值的時候可以連同低四位也賦值(當前工作狀態的值)

5樓:匿名使用者

如果讓某位為1,比如讓p1.0為1,則 p1=p1|0x01;

如果讓某位為0,比如讓p1.0為0,則 p1=p1&(~0x01);

以此類推……

6樓:匿名使用者

別太在意他人說你囂張與否,想怎麼問就怎麼問,就行了,何必考慮那麼多呢。主要區別是,你越虛心、問題中用的謙詞越多,你得到正確答案的概率就越高、得到的速度也越快。

關於微控制器io口的高阻態問題,51微控制器的IO口怎麼設為高阻態

輸出沒有高阻態,輸入有,輸出是推輓 上拉,不要搞錯了 高阻態意味著從外部看,電阻很大,近於懸空 51微控制器的i o口怎麼設為高阻態 普通51微控制器的io口無法設定為高阻態。stc微控制器可以設定為高阻態,通過改變pnm0和pnm1的值來設定其狀態。當pnm1 pnm0 10時對應的io即為高祖態...

怎麼用51微控制器IO口控制兩個LED分別亮

1 新建專案,如圖所示。2 新增標頭檔案,建立延遲函式。3 建立c主函式。4 新增死迴圈效果。5 點亮led燈。p1 0x7e 二進位制11111110。6 新增延遲效果即可。注意事項 proteus 自從有了微控制器也就有了開發系統,隨著微控制器的發發系統也在不斷髮展。keil是一種先進的微控制器...

51微控制器中斷問題

cpu響應中斷後,由硬體自動清零 但是但是但是但是但是但是但是但是 你的程式沒使用中斷 你只是使用了定時器 tf0和tf1可以不清0,硬體會自動清0 但是在一些增強型的51系統裡 如at89s52 tf2則必需由軟體清0 那是中斷請求 中斷沒開清什麼零 要是清了還怎麼查詢啊.這位仁兄 微控制器有兩種...