找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7863|回復(fù): 3
收起左側(cè)

分享一個51單片機(jī)的LCD1602顯示匯編語言程序

[復(fù)制鏈接]
ID:308653 發(fā)表于 2018-4-15 17:02 | 顯示全部樓層 |閱讀模式
分享一個51單片機(jī)的LCD1602顯示程序

單片機(jī)源程序如下:
  1. RS  EQU  P1.1
  2. RW  EQU  P1.2
  3. E   EQU  P1.3
  4. ORG  0000H
  5. AJMP MAIN
  6. ORG  0030H
  7. MAIN:
  8. CLR RS
  9. CLR E
  10. CLR RW
  11. MOV SP,#60H   
  12. MOV P0,#01H ;清屏   
  13. CLR RS    ;送命令   
  14. CLR RW   
  15. CLR E   
  16. LCALL DELAY   
  17. SETB E   
  18. MOV P0,#38H ;顯示功能      
  19. LCALL ENABLE   
  20. MOV P0,#0FH ;顯示開關(guān)控制   
  21. LCALL ENABLE   
  22. MOV P0,#06H ;顯示光標(biāo)右移加1   
  23. LCALL ENABLE   
  24. MOV  DPTR,#TABLE1   
  25. ACALL DD2;DD2是LCD第一行顯示TABLE1   
  26. ACALL PPP  ;PPP是LCD第二行顯示TAB
  27. SJMP $
  28. DD2: MOV P0,#80H;第一行的開始位置   
  29. LCALL ENABLE   
  30. LCALL WRITE1;到TABLE1取碼?   
  31. RET
  32. ENABLE:
  33. CLR RS    ;送命令   
  34. CLR RW   
  35. CLR E   
  36. LCALL DELAY   
  37. SETB E   
  38. RET
  39. WRITE1: MOV R1,#00H   ;顯示table中的值  
  40. A1:   MOV A,R1;到table取碼   
  41. MOVC A,@A+DPTR   
  42. LCALL  WRITE2  ;顯示到lcd   
  43. INC R1   
  44. CJNE A,#00H,A1  ;是否到00h   
  45. RET
  46. WRITE2:MOV P0,A  ;顯示   
  47. SETB RS   
  48. CLR RW   
  49. CLR E   
  50. CALL DELAY   
  51. SETB E   
  52. RET   
  53. DELAY:
  54. MOV R4,#10
  55. D1:MOV R5,#0F8H   
  56. D2:DJNZ R5,D2   
  57. DJNZ R4,D1   
  58. RET
  59. PPP:
  60. MOV P0,#0C0H;第二行的位置   
  61. LCALL ENABLE   
  62. MOV DPTR,#TAB;顯示   
  63. LCALL WRITE3;到TAB取碼   
  64. RET  
  65. WRITE3: MOV R1,#00H   ;顯示table中的值  
  66. A2:   MOV A,R1;到table取碼   
  67. MOVC A,@A+DPTR   
  68. LCALL  WRITE2  ;顯示到lcd   
  69. INC R1   
  70. CJNE A,#00H,A2  ;是否到00h   
  71. RET
  72. ORG 0C000H
  73. TABLE1: db"NAME: amy       ",00H
  74. TAB:  db"Tel:13218892322 ",00H      
復(fù)制代碼

所有資料51hei提供下載:
正確代碼.zip (4.35 KB, 下載次數(shù): 56)


回復(fù)

使用道具 舉報(bào)

ID:302373 發(fā)表于 2018-4-15 19:44 | 顯示全部樓層
厲害啊
回復(fù)

使用道具 舉報(bào)

ID:222443 發(fā)表于 2018-4-26 23:14 | 顯示全部樓層
CLR RS
CLR E
CLR RW
MOV SP,#60H   
MOV P0,#01H ;清屏   
CLR RS    ;送命令   
CLR RW   
CLR E   
RS RW E為什么多次置0
回復(fù)

使用道具 舉報(bào)

ID:313328 發(fā)表于 2018-6-4 20:50 | 顯示全部樓層
學(xué)習(xí)了,感謝
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表