单片机C语言case是什么意思

如题所述

单片机中C语言的case就是经典C语言中的switch.......case语句。


基本用法如下:

switch(a)
{
    case xxx1:   // 如果a=xxx1,那么执行该case下面的语句
    {   
        ......
        break;
    }
    case xxx1:  // 如果a=xxx2,那么执行该case下面的语句
    {
        ......
        break;
    }
    default :  // 如果a跟上面所以case后面的值都不相等,那么执行该case下面的语句
        ......    
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-04-12

单片机中C语言的case就是经典C语言中的switch.......case语句。

基本用法如下:

switch(a)

{

case xxx1:   // 如果a=xxx1,那么执行该case下面的语句

{   

......

break;

}

case xxx1:  // 如果a=xxx2,那么执行该case下面的语句

{

......

break;

}

default :  // 如果a跟上面所以case后面的值都不相等,那么执行该case下面的语句

......    

}

本回答被网友采纳
第2个回答  2011-09-22
给你个参考程序,动态扫描数码管显示,键盘是4*4矩阵键盘,使用行列扫描方式,可以按键盘上的数字,在数码管上显示.
PS:这个程序虽然不一定不经修改就能在你的开发板上运行,但你可以用这个程序做模板,通过自己修改而达到掌握的目的.学习编程的最初,就是不断的模仿别人写的程序.
//行列扫描程序,可以自己定义端口和扫描方式,这里做简单介绍
#include <reg52.h>//包含头文件
#define uchar unsigned char
#define uint unsigned int

unsigned char const dofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,
0x77,0x7c,0x39,0x5e,0x79,0x71};//0-F

uchar keyscan(void);
void delay(uint i);

void main()
{
uchar key;
P2=0x00;//1数码管亮 按相应的按键,会显示按键上的字符
while(1)
{
key=keyscan();//调用键盘扫描,
switch(key)
{
case 0x7e:P0=dofly[0];break;//0 按下相应的键显示相对应的码值
case 0x7d:P0=dofly[1];break;//1
case 0x7b:P0=dofly[2];break;//2
case 0x77:P0=dofly[3];break;//3
case 0xbe:P0=dofly[4];break;//4
case 0xbd:P0=dofly[5];break;//5
case 0xbb:P0=dofly[6];break;//6
case 0xb7:P0=dofly[7];break;//7
case 0xde:P0=dofly[8];break;//8
case 0xdd:P0=dofly[9];break;//9
case 0xdb:P0=dofly[10];break;//a
case 0xd7:P0=dofly[11];break;//b
case 0xee:P0=dofly[12];break;//c
case 0xed:P0=dofly[13];break;//d
case 0xeb:P0=dofly[14];break;//e
case 0xe7:P0=dofly[15];break;//f
}
}
}
uchar keyscan(void)//键盘扫描函数,使用行列反转扫描法
{
uchar cord_h,cord_l;//行列值
P3=0x0f; //行线输出全为0
cord_h=P3&0x0f; //读入列线值
if(cord_h!=0x0f) //先检测有无按键按下
{
delay(100); //去抖
if(cord_h!=0x0f)
{
cord_h=P3&0x0f; //读入列线值
P3=cord_h|0xf0; //输出当前列线值
cord_l=P3&0xf0; //读入行线值
return(cord_h+cord_l);//键盘最后组合码值
}
}return(0xff); //返回该值
}

void delay(uint i)//延时函数
{
while(i--);
}

第3个回答  2011-09-22
表选择。case : 1 xx break;
case : 2 yy break;
第4个回答  2011-09-22
switch case 在某种情况下做相应处理

单片机C语言case是什么意思
单片机中C语言的case就是经典C语言中的switch...case语句。基本用法如下:switch(a){ case xxx1: \/\/ 如果a=xxx1,那么执行该case下面的语句 { ... break; } case xxx1: \/\/ 如果a=xxx2,那么执行该case下面的语句 { ... break; } default : \/\/...

单片机C语言,switch,case,break的含义,格式,用法
case 常量表达式n: 语句n; default: 语句n+1;}其语义是:计算表达式的值。 并逐个与case后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行case后的语句,然后不再进行判断,继续执行后面所有case后的语句,直到遇到break或switch语句结束。如表达式的值与所有case后的常量...

case 0xfe:delay(10);单片机c语言中什么意思?
case是选择语句,当输入是0xfe的时候执行delay(10)语句

单片机c语言编程时会用到哪些常用的C语
关键字 用 途 说 明 auto 存储种类说明 用以说明局部变量,缺省值为此 break 程序语句 退出最内层循环 case 程序语句 Switch语句中的选择项 char 数据类型说明 单字节整型数或字符型数据 const 存储类型说明 在程序执行过程中不可更改的常量值 continue 程序语句 转向下一次循环 default 程序语句 Switch...

单片机C语言case 0x01 : P1 = P1 ^ (0x01<<0) ;啥意思P1 = P1 ^...
左移的意思,对于8位的单片机,P1=P1^(,,,<<0)对应的是第一个P1的口然后依次向下。举个例子,如果P1口是对应8个灯左移0位 (就是<<0)就是第一个灯亮,

C语言中的Switch-case语句
……case 常量表达式n:语句n;[break;][default:]语句n+1;[break;]C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨...

用单片机C语言控制6位密码锁。要求有一个清除键和确认键,密码输错了...
用单片机C语言控制6位密码锁。要求有一个清除键和确认键,密码输错了会有报警音。请高手帮助了 程序简单易懂,能实现这些功能就行,我做个毕业设计... 程序简单易懂,能实现这些功能就行,我做个毕业设计 展开  我来答 4个回答 #热议# 该不该让孩子很早学习人情世故? gnjiao 2009-04-04 知道答主 ...

请问在单片机C语言编程中这个“与”运算怎么用
&就是按位与,就是两个变量位都为1,就是1,如果不同时是1,就为0;temp=temp&0xf0; 高四位的状态由你的输入状态决定,低四位被直接置为0 Switch语句就是依据你的temp值进行匹配,将按键状态传入temp变量,然后通过case分支,匹配不同的按键状态 ...

单片机C语言 键盘编程问题 做的 关于密码锁 数码管显示 希望解答 大侠...
在密码锁项目中,通过单片机C语言实现键盘编程,数码管显示功能,需要解决的关键问题在于如何高效且清晰地处理按键输入和响应。这里,我们将重点讨论如何在代码中组织按键处理逻辑。首先,将获取按键键值的逻辑集成到一个名为keyscan()的函数中,确保此函数仅负责从键盘接收并处理按键输入。在主程序中,我们...

关于单片机温度控制系统C语言程序中的按键设置程序,请求详细的介绍下按...
keyflag应该是判断某个按键按了几次,不安的时候为0 if(KeyFlag == 0){ } 按一次时执行 else if(KeyFlag == 1){ if(BUTTON_add == 0 && KeyLock ==0){ } if(BUTTON_reduce == 0 && KeyLock ==0){ } 按二次时执行 else if(KeyFlag == 2){ if(BUTTON_add == 0 && KeyLock...

相似回答