久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1170|回復: 0
打印 上一主題 下一主題
收起左側

[微機]建立在8086CPU 8253與8255芯片之上的交通燈控制系統 Proteus仿真

[復制鏈接]
跳轉到指定樓層
樓主
這是我上個月做的單片機交通燈設計,用了一個星期的時間,
附件里面包含交通燈的單片機源代碼,
和proteus(proteus)仿真工程文件以及設計的文檔都是自己原創的,
請大家多多指教
最終呈現的結果是:通行時間30s,間隔時間 3s,在間隔時間里黃燈閃爍3次每0.5s閃爍一次
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)

單片機源程序如下:
  1. ;8255的地址
  2. PA                EQU                08H        
  3. PB                EQU                0AH
  4. PC                EQU                0CH
  5. CONW                EQU                0EH

  6. ;8253的地址
  7. AD82530                EQU                10H
  8. AD82531                EQU                12H
  9. AD82532                EQU                14H
  10. AD8253CONW        EQU                16H
  11. ;============================
  12. STACK        SEGMENT        STACK      
  13.         DB        200        DUP(0)
  14. STACK ENDS
  15. ;============================

  16. DATA        SEGMENT
  17.         ;延時
  18.         ONE                DB  6                ;燈組1延時
  19.         TWO_1                DB  1                ;燈組2亮延時
  20.         TWO_2                DB  1                ;燈組2滅延時
  21.         THREE                DB  6                ;燈組3延時
  22.         FOUR_1                DB  1                ;燈組4亮延時
  23.         FOUR_2                DB  1                ;燈組4滅延時
  24.         ;閃爍次數
  25.         C2                DB  2                ;閃爍3次
  26.         C4                DB  2
  27.         ;燈組定義
  28.         TF1                BYTE                081h        ;第一組燈
  29.         TF2                BYTE                082h        ;第二組燈亮(黃燈亮)
  30.         TF3                BYTE                080h        ;第二組燈滅(黃燈滅)
  31.         TF4                BYTE                024h        ;第三組燈
  32.         TF5                BYTE                044h        ;第四組燈亮(黃燈亮)
  33.         TF6                BYTE                004h        ;第四組燈滅(黃燈滅)
  34. DATA        ENDS
  35. ;=============================
  36. CODE        SEGMENT
  37. ASSUME        CS:CODE, DS:DATA
  38. START:
  39.         PUSH        DS
  40.         MOV        AX, DATA
  41.         MOV        DS, AX
  42.         ;=================
  43.         ;設置中斷向量8253
  44.         CLI               
  45.         MOV        AX, 0
  46.         MOV        ES, AX            
  47.         MOV        SI, 08H              
  48.         MOV        AX, OFFSET TIME_INT           
  49.         MOV        ES:[SI], AX
  50.         MOV        AX, CS               
  51.         MOV        ES:[SI+2], AX
  52.         ;=================
  53.         ;初始化8255A
  54.         MOV        AL, 80H
  55.         OUT        CONW, AL
  56.         ;初始化8253
  57.         MOV        AL, 36H
  58.         OUT        AD8253CONW, AL
  59.         MOV        AX, 32500        ;計數初值,0.5s
  60.         OUT        AD82530, AL
  61.         MOV        AL, AH
  62.         OUT        AD82530, AL

  63.         ;===============
  64.         W:
  65.                JMP        W        ;循環等待中斷
  66. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;        
  67. ;第一組燈判斷
  68. DENG1:        MOV        AL, ONE
  69.         CMP        AL, 0                ;中斷判斷
  70.         JNE        DENG1ON                ;跳轉第一組燈
  71.         JE        DENG2                ;跳轉第二組燈判斷
  72. DENG1ON:
  73.         DEC ONE                        ;定時減1
  74.         MOV DX,PC
  75.         MOV AL,TF1                ;第一組燈亮
  76.         OUT DX,AL
  77.         RET
  78. ;第二組燈判斷
  79. DENG2:
  80.    ;第二組燈亮判斷
  81.    DENG2_1:
  82.            MOV        AL, TWO_1
  83.            CMP        AL, 0                ;中斷判斷
  84.            JNE        DENG2ON                ;跳轉第二組燈亮
  85.            JE        DENG2_2                ;跳轉第二組燈滅判斷
  86.            
  87.    DENG2ON:
  88.            DEC TWO_1                ;定時減1
  89.            MOV DX,PC
  90.            MOV AL,TF2                ;第二組燈亮
  91.            OUT DX,AL
  92.            RET
  93.            
  94.    ;第二組燈暗判斷
  95.    DENG2_2:        
  96.            MOV        AL, TWO_2
  97.            CMP        AL, 0                ;中斷判斷
  98.            JNE        DENG2OFF        ;跳轉第二組燈滅
  99.            CMP        C2,0                ;判斷閃爍次數
  100.            JE        DENG3                ;跳轉第三組燈判斷
  101.            
  102.    DENG2OFF:
  103.            DEC TWO_2
  104.            MOV DX,PC
  105.            MOV AL,TF3                ;第二組燈滅
  106.            OUT DX,AL
  107.            CMP C2,0                ;閃爍次數未到
  108.            JNE RE_DENG2                ;重置第二組燈
  109.            RET

  110. ;第二組燈重置
  111. RE_DENG2:
  112.    DEC C2
  113.    MOV AL,1
  114.    MOV TWO_1,AL
  115.    MOV TWO_2,AL
  116.    RET

  117. ;第三組燈判斷   
  118. DENG3:        MOV        AL, THREE
  119.         CMP        AL, 0                ;中斷判斷
  120.         JNE        DENG3ON                ;跳轉第三組燈
  121.         JE        DENG4                ;跳轉第四組燈
  122. DENG3ON:
  123.         DEC THREE
  124.         MOV DX,PC
  125.         MOV AL,TF4                ;第三組燈亮
  126.         OUT DX,AL
  127.         RET
  128. ;第四組燈判斷
  129. DENG4:
  130.    DENG4_1:
  131.            MOV        AL, FOUR_1
  132.            CMP        AL, 0                ;中斷判斷
  133.            JNE        DENG4ON                ;跳轉第四組燈亮
  134.            JE        DENG4_2                ;跳轉第四組燈滅判斷
  135.            
  136.    DENG4ON:
  137.            DEC FOUR_1
  138.            MOV DX,PC
  139.            MOV AL,TF5                ;第四組燈亮
  140.            OUT DX,AL
  141.            RET
  142.            
  143.    DENG4_2:        
  144.            MOV        AL, FOUR_2
  145.            CMP        AL, 0                ;中斷判斷
  146.            JNE        DENG4OFF        ;跳轉第四組燈滅
  147.            CMP        C4,0                ;判斷閃爍次數
  148.            JE        RE_ALL                ;重置所有燈組
  149.            
  150.    DENG4OFF:
  151.            DEC FOUR_2
  152.            MOV DX,PC
  153.            MOV AL,TF6                ;第四組燈滅
  154.            OUT DX,AL
  155.            CMP C4,0                ;閃爍次數未到
  156.            JNE RE_DENG4                ;重置第四組燈
  157.            RET

  158. ;重置第四組燈
  159. RE_DENG4:
  160.    DEC C4
  161.    MOV AL,1
  162.    MOV FOUR_1,AL
  163.    MOV FOUR_2,AL
  164.    RET

  165. ;重置所有燈組
  166. RE_ALL:        
  167.         MOV AL,6
  168.         MOV ONE,AL
  169.         MOV THREE,AL
  170.         MOV AL,2
  171.         MOV C2,AL
  172.         MOV C4,AL
  173.         MOV AL,1
  174.         MOV TWO_1,AL
  175.         MOV TWO_2,AL
  176.         MOV FOUR_1,AL
  177.         MOV FOUR_2,AL
  178.         RET               
  179. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  180. TIME_INT:                        ;定時器中斷處理函數
  181.         CALL        DENG1
  182.         IRET
  183. CODE        ENDS
  184.         END START
復制代碼
仿真工程: 交通燈控制系統.rar (26.93 KB, 下載次數: 0)

評分

參與人數 2黑幣 +80 收起 理由
wpppmlah + 30 共享資料的黑幣獎勵!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕91av | 日韩1区| 国产精品国产自产拍高清 | 一级黄色毛片子 | 在线观看免费av片 | 大香在线伊779 | 91麻豆产精品久久久久久夏晴子 | 91免费视频| 春色av| 99re视频这里只有精品 | 亚洲一区二区三区免费在线观看 | 欧美日韩三级在线观看 | 久久日韩粉嫩一区二区三区 | 亚洲欧美一区二区三区视频 | 一区二区高清 | 日本 欧美 国产 | 日韩欧美一二三区 | 日韩手机视频 | 国产又爽又黄的视频 | 精品久久99| 国产精品日产欧美久久久久 | www.jizzjizz | 亚洲国产一区二区三区在线观看 | 日韩欧美电影在线 | 岛国av一区二区三区 | 国产精品视频一二三区 | 成人毛片视频免费 | 久久精品91 | 日韩不卡一区二区 | 国产精品日韩一区 | 国产精品久久久久久久久久久久 | 91观看| 亚洲免费网址 | 欧美亚洲一级 | 久久精品国产精品青草 | 高清色视频 | 欧美久操网| h视频在线免费观看 | 玖玖视频免费 | 日韩在线观看中文字幕 | 天天拍天天操 |