导航:首页 > 操作系统 > 按键输入数字单片机

按键输入数字单片机

发布时间:2023-09-24 09:46:10

A. 51单片机如何用矩阵按键输入多位数,比如输入6显示6,再输入7显示67,最好给个c的程序,谢了!

用数组啊,如果是指定位数的就比较简单

当第一次输入时i=0,第一个数6放a[0],i=1,第二个数7放a[1],显示就是

OUT=a[0]*10+a[1]*1


数组用之前初始化为0,a[2]={0}

//这个好用点,递推
if(key_data)//有按键按下
{
for(i=key_count;i>0;i--;)
{
a[i+1]=a[i];

}
a[0]=key_data;
key_count++;
}

//显示调用,根据你的输入最大数定数组的位数
Sprint=a[3]*1000+a[2]*100+a[1]*10+a[0]*1;

B. 51单片机矩阵键盘输入11位数字,赋值给一个变量

(1)用手指头按下矩阵键盘的0~9数字键即可输入数值。

(2)最后赋值到一个变量上
unsigned char const str1[]="最后";
unsigned char const* pt1=&str1[0];
这样就把最后赋值到指针pt1上了

C. 单片机的矩阵按键怎么输入两位数,例如,先输入2,数码管显示2,再输入3,数码管显示23,有类似程序更好

我的思路是,把你输入的数字先保存在一个数组里,然后实时的显示该数组的内容即可。

#define MAX_NUM 2

uchar num_pos = 0;//输入数字的个数计数。

char num_buff[MAX_NUM] = {-1,-1};

void DisplayNum()
{
for(i = 0; i < num_pos; i++)
{
//在此将num_buff[]的数据显示出来,num_buff[i]的值是-1时,不显示

}

}

void main()
{
while(1)

{
key = KeyScan();//按键扫描,得到输入的数据

if(key >=0 && key <= 9)//有数字按键按下

{
if(num_pos >= MAX_NUM) //达到最大显示个数,清空显示状态。
{
num_pos = 0;
for(i = 0; i < MAX_NUM; i++)

{
num_buff[i] = -1;
}
}
num_buff[num_pos] = key;
num_pos++;
}

DisplayNum();

}
}

D. 51单片机怎么用按键控制一个数码管,按一下显示一个数字,顺序显示

1、首先,要把代码写好,点亮数码管。

E. 51单片机如何用矩阵键盘输入数值,最后赋值到一个变量上

你好!!

你做矩阵键盘检测的时候,会触发相关的IO口的状态,通过分析IO口,就能知道那个键按下;

定义一个变量,将按下的键值赋给变量就行了

阅读全文

与按键输入数字单片机相关的资料

热点内容
单片机串口发射怎么回事 浏览:472
程序员假装自己很忙 浏览:798
程序员能力关键词 浏览:615
plc编程高级视频教程 浏览:610
java递归求n 浏览:84
python绝对路径导入 浏览:126
nex5g加密 浏览:975
18的空岛服务器地址 浏览:86
程序员要学什么硬件 浏览:666
股票涨跌源码怎么看 浏览:576
加密软件做法 浏览:57
美国程序员有多少中国人 浏览:741
人民日报app里怎么看新闻早班车 浏览:587
忘了app怎么办 浏览:531
如何用云服务器做云平台 浏览:301
非箍筋加密区剪力 浏览:119
利联科技服务器卡怎么办 浏览:386
js和python哪个好 浏览:463
c盘的哪些文件夹没用 浏览:83
文件为什么会超出在线解压限制 浏览:591