case 1: Write_Cmd(0x80+x);break; case 2: Write_Cmd(0x90+x);break; case 3: Write_Cmd(0x88+x);break; case 4: Write_Cmd(0x98+x);break;
时间: 2023-12-06 21:41:06 浏览: 36
这段代码看起来像是在控制液晶显示屏的地址指针,根据传入的参数 x,选择不同的命令发送给液晶屏幕。不过具体的含义需要结合液晶屏幕的型号和数据手册来确定。一般来说,0x80 是设置光标位置到第一行第 x 个字符,0x90 是设置光标位置到第二行第 x 个字符,0x88 和 0x98 则是设置光标位置到 CGRAM (Character Generator RAM) 或 DDRAM (Display Data RAM) 的特定地址,也就是可以用来显示自定义字符或者图标。
相关问题
void LCD_PutString(unsigned char x,unsigned char y,unsigned char *s) { switch(y) { case 1: Write_Cmd(0x80+x);break; case 2: Write_Cmd(0x90+x);break; case 3: Write_Cmd(0x88+x);break; case 4: Write_Cmd(0x98+x);break; default:break; } while(*s>0) { Write_Data(*s); s++; DelayUs2x(50); } }
这是一段 C 语言代码,用于在液晶屏幕上显示字符串。函数名为 `LCD_PutString`,接收三个参数:`x` 表示横坐标,`y` 表示纵坐标,`s` 是要显示的字符串。
函数中使用了一个 switch 语句,根据纵坐标 `y` 的值来设置液晶屏幕的起始地址。然后利用 while 循环遍历字符串,逐个字符地写入液晶屏幕,并通过 `DelayUs2x` 函数进行延时。这个延时的作用是为了让字符能够在屏幕上逐渐出现,而不是一下子全部显示出来。
void LCD_Position(unsigned int X, unsigned int Y) { int Pos; if (X==1) X=0x80; else if (X==2) X=0x90; else if (X==3) X=0x88; else if (X==4) X=0x98; Pos = X+Y ; lcdPosition=Pos; write_cmd(Pos); //显示地址 }和void write_dat(int dat) { // check_busy(); //判忙 check_busy(); LCD_RS_H; LCD_RW_L; GPIOG->ODR=(GPIOG->ODR&0xFF00)|dat; LCD_EN_H; delay_ms(1); LCD_EN_L; }如何用switch和case语句中写出矩阵按键显示0到9利用上面的函数显示到LCD12864
你可以使用 switch 和 case 语句来实现矩阵按键显示 0 到 9,并利用上提供的函数将数字显示在 LCD12864 上。以下是一种示例实现:
```c
void displayNumberOnLCD(unsigned int number)
{
unsigned int X = 1;
unsigned int Y = 1;
switch(number)
{
case 0:
LCD_Position(X, Y);
write_dat('0');
break;
case 1:
LCD_Position(X, Y);
write_dat('1');
break;
case 2:
LCD_Position(X, Y);
write_dat('2');
break;
// 依次添加 case 3 到 case 9 的情况
case 3:
LCD_Position(X, Y);
write_dat('3');
break;
// ...
case 9:
LCD_Position(X, Y);
write_dat('9');
break;
default:
// 如果输入的数字不在 0 到 9 范围内,可以选择不进行任何操作或者显示错误信息等处理
break;
}
}
```
在上面的代码中,`displayNumberOnLCD` 函数根据输入的数字使用 switch 和 case 语句来选择对应的情况并调用 `LCD_Position` 和 `write_dat` 函数来在 LCD 上显示相应的数字。
你可以根据具体的需求修改 `X` 和 `Y` 的值,以确定数字在 LCD 上的位置。
希望这个示例能够帮助你理解如何使用 switch 和 case 语句来实现矩阵按键显示数字到 LCD 上。如果有任何进一步的问题,请随时提问。
相关推荐
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)