1樓:德昂當
| 是 或 運算子 按位或的 0|0=0 0|1=1 1|1=1
或運算就是 只要就有一個為1 結果就為1
與之相對應的是 與 運算 &
與運算只要有一個為0 結果就為0 0&0=0 0&1= 0 1&1=1
p1|0xf0 就是把 p1的高4位都置為1 0xf0 二進位制就是 11110000 高4位都是1 所以或運算後 高4位就變成了1 ,低4位因為是0 所以不會對p1低4位原有的值改動。
2樓:匿名使用者
"|" 是 "或" 運算子,或運算就是隻要就有一個為1, 結果就為1,你的程式就是把p1的第7,6,5,4位置1,其它位不變,你的微控制器是當p1.x為1時,x口為輸入,當p1.x為0時,x口為輸出.
3樓:匿名使用者
“|”就是或得意思,意思是將p1口和0xf0(0b11110000)相或那麼p1低四位無論是1還是0或運算之後還是原來的值,而高四位經過或運算後就變為1了。結果就是0b1111***x,***x代表原來p1的值
希望能幫到你
4樓:匿名使用者
51微控制器,c51語法的前提下,分析如下:
1、或運算。x=x|a; 【|】表示按位或運算,將原x值和a值,二進位制形式逐位進行或運算。其結果給x。如x=2|3;(x=3)
2、還有個寫法是p1|=0xf0;
x=3的話,執行 x|=0xf0 後(x=0xf3)3、p1是埠。p1是特殊功能暫存器。寫在這裡,還有個意思:
右邊表示讀取管腳上的p1資料,和右邊0xf0或運算再輸出到p1口。其結果是高四位一定輸出了高電平。第四位保留讀到的值。
常用於讀鍵程式。要慎用(c51與c的不同之處,它與硬體有關,p1是sfr)!第四位將是之前管腳的值,而不一定是上一次賦給p1的值。
可以等效理解為: x=p1;x|=0xf0;p1=x;
基本的微控制器c語言程式設計問題p1=0xff高電平
5樓:匿名使用者
p2=0xff,就是將p2.0~p2.7全部設為1,也就是p2=11111111,當然就不是p2=0x01了咯.
十六進位制的0xff就是二進位制的11111111,你換算成十進位制就是255.
6樓:匿名使用者
51微控制器是8位的,意思就是每一組埠都有8個位;轉換成2進製為1111 1111,10進製為255,16進製為0xff,
比如我現在要讓p1口全亮版(高電平為亮權),那麼是不是p1^0到p1^7這個8個埠全部為1,那麼就為:
p1 = 2#1111 1111;但是在keil軟體中不可以用2進製表示,那麼我們就用10進位制或16進位制來賦值,
p1 = 0xff;
p1 = 255;
如果 p1 = 0x01,這個意思就是p1^0這個埠為1,其它的埠都為0;
你主要是進位制沒學好,回去複習下各種進位制轉換就好了.
微控制器程式中p1=0x02是什麼意思啊
7樓:匿名使用者
p1=0x02,也就是往p1口送02這個數,將p1.1置高,其餘為低。
8樓:
如果你用的是 51微控制器,那麼它一共有 p0 p1 p2 p3三條匯流排,每條匯流排對應8只引腳,也例如p0^1 ~ p1^7;
你的問題p1 = 0x02,意思就是p1匯流排賦值0x02(十六進位制,也就是0000 0010),也就是p1^1 = 1,其餘賦值0;
望採納謝謝
9樓:匿名使用者
就是p1口的0和1輸出1,其餘為0
51微控制器中的設定埠方向的P0M0,P0M1指的是什麼
小張智慧滑屏 這是部分微控制器才有的功能,非普通89c51,一般喲用的多的是stc15w204s,有8腳和16腳兩種,它們一個p口需要2個八位暫存器才能設定出它的4種狀態,設定每位的最低位是0還是1,比如,普通51埠狀態,p0m0可設定成0x00,m1設定成0x00就可以了,還有強強拉狀態,可以直接...
51微控制器p0p1p2p3口,到底有啥區別啊,他們的基本功能
獅子最愛冥王星 51微控制器p0 p1 p2 p3口區別如下 一 意思不同 p0口作輸出口用時,需加上拉電阻。p0口有複用功能。當對外部儲存器進行讀寫操作時,p0口先是 提供外部儲存器的低8位地址,供外部儲存器地址鎖存器鎖存,然後充當資料線,用於寫出或讀入數 據。p1口 p2口只是普通io口。二 功...
微控制器程式設計按鍵K1 p1 1 K2 p1 2 k3 p1 3 k4 p1 4 p5 p6輸出 k1 k3控制p5,k2k4控制p6
硬體開發 看你連分都沒有花五分鐘給你寫一個程式 如下 include 通用89c52標頭檔案 include intrins.h sbit key 01 p1 1 sbit key 02 p1 2 sbit key 03 p1 3 sbit key 04 p1 4 sbit main a p1 5 ...