首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

LCD1602 液晶顯示驅動程序:數據處理與分行顯示函數實現

     編輯:關於C語言

LCD1602 液晶顯示驅動程序:數據處理與分行顯示函數實現

1. 數據結構

typedef struct {
    unsigned long int mL_data;
    unsigned long int L_data;
    unsigned long int M3_data;
} water_date;

2. 數據處理函數 DATA_DEAL

  • 將三路流量數據轉換為定長 ASCII 字符串 "000mL;000L;000M3"(共 17 字符)。
  • 公式:mL_data * 1000 / 450 換算為 mL,取三位數字填入對應位置(+0x30 轉 ASCII)。
  • 若所有數據為 0 返回 0(不顯示)。

3. 顯示函數 LCD1602_WRITE

  • 參數:行 y(1/2)、列 x(0-15)、字符串指針。
  • 發送命令 0x06(光標右移)、定位 lcd_pos(第1行 0x00,第2行 0x40)。
  • 循環發送字符 lcd_wdat,超過 16 列截斷返回錯誤碼。
  • 返回狀態枚舉 WRITE_OK/WRITE_NO。

適用於嵌入式水表/流量計顯示模組,展示了數值轉定長字符串、LCD 寫時序封裝的典型模式。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved