欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機交通燈流程圖要如何畫啊?求幫助 [打印本頁]

作者: 大貓abc    時間: 2020-6-17 14:54
標題: 單片機交通燈流程圖要如何畫啊?求幫助
代碼清單
org 0000h
ljmp main
org 000bh
ljmp inti0
org 0030h
main:mov tmod,#01h
     mov ie,#82h
  mov th0,#4ch
  mov tl0,#00h
  mov sp,#60h
  mov 31h,#30  ;東西綠燈初值30秒
  mov 32h,#30  ;南北紅燈初值30秒
  clr 4fh  ;清標志位
  clr p1.1 ;開東西綠燈
  clr p1.5 ;開南北紅燈
  setb tr0 ;啟動T0
loop:lcall key   ;調用應急按鍵判斷
     ljmp loop
inti0:push psw
      clr ea
   mov th0,#4ch
   mov tl0,#00h
   inc 35h
   mov a,35h
   cjne a,#20,out  ;判1秒是否到時
   mov 35h,#00
   jb 4fh,yi   ;判別標志位
   dec 31h ;東西時間每秒減1
   dec 32h ;南北時間每秒減1
   mov a,31h
   cjne a,#05,out ;判是否到25秒
   setb p1.1   ;東西綠燈閃滅3秒
  lcall del500ms
  clr p1.1
  lcall del500ms
  setb p1.1
  lcall del500ms
  clr p1.1
  lcall del500ms
  setb p1.1
     lcall del500ms
  clr p1.1
  lcall del500ms
  setb p1.1   ;滅東西綠燈
  sjmp er
out:setb ea
    pop psw
reti
  er:clr p1.2  ;東西黃燈亮2秒
  mov 33h,#4   ;延時2秒
loop1:lcall del500ms
      djnz 33h,loop1
   setb p1.2   ;2秒后滅東西黃燈
   clr p2.1
   mov 31h,#20   ;東西時間賦20秒初值
      mov 32h,#20 ;南北時間賦20秒初值
   setb 4fh
   setb p1.5  ;關南北紅燈
   clr p1.0  ;點亮東西紅燈
      clr p1.6  ;點亮南北綠燈
   sjmp out
   yi:dec 31h ;東西時間每秒減1
   dec 32h ;南北時間每秒減1
   mov a,31h
   cjne a,#5,out  ;判是否到15秒
   setb p2.7    ;
   setb p1.6  ;南北綠燈閃滅3秒
  lcall del500ms
  clr p1.6
  lcall del500ms
  setb p1.6
  lcall del500ms
  clr p1.6
  lcall del500ms
  setb p1.6
     lcall del500ms
  clr p1.6
  lcall del500ms
   setb p1.6    ;關南北綠燈
   clr p1.7   ;南北黃燈亮2秒
  mov 34h,#4   ;延時2秒
loop2:lcall del500ms
      djnz 34h,loop2
   setb p1.7   ;2秒后滅南北黃燈
   clr p2.7 ;
   mov 31h,#30 ;東西時間重賦30秒初值
   mov 32h,#30 ;南北時間重賦30秒初值
   clr p1.1    ;點亮東西綠燈
   clr p1.5    ;點亮南北紅燈
   setb p1.0    ;關東西紅燈
   clr 4fh
   ljmp out
table:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h   ;0-9數字
del1ms:mov r7,#10   ;1ms延時子程序
d1:mov r6,#50
   djnz r6,$
   djnz r7,d1
   ret
del500ms:mov r5,#5  ;500ms延時子程序
del3:mov r4,#200
del4:mov r3,#250
     djnz r3,$
  djnz r4,del4
  djnz r5,del3
  ret
key:jb p1.3,keyout
    jnb p1.3,$
clr ea
inc 36h
mov a,36h
cjne a,#2,key4
mov 36h,#00
   setb p1.6   ;東西綠燈閃滅3秒
  lcall del500ms
  clr p1.6
  lcall del500ms
  setb p1.6
  lcall del500ms
  clr p1.6
  lcall del500ms
  setb p1.6
     lcall del500ms
  clr p1.6
  lcall del500ms
  setb p1.6   ;滅東西綠燈
  clr p1.7  ;東西黃燈亮2秒
  mov 33h,#4   ;延時2秒
loop3:lcall del500ms
      djnz 33h,loop3
   setb p1.7   ;2秒后滅東西黃燈
   setb p1.0   ;關東西紅燈
   setb p1.6  ;關南北綠燈
   clr p1.1  ;開西綠燈
   clr p1.5  ;開南北紅燈
   setb ea
   sjmp keyout
key4:clr p1.6 ;開南北綠燈
     clr p1.0   ;開東西紅燈
  setb p1.1
  setb p1.2
  setb p1.3
  setb p1.4
  setb p1.5
  setb p1.7
keyout:ret
end

要像這樣子的流程圖


作者: yzwzfyz    時間: 2020-6-17 18:37
1、不要怕錯
2、不追求完美
3、你如何想的,就在方框中寫出來。
多做幾個,就OK了。
作者: wufeng391    時間: 2020-6-17 20:16
我感覺你真的好厲害,居然用匯編寫程序!在學校的時候好像學過的是匯編,好像根本就不會用。想給你提一點建議:如果可以的話用keil+vscode開發試試吧。可能會好很多!keil用來編譯,調試,vscode用來代碼編輯。當然用的C語言。應該不難的,我之前從沒用過C,不過也會一點了!
作者: yzwzfyz    時間: 2020-6-19 17:09
是的,現在對照一下,流程圖與你的程序相符嗎?
作者: 昆明路口賣提莫    時間: 2020-6-20 14:19
wufeng391 發表于 2020-6-17 20:16
我感覺你真的好厲害,居然用匯編寫程序!在學校的時候好像學過的是匯編,好像根本就不會用。想給你提一點建 ...

萌新問問,用vscode寫代碼有啥優點嗎?    不是也有人用notepad++ , 和keil本身寫代碼有啥區別?學習學習, 望回復.




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1