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

按键输入数字单片机

发布时间: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口,就能知道那个键按下;

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

阅读全文

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

热点内容
抖音小店app如何联系客服 浏览:973
linux打开多个终端 浏览:500
linux中的命令 浏览:573
优化小米6相机算法 浏览:256
ak47pdf 浏览:141
人与文化pdf 浏览:640
原子币app在哪里注册的 浏览:529
php数组保存文件 浏览:226
无理的命令 浏览:510
问道手游解压失败是什么原因 浏览:776
mysql命令提示 浏览:373
apachephp中文乱码 浏览:342
pythonimportpylab 浏览:238
阿里云app服务器价格表 浏览:981
appstore怎么抢手机 浏览:845
打印服务器是什么打印队列 浏览:359
网上怎么用app办理营业执照 浏览:861
sql如何查看服务器地址 浏览:780
编译速度和系统有关吗 浏览:59
复盛制冷压缩机 浏览:983