本站單片機qq群號:5813023,7344883人都是爆滿希望大家沖入qq幣升級為高級群,以方便大家學習單片機
七君 19:09:07
有誰用單片機做過電容表的嗎
七君 19:09:13
教我幾招
市丸銀 19:45:22
市丸銀 19:45:43
怎么錯了 哪位大哥告訴我 謝謝
聶強 19:51:17
完整程序打出來我看看吧。
市丸銀 19:52:16
plcd: mov r1,#71h ;顯示內容在71h 72h 73h
lcall delay ;延時一段時間
mov p1,#01h ;寫指令01H,清屏
lcall enable
mov p1,#38h ;寫指令38H,設定LCD為16*2顯示,5*7點陣,8位數據接口
lcall enable
mov p1,#0fh ;寫指令0FH,顯示ON,光標ON,閃爍ON
lcall enable
mov p1,#06h ;寫指令06H,光標輸入方式增量移位
lcall enable
mov p1,#80h ;第一行起始字符地址
lcall enable
mov dptr,#table1 ;第一行顯示字符表頭地址
lcallL disp1 ;顯示第一行數據
mov p1,#0c0h ;第二行起始字符地址
lcallL disp1
mov dptr,#table2 ;第二行顯示字符表頭地址
lcallL disp2 ;顯示第二行數據
ret
;-----------------
ENABLE: CLR RS ;寫指令子程序(請參照1602LCD使用說明書)
CLR RW
CLR E
LCALL DELAY
SETB E
RET
;-----------------
DISP1: MOV R3,#16 ;準備顯示一行16個字符
LOOP1: MOV A,#00H ;將ACC清零
MOVC A,@A+DPTR ;查表取得要顯示的數據
LCALL DISP0 ;寫入一個數據
INC DPTR ;數據表指針加1,準備取下一個數據
DJNZ R1,LOOP1 ;一行沒有顯示完就繼續
RET
;-----------------
disp2: mov r3,#16 ;準備顯示一行16個字符
loop2: mov a,@r1
movc a,@a+aptr
lcall disp0
inc r1
djnz r3,loop2
ret
;___________________
DISP0: MOV P1,A ;寫1字節數據到顯示端口
SETB RS ;寫數據時序(請參照1602LCD使用說明書)
CLR RW
CLR E
LCALL DELAY
SETB E
RET
;-----------------
DELAY: MOV R7,#255 ;延時子程序
D1: MOV R6,#255
D2: DJNZ R6,D2
DJNZ R7,D1
RET
TABLE1: DB 54h,45h,4dh,50h,45h,52h,41h,54h,55h,52h,45h
TABLE2: DB 30h,31h,32h,33h,34h,35h,36h,37h,38h,39h
聶強 20:00:48
標號不統一啊。
聶強 20:00:58
一個大寫,一個小寫
聶強 20:01:12
LACALL DELAY
聶強 20:01:17
試試行吧。
海洋之心 20:01:23
哪個沒關系的,呵呵
市丸銀 20:01:32
恩啊
市丸銀 20:02:30
有個程序錯了 找不到錯誤啊 我暈啊……………………
市丸銀 20:02:53
今天都耗在上面了
聶強 20:04:10
確實沒關系。呵呵
聶強 20:04:16
我再看看哈。
聶強 20:07:52
我的怎么一編譯,第一行直接就出現錯誤啊。
市丸銀 20:08:17
我的也是
市丸銀 20:10:52
上一個是我寫的
市丸銀 20:11:05
下面的是復制網頁的
聶強 20:11:47
下邊這個從哪里找的?我覺得下邊的這個可能是因為EQU這條指令不能對位操作。不知道這么想對不對。
市丸銀 20:12:18
;******** TC1602液晶模塊字符顯示試驗單片機匯編程序 ********
;******** 第一行顯示“welcme! ********
;******** 第二行顯示“www.zg4o1577.cn” ********
市丸銀 20:12:39
改成bit也不行 貌似
市丸銀 20:13:14
在哪找的 忘記了
聶強 20:17:42
回去研究研究,我也該下班了。家里沒網線。明天再討論吧。
市丸銀 20:17:58
好的 再見
walkman 20:20:30
請問那種圓形的電阻
上面標有
SAS
511KD20是多大阻值的
海洋之心 20:25:00
RS EQU P3.4
RW EQU P3.5
E EQU P3.6
本站單片機qq群號:5813023,7344883
ORG 0000H
AJMP START
ORG 0033H
START: MOV SP,#60H
MAIN: LCALL DELAY; ;延時一段時間
MOV P1,#01H; ;寫指令01H,清屏
LCALL ENABLE
MOV P1,#38H; ;寫指令38H,設定LCD為16*2顯示,5*7點陣,8位數據接口
LCALL ENABLE
MOV P1,#0FH; ;寫指令0FH,顯示ON,光標ON,閃爍ON
LCALL ENABLE
MOV P1,#06H; ;寫指令06H,光標輸入方式增量移位
LCALL ENABLE
MOV P1,#80H; ;第一行起始字符地址
LCALL ENABLE
MOV DPTR,#TABLE1 ;第一行顯示字符表頭地址
LCALL DISP; ;顯示第一行數據
MOV P1,#0C0H; ;第二行起始字符地址
LCALL ENABLE
MOV DPTR,#TABLE2; ;第二行顯示字符表頭地址
LCALL DISP; ;顯示第二行數據
AJMP MAIN; ;返回主程序循環
;_______________________________________________________________________
ENABLE: CLR RS; ;寫指令子程序(請參照1602LCD使用說明書)
CLR RW
CLR E
LCALL DELAY
SETB E
RET
;________________________________________________________________________
DISP: MOV R1,#16; ;準備顯示一行16個字符
LOOP: MOV A,#00H; ;將ACC清零
MOVC A,@A+DPTR; ;查表取得要顯示的數據
LCALL DISP1; ;寫入一個數據
INC DPTR; ;數據表指針加1,準備取下一個數據
DJNZ R1,LOOP; ;一行沒有顯示完就繼續
RET
; ;;-----------------
DISP1: MOV P1,A; ;寫1字節數據到顯示端口
SETB RS; ;寫數據時序(請參照1602LCD使用說明書)
CLR RW
CLR E
LCALL DELAY
SETB E
RET
; ;-----------------
DELAY: MOV R7,#255; ;延時子程序
D1: MOV R6,#255
D2: DJNZ R6,D2
DJNZ R7,D1
RET
TABLE1: DB " welcome! "
TABLE2: DB " www.zg4o1577.cn "
end
海洋之心 20:25:13
你在編輯一下看。
小刀 20:25:35
溫度傳感器有ad590可以嘛
無嗔 20:26:09
市丸銀 20:26:28
我看看
市丸銀 20:27:14
哦也 好了
市丸銀 20:27:23
怎么回事
市丸銀 20:28:06
少個偽指令end嗎
市丸銀 20:28:12
海洋
walkman 20:28:15
壓敏電阻 511KD20阻值是多大的?
市丸銀 20:04:19
恩
市丸銀 20:10:09
去吃飯了 一會再來
聶強 20:10:20
這個程序是從哪里弄來的?