久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
LCD1602液晶怎么往后退一格?
[打印本頁]
作者:
格式化無悔
時間:
2024-7-17 09:30
標(biāo)題:
LCD1602液晶怎么往后退一格?
LCD1602液晶顯示問題
1602液晶怎么往后退一格,比如輸入了數(shù)字''789’'想把''9''刪除,就剩前兩個,這個功能怎么實(shí)現(xiàn)?求大佬指點(diǎn)
作者:
飛云居士
時間:
2024-7-17 12:06
當(dāng)然可以,以下是用C51編程語言編寫的示例代碼,展示如何在1602 LCD上刪除最后一個字符。假設(shè)你使用的是STC單片機(jī),并且已經(jīng)連接好了LCD模塊:
### 硬件連接
假設(shè)1602 LCD連接如下(引腳定義可以根據(jù)實(shí)際硬件連接調(diào)整):
- RS -> P2.0
- RW -> P2.1
- E -> P2.2
- D4 -> P2.4
- D5 -> P2.5
- D6 -> P2.6
- D7 -> P2.7
### 示例代碼
```c
#include <reg52.h>
#define LCD_RS P2_0
#define LCD_RW P2_1
#define LCD_E P2_2
#define LCD_DATA P2
void delay(unsigned int ms);
void LCD_command(unsigned char cmd);
void LCD_data(unsigned char dat);
void LCD_init(void);
void LCD_setCursor(unsigned char row, unsigned char col);
void LCD_clearLastChar(void);
void main() {
LCD_init();
LCD_setCursor(0, 0);
LCD_data('7');
LCD_data('8');
LCD_data('9');
delay(2000); // 延遲2秒
LCD_clearLastChar(); // 刪除最后一個字符
while(1);
}
void delay(unsigned int ms) {
unsigned int i, j;
for(i = ms; i > 0; i--)
for(j = 110; j > 0; j--);
}
void LCD_command(unsigned char cmd) {
LCD_RS = 0;
LCD_RW = 0;
LCD_DATA = (LCD_DATA & 0x0F) | (cmd & 0xF0); // 高四位
LCD_E = 1;
delay(1);
LCD_E = 0;
delay(1);
LCD_DATA = (LCD_DATA & 0x0F) | (cmd << 4); // 低四位
LCD_E = 1;
delay(1);
LCD_E = 0;
delay(1);
}
void LCD_data(unsigned char dat) {
LCD_RS = 1;
LCD_RW = 0;
LCD_DATA = (LCD_DATA & 0x0F) | (dat & 0xF0); // 高四位
LCD_E = 1;
delay(1);
LCD_E = 0;
delay(1);
LCD_DATA = (LCD_DATA & 0x0F) | (dat << 4); // 低四位
LCD_E = 1;
delay(1);
LCD_E = 0;
delay(1);
}
void LCD_init(void) {
LCD_command(0x28); // 4位模式, 2行, 5x8點(diǎn)陣
LCD_command(0x0C); // 顯示開, 光標(biāo)關(guān), 不閃爍
LCD_command(0x06); // 文字不動, 光標(biāo)右移
LCD_command(0x01); // 清屏
delay(2);
}
void LCD_setCursor(unsigned char row, unsigned char col) {
unsigned char addr;
if(row == 0)
addr = 0x80 + col;
else
addr = 0xC0 + col;
LCD_command(addr);
}
void LCD_clearLastChar(void) {
LCD_command(0x10); // 光標(biāo)左移一位
LCD_data(' '); // 輸出空格覆蓋原字符
LCD_command(0x10); // 光標(biāo)再左移一位,回到空格處
}
```
### 說明
1. `delay` 函數(shù)用于產(chǎn)生延時,單位是毫秒。
2. `LCD_command` 函數(shù)發(fā)送命令到LCD。
3. `LCD_data` 函數(shù)發(fā)送數(shù)據(jù)到LCD。
4. `LCD_init` 函數(shù)初始化LCD。
5. `LCD_setCursor` 函數(shù)設(shè)置光標(biāo)位置。
6. `LCD_clearLastChar` 函數(shù)刪除最后一個字符,即先將光標(biāo)左移一位,輸出一個空格,再將光標(biāo)左移到空格的位置。
### 注意事項(xiàng)
- 引腳定義和連接方式可以根據(jù)實(shí)際硬件連接進(jìn)行調(diào)整。
- 確保在使用LCD前正確初始化。
- 這個代碼假設(shè)你使用的是4位數(shù)據(jù)模式,如果你使用8位數(shù)據(jù)模式,需要調(diào)整相關(guān)代碼。
希望這些能幫到你
作者:
cy009
時間:
2024-7-17 13:18
不明白你的用意,這種功能用在什么場合?程序是可以實(shí)現(xiàn)的,只是意義在哪兒?
作者:
xiaobendan001
時間:
2024-7-17 13:31
是不顯示9還是789變成78?789/10就是78了
作者:
devcang
時間:
2024-7-17 13:32
光標(biāo)移位、輸出' '
作者:
zhuls
時間:
2024-7-17 13:44
讓最后一位顯示“ ”空白字符,然后光標(biāo)后退一位就OK了
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
九九国产在线观看
|
国产免费一区二区
|
精品国产一区二区三区在线观看
|
久久综合影院
|
99爱在线视频
|
久久久免费观看视频
|
一区二区视频在线
|
日本不卡高字幕在线2019
|
欧美大片黄
|
干一干操一操
|
精品美女久久久久久免费
|
美女久久久久久久久
|
日韩免费中文字幕
|
久久不卡
|
日本精品一区二区三区视频
|
国产精品一区久久久
|
精品久久久久一区二区国产
|
欧洲视频一区
|
精品人伦一区二区三区蜜桃网站
|
久久激情网
|
日韩成人在线播放
|
日韩欧美三区
|
欧美另类日韩
|
天堂亚洲
|
99久久99久久精品国产片果冰
|
成人亚洲精品久久久久软件
|
久久久国产一区二区三区
|
久久久资源
|
亚洲欧洲国产视频
|
亚洲成人三级
|
一区二区福利视频
|
国产小视频在线看
|
亚洲午夜精品视频
|
夜夜精品浪潮av一区二区三区
|
精品视频国产
|
99精品福利视频
|
日韩欧美在线不卡
|
亚洲精品888
|
美美女高清毛片视频免费观看
|
亚洲毛片
|
日本一区二区不卡
|