Ⅰ 如何判斷是51單片機晶元
判斷一個單片機晶元是不是51單片機晶元,從外觀上是無從判斷的,只有通過看晶元技術手冊,如果手冊介紹使用了51內核,那麼這個晶元不管多麼簡單亦或多麼復雜,它都是51單片機晶元。
Ⅱ 51單片機串口接收單字元後如何進行判斷
如果在串口助手上發送字元數據
那麼在單片機上接收的就可以用該字元對應的十六進制碼進行判斷
比如你的數據
0,以字元形式發送0,換成十六進制就是
30
單片機用0x表示十六進制數據,所以就是
0x30
判斷語句如下
if
(
c==0x30
)
{ LED
=
~LED;
}
具體的字元與十六進制碼對換,可以參考下表
Ⅲ 51單片機定址方式判別 在51定址中 MOV A,Rn 和MOV direct,Rn 還有MOV Rn,direct 怎麼判別啊
MOV A,Rn 和MOV direct,Rn是寄存器定址,因為操作數都是Rn(寄存器)
MOV Rn,direct是直接定址,因為操作數是direct(地址)。
綜述,要判斷定址方式可以看它的操作數。
Ⅳ 51單片機,矩陣按鍵,長按短按判斷
/*網友反映長鍵結束後會送出短鍵值,特作更改2019.03.29*/
//1,再寫一個長短鍵判斷函數,調用那個按鍵掃描函數
unsignedcharKEY_process(void)
{
staticunsignedcharOld_key=0;//上次按鍵值
staticunsignedcharKey_buf=0;//按鍵有效保存
staticunsignedcharPress_CNT=0;//按鍵按下時間,根據調用時間間隔確定
=0;//長鍵有效標記變數
unsignedcharNew_key=0;//當前按鍵值
unsignedcharKEY=0;//待返回的按鍵值
New_key=keyscan();
if(New_key==Old_key)
{
if(New_key!=0)//建議keyscan返回0的那個值改為其他值,方便這里判斷
{
Key_buf=New_key;
if(Press_CNT<0xff)
{
Press_CNT++;
}
if(Press_CNT>=100)//調用時間間隔確定*100為長按時間,
{
KEY=Key_buf+100;//將短鍵+100作長鍵區分
Press_CNT=0;//按鍵時間清0
Key_buf=0;//按鍵緩沖清0
bPreKeyIsLong=1;//長鍵有效標記
}
}
else//按鍵彈起
{
if(Key_buf&&(bPreKeyIsLong==0))//僅在長鍵無效時
{
KEY=Key_buf;//將緩沖值送將返回的值
Key_buf=0;//清按鍵緩沖
}
Press_CNT=0;//按鍵彈起或按其他按鍵,將長按時間清0
bPreKeyIsLong=0;//長鍵有效標記清0
}
}
Old_key=New_key;//將新按鍵賦給下一次的舊按鍵值
returnKEY;//0代表無按鍵
}
//2,彈起不返回已確定的值,則在keyscan最後加一句判斷
if((P3&0X0F)==0X0F)//按鍵已經彈起
{
keyvalue=MY_key;//使按鍵等於一個自定義的值
}
Ⅳ 51單片機P1口做輸入口時,要求判斷高電平是否輸入,要對P1口怎麼設置謝謝!
其實輸入高電平是不太符合51單片機的使用。不過應該可以採用查詢的方法。譬如,你把需要檢測的腳置1,然後在查詢,如果是1,輸入就是高電平,如果是0,輸入就是低電平。為安全起見,建議你置1查詢就好了。
Ⅵ 51單片機中為什麼判斷電平要判斷兩次而且其中還要用delay函數
這是按鍵消除抖動的一種方法,這種採用延時的方法叫軟體清抖動。
因按鍵是機械接觸才導通的,在按下鍵時,由於機械抖動,會產生多次接通和斷開的現象,但抖動也是很短的時間。所以,兩次判斷之間加延時,就可以避開抖動,延時後再判斷時,按鍵就已經是穩定接觸了,判斷才正確。
Ⅶ 51單片機 怎麼接收字元串 和 對字元串的判斷
可以用延時來判斷,例如波特率9600b/s, 其2個位元組之間間隔<1ms
假如10ms以上沒有接收則認為結束
unsigned long i;
whiel(1) {i=0;while(!RI) i++;if(i>50000) {i=0;flag=1;break;}RI=0;j=SBUF;}
Ⅷ 如何用51單片機判斷一個輸入電壓的正負
單片機引腳內部有上下嵌位二極體,
當輸入電壓在vcc+0.7v到vss-0.7v之間時是不會有問題的,
如果超出,
二極體會流過較大電流,
電流大小取決於這個電壓的輸入功率,
一般情況下,
超過1v以內沒有問題,
以上就不好說了,
Ⅸ 如何簡易的對mcs-51單片機是否正常工作進行判斷
51單片機中1個機器周期等於12個振盪周期,根據指令的不同,一個指令周期等於1~3個機器周期,12mhz它的機器周期為1us.也就是執行一個指令用1~3微秒.
Ⅹ c51單片機怎麼判斷小數
1、首先將輸入C51單片機的數字整數部分保存到2個char型變數中。
2、將小數部分保存到另外兩個char型變數中。
3、最後在計算的時候將所有的數單獨輸出。就可以讓C51單片機判斷小數了。