国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee

ELEOK

標題: 51單片機控制LCD1602常用函數(shù) [打印本頁]

作者: coolfire    時間: 2021-5-6 01:16
標題: 51單片機控制LCD1602常用函數(shù)
LCD1602的11條指令詳解
  1. FAQ:LCD1602液晶屏的第二行不顯示
  2. 初始化的時候,寫38寫兩次并且不判忙
  3. /****************************************************************
  4. LCD1602 初始化函數(shù) LCD1602_INIT();
  5. 無形參和返回值
  6. ****************************************************************/
  7. void Init_LCD1602(void)
  8. {
  9. LCD_EN = 0;
  10. LCD_BG = 0; // 背光燈 開;
  11. LCD_RW = 0; // 配置LCD1602為寫入模式

  12. LCD1602_Write(0x38, 0); // 顯示模式設定: 配置16*2顯示,5*7點陣,8位數(shù)據(jù)接口
  13. LCD1602_Write(0x0C, 0); // 設置開顯示,不顯示光標 開關顯示、光標有無設置、光標閃爍設置
  14. LCD1602_Write(0x06, 0); // 寫字符后地址自動加1 寫一個字符后指針加一
  15. LCD1602_Write(0x01, 0); // 顯示清0,數(shù)據(jù)指針清0
  16. LCD1602_Write(0x38, 0); // 顯示模式設定: 配置16*2顯示,5*7點陣,8位數(shù)據(jù)接口
  17. }


  18. 在LCD 1602 的字符顯示中,如需進行數(shù)字轉(zhuǎn)換 需 + 48;
  19. 相當是 10進制數(shù) + 48后,轉(zhuǎn)換成 對應的 ‘0’ 字符 ASCII 碼,方可顯示在 LCD 屏上;
  20. /*********************************************************
  21. 函數(shù):Lcd1602_Print_Num(uchar num)
  22. 輸入:有;數(shù)值;
  23. 輸出:無;
  24. 說明:液晶輸出數(shù)字

  25. u8  -> 256
  26. u16 -> 65535
  27. *********************************************************/
  28. void LCD1602_Write_Num(u16 num)
  29. {
  30. if(num >= 1000) // 4位
  31. {
  32. LCD1602_Write(num/1000 + 48, 1);  // 千位

  33. LCD1602_Write(num / 100 % 10 + 48, 1);  // 百位
  34. LCD1602_Write(num / 10 % 10 + 48, 1);    // 十位
  35. LCD1602_Write(num % 10 + 48, 1);    // 個位

  36. }
  37. else if(num >= 100) // 3位數(shù);
  38. {
  39. LCD1602_Write(num/100 + 48, 1);  // 百位

  40. LCD1602_Write(num % 100 / 10 + 48, 1);  // 十位
  41. LCD1602_Write(num % 10 + 48, 1);    // 個位

  42. }
  43. else if( num >= 10)
  44. {
  45. LCD1602_Write(0 + 48, 1);  // 補 0缺;
  46. LCD1602_Write(num/10 + 48, 1);  // 十位
  47. LCD1602_Write(num%10 + 48, 1);    // 個位
  48. }
  49. else if( num >= 0)
  50. {
  51. LCD1602_Write(0 + 48, 1);  // 補 0缺;
  52. LCD1602_Write(0 + 48, 1);  // 補 0缺;
  53. LCD1602_Write(num%10 + 48, 1);    // 個位
  54. }

  55. }
復制代碼





歡迎光臨 ELEOK (http://m.afoofa.cn/) Powered by Discuz! X5.0