比如在微控制器裡可以這樣定義sbit a p2 0,在stm

2021-04-19 06:16:51 字數 1471 閱讀 6268

1樓:匿名使用者

#define a=pb(x);

2樓:匿名使用者

stm32沒有sbit指令,通過對gpio的暫存器賦值修改管腳的值

微控制器輸入時為什麼要先定義介面?比如直接使用p2^0的值為什麼不可以而要宣告sbit xx=p2^0;?

3樓:匿名使用者

我看著這句話「把埠賦值給變數一次」,我讀不通,解釋不了

很久沒弄51了,也沒檢視編譯器裡的標頭檔案,我的解釋可能有錯

本人理解如下:首先,sbit xx=p2^0;這個條語句是編譯器幫你完成轉換的

你要知道你燒寫到晶片中最後的程式**不是c語言,為什麼要這麼做很好回答,

這就是規定,別人設計這個編譯器的人就是這麼規定這個語法的,

那你有沒有想過,為什麼你寫上一句int i,就定義了一個整型變數?

為什麼不可以這樣定義:整型 i,為什麼不能用中文寫程式,要用英文?

這是別人規定的,如果你不想這麼用,很簡單,你自己做一個編譯器

不過,等你到了那個水平,不知道你還願意花時間去做這種事不?(除非工作需要)

你說的變數和埠變化的意思,不知道是我理解的這樣:

你的意思是:執行char i =p2;後,i的值就隨著埠上電平的改變而改變?

不知道你是不是問這個?

但關於這問題的答案是否定的,什麼時候執行了i=p2這條語句,i就是當時p2埠上的電平情況。你要想 i 這個變數隨著埠電平的變化而變化,很簡單,你經常執行i=p2這句話就行了。就像掃描一樣,每隔一段時間,我看一下埠的電平是什麼情況。

不知道解釋的好不好,如有不當,請見諒

4樓:我是

因為p2^0口程式自己沒有自己定義,必須自己宣告,但是你可以直接對整個p2口進行操作,如

p2=0xff. 這是因為p2口在include中得reg51.h已經定義好了,你可以把滑鼠放在reg51.

h上,右鍵,選擇open,檢視裡面已經定義多得一些引腳和暫存器等東西。

5樓:匿名使用者

p2^0其實是運算式,所以sbit xx=p2^0;是能夠成立的,而p2^0=0;這樣的語句是不成立的

微控制器中sbit p0=p2^0是什麼意思

6樓:匿名使用者

微控制器中sbit p0=p2^0是一個位變數定義語句,意思是定義位變數p0為p2.0。但是從這句話本身來說,在編譯時會出錯的,因為p0是內部關鍵字,代表p0口,不能用來表示使用者自定義變數。

7樓:冬雨紛飛

額 這個命名不規範 應該是相對於修改硬體後的程式修改 意思是把p2^0的埠命名為p0 然後下面程式中出現p0處即為p2^0的埠設定。要看整個程式為什麼要這樣命名。

8樓:

這個是位定義的 就是說用p0表示p2.0口

微控制器可以控制DSP嗎,微控制器可以控制DSP嗎

紅綠燈識別?用攝像頭就得了,紅和綠的取樣值測下,然後比對就行了。也有顏色感測器的存在,不過距離很近,而且還需要自己給光源。紅綠燈識別資料量一般不是很多,估計只要一個20mips左右的晶片就能搞定,dsp其中有很多資料處理的複雜整合部分,一半能跑到100mips左右,能用就更好了。用微控制器控制dsp...

我是微控制器新手不知道微控制器可以做什麼os那個大神可以介紹下

微控制器廣泛應用於儀器儀表 家用電器 醫用裝置 航空航天 專用裝置的智慧化管理及過程控制等領域,大致可分如下幾個範疇 在智慧儀器儀表上的應用 微控制器具有體積小 功耗低 控制功能強 擴充套件靈活 微型化和使用方便等優點,廣泛應用於儀器儀表中,結合不同型別的感測器,可實現諸如電壓 功率 頻率 溼度 溫...

51微控制器c語言中delay函式是怎麼定義和使用的

定義一個延時xms毫秒的延時函式 void delay unsigned int xms xms代表需要延時的毫秒數 使用 void delay10us uchar ms i 延時值 1.75 12 ms 15 41 在c51中進行精確的延時子程式設計時,儘量不要或少在延時子程式中定義區域性變數,所...