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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3491|回復: 9
打印 上一主題 下一主題
收起左側

請問單片機C語言如何用鍵盤給變量賦值?

[復制鏈接]
跳轉到指定樓層
樓主
ID:897410 發表于 2021-4-13 22:16 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
舉個例子 我想用鍵盤 輸入 4個十進制數 80 ,5 ,70 ,4,這四個數,應該如何去考慮,看了好多關于鍵盤的資料,還是不知道這個程序該如何去寫
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:716656 發表于 2021-4-14 01:32 來自觸屏版 | 只看該作者
檢測到第一個數字把數賦值給shu【1】,i++,這樣一直測就行。如果按下確定鍵或計時超過多少未操作,把之前測的數,組合成1個幾位數字,不知道我說清了沒有

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

板凳
ID:592807 發表于 2021-4-14 08:58 | 只看該作者
壓著我頭發啦 發表于 2021-4-14 01:32
檢測到第一個數字把數賦值給shu【1】,i++,這樣一直測就行。如果按下確定鍵或計時超過多少未操作,把之前 ...

最簡單就是 080  005  070  004
再進一步 80+確認按鍵  5+確認按鍵  70+確認按鍵   4+確認按鍵
再再進一步  使用定時器,2秒內無其他數字輸入則將數字合成輸入

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:429003 發表于 2021-4-14 15:00 | 只看該作者
你首先的建立一條硬件鏈路,單片機與PC機串口相互連接,PC機端用串口工具發送格式化的數據串給單片機,單片機收到后按約定格式提取需要的數據后賦值給相關的變量!

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

5#
ID:844772 發表于 2021-4-14 15:14 | 只看該作者
就四個數,不如就用四個按鍵分別代表這四個數,按哪個就是輸入哪個了。

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

6#
ID:897410 發表于 2021-4-14 21:56 | 只看該作者
xstong 發表于 2021-4-14 15:00
你首先的建立一條硬件鏈路,單片機與PC機串口相互連接,PC機端用串口工具發送格式化的數據串給單片機,單片 ...

只用仿真就行了,而且我不會太用虛擬串口。
回復

使用道具 舉報

7#
ID:905961 發表于 2021-4-14 22:25 | 只看該作者
#i nclude<reg52.h>#define uint unsigned int#define uchar unsigned char#define duank P1               //鍵盤到單片機的端口//DB 50H,1CH,39H,16H,38H,78H,70H,0FEH,0EFH,0FFH;A  B, C,    D,  E, ,F   ,P, -,  ,.  ,COLSE//DB 01H,0C7H,22H,82H,0C4H,88H,08H,0C3H,00H,80H;帶小數點的字形碼0.,1.,-----9.uchar code table[]={     //鍵盤編碼"1~F~0"0xD7,0x32,0x92,0xD4,0x98,0x18,0xD1,0x10,0x90,0x50,0x1C,0x39,0x16,0x38,0x78,0x11};uchar num,temp,num1;void delay(uint z)      //延時子程序 Zms  { uint x,y; for(x=z;x>0;x--)  for(y=110;y>0;y--);}uchar keyscan();       //鍵盤函數聲明void display(uchar aa);//顯示函數聲明void main()            //主函數{  while(1)  {   display(keyscan());  }}void display(uchar aa)    //顯示子程序{   //dula=1;   //P0=table[aa-1];   //dula=0;            SBUF=table[aa-1];}uchar keyscan()   //鍵盤掃描程序,取回一個鍵盤號{   duank=0xfe;   temp=duank;   temp=temp&0xf0;   while(temp!=0xf0)    {     delay(5);     temp=duank;     temp=temp&0xf0;     while(temp!=0xf0)     {      temp=duank;     switch(temp)      {       case 0xee:num=1;        break;   
回復

使用道具 舉報

8#
ID:905967 發表于 2021-4-14 22:51 | 只看該作者
鍵盤編碼"1~F~0"0xD7,0x32,0x92,0xD4,0x98,0x18,0xD1,0x10,0x90,0x50,0x1C,0x39,0x16,0x38,0x78,0x11};

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

9#
ID:429003 發表于 2021-4-15 08:59 | 只看該作者
YYC7491 發表于 2021-4-14 21:56
只用仿真就行了,而且我不會太用虛擬串口。

仿真調試,打開變量監視窗口,可監控、修改任何一個變量,有什么困哪? 沒太理解你的問題!
回復

使用道具 舉報

10#
ID:897410 發表于 2021-4-15 18:10 | 只看該作者
xstong 發表于 2021-4-15 08:59
仿真調試,打開變量監視窗口,可監控、修改任何一個變量,有什么困哪? 沒太理解你的問題!

Proteus仿真的時候 可以直接修改變量嗎? 對這些軟件 只會基本的功能,用的不是很熟練
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表