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

標題: PIC單片機proteus仿真數碼管亂碼 [打印本頁]

作者: yuri141    時間: 2020-12-26 16:12
標題: PIC單片機proteus仿真數碼管亂碼
本帖最后由 yuri141 于 2020-12-26 16:38 編輯

我在進行一個秒表功能電路的仿真時,發現他的數碼管不能正常顯示數字,亂碼,各位大佬幫幫忙指點一下啊!!!謝謝
附上我的仿真文件和匯編語言文件

  1. INCLUDE "C:\Program Files (x86)\Microchip\MPASM Suite\p16f877.inc"
  2. ;----------------------------------------------------
  3. S0 EQU 20H
  4. S1 EQU 21H
  5. S2 EQU 22H;
  6. S3 EQU 23H;
  7. SREG EQU 24H;
  8. LEDF EQU 25H;
  9. XW_TEMP EQU 26H;
  10. XHOSTS EQU 27H;
  11. DEYH EQU 28H;
  12. DEYL EQU 29H;
  13. HOSTF EQU 30H;
  14. JIANR EQU 31H;
  15. TEMP EQU 32H;
  16. ORG 0000H;
  17. NOP
  18. GOTO MAIN;
  19. ORG 0004H;
  20. GOTO CLKINT
  21. ORG 0010H
  22. ;---------------------------------------------------
  23. CONVERT;不帶小數點的共陽極數碼表
  24.         ADDWF        PCL,1;
  25.         RETLW        0XC0;0
  26.         RETLW   0XF9;1
  27.         RETLW   0XA4;2
  28.         RETLW   0XB0;3
  29.         RETLW   0X99;4
  30.         RETLW   0X92;5
  31.         RETLW   0X82;6
  32.         RETLW   0XD8;7
  33.         RETLW   0X80
  34.         RETLW   0X90
  35.         RETLW   0XBF
  36.         RETLW   0XFF
  37.         RETURN
  38. CONVERT2;帶小數點的共陽極碼表
  39.         ADDWF   PCL,1
  40.         RETLW        0X40;
  41.         RETLW   0X79
  42.         RETLW   0X24
  43.         RETLW   0X30
  44.         RETLW   0X19
  45.         RETLW   0X12
  46.         RETLW   0X02
  47.         RETLW   0X78
  48.         RETLW   0X00
  49.         RETLW   0X10
  50.         RETURN
  51. ;--------------------SPI發送顯示子模塊--------------------
  52. TRANSMIT        
  53.         CLRF        PORTA
  54.         MOVWF        SSPBUF
  55. WAIT
  56.         BANKSEL        PIR1
  57.         BTFSS        PIR1,SSPIF
  58.         GOTO        WAIT
  59.         BCF            PIR1,SSPIF
  60.         RETURN
  61. ;---------------------顯示子程序模塊--------------------
  62. DISPLAY        MOVLW        0X01
  63.                 MOVWF        LEDF
  64. XIAND        BTFSC        S2,0
  65.                 GOTO        ZXC
  66.                 MOVLW        0X0B
  67.                 GOTO        VBN
  68. ZXC                MOVLW        0X0A
  69. VBN                CALL        CONVERT
  70.                 INCF        LEDF
  71.                 MOVF        LEDF,W
  72.                 SUBLW        0X05
  73.                 BTFSS        STATUS,Z
  74.                 GOTO        XIAND       ;顯示動畫
  75.                 MOVLW        0X01
  76.                 MOVWF        LEDF
  77.                 MOVLW        0XA0
  78.                 MOVWF        FSR
  79. AGAINXIAN        MOVF        LEDF,W
  80.                 SUBLW        0X02
  81.                 BTFSS        STATUS,Z
  82.                 GOTO        XIANB
  83.                 MOVF        INDF,W
  84.                 CALL        CONVERT2
  85.                 GOTO        TRAN
  86. XIANB        MOVF        INDF,W
  87.                 CALL        CONVERT
  88. TRAN        CALL        TRANSMIT
  89.                 INCF        FSR
  90.                 INCF        LEDF
  91.                 MOVF        LEDF,W
  92.                 SUBLW        0X05
  93.                 BTFSS   STATUS,Z
  94.                 GOTO        AGAINXIAN
  95.                 BSF                PORTA,5
  96.                 RETURN
  97. ;-----------------S0計數溢出處理-------------------
  98. CS0        CLRF        S0
  99.         INCF        S1
  100.         RETURN
  101. ;-----------------S1計數溢出處理-------------------
  102. CS1        CLRF        S1
  103.         INCF        S2
  104.         RETURN
  105. ;-----------------S2計數溢出處理-------------------
  106. CS2        CLRF        S2
  107.         INCF        S3
  108.         RETURN
  109. ;-----------------S3計數溢出處理-------------------
  110. CS3        CLRF        S3
  111.         RETURN
  112. ;-----------------時鐘中斷服務程序--------------------
  113. CLKINT        MOVWF        XW_TEMP
  114.         SWAPF        STATUS,W
  115.         MOVWF        XHOSTS
  116.         MOVF        FSR,W
  117.         MOVWF        HOSTF
  118.         MOVLW        0X07
  119.         MOVWF        TMR0
  120.         BCF                INTCON,T0IF
  121.         INCF        SREG
  122.         MOVF        SREG,W
  123.         SUBLW        0X05
  124.         BTFSS        STATUS,Z
  125.         GOTO        TIFAN
  126.         CLRF        SREG
  127.         INCF        S0
  128.         MOVF        S0,W
  129.         SUBLW        0X0A
  130.         BTFSC   STATUS,Z
  131.         CALL        CS0
  132.         MOVF        S1,W
  133.         SUBLW        0X0A
  134.         BTFSC        STATUS,Z
  135.         CALL        CS1
  136.         MOVF        S2,W
  137.         SUBLW        0X0A
  138.         BTFSC        STATUS,Z
  139.         CALL        CS2
  140.         MOVF        S3,W
  141.         SUBLW        0X0A
  142.         BTFSC        STATUS,Z
  143.         CALL        CS3
  144. TIFAN        MOVF        HOSTF,W       ;一下為中斷現場回復
  145.         MOVWF        FSR
  146.         SWAPF        XHOSTS,W
  147.         MOVWF        STATUS
  148.         SWAPF        XW_TEMP,1
  149.         SWAPF        XW_TEMP,W
  150.         RETFIE
  151. ;--------------------------TMRO初始化--------------------
  152. CLKINSUB
  153.         BANKSEL                OPTION_REG
  154.         BCF                        OPTION_REG,T0CS
  155.         BCF                        OPTION_REG,PSA
  156.         BCF                        OPTION_REG,PS2
  157.         BSF                        OPTION_REG,PS1
  158.         BCF                        OPTION_REG,PS0
  159.         
  160.         BANKSEL                INTCON
  161.         BCF                        INTCON,T0IF
  162.         BCF                        INTCON,GIE
  163.         BSF                        INTCON,T0IE
  164.         RETURN
  165. ;------------------------系統初始化子程序----------------
  166.         MAINSUB
  167.                 BANKSEL        TRISA
  168.                 BCF                TRISA,5
  169.                 BCF                TRISB,1
  170.                 BCF                TRISB,2
  171.                 BSF                TRISB,4
  172.                 BSF                TRISB,5
  173.                 BCF                TRISC,5
  174.                 BCF                TRISC,3
  175.                 BCF                INTCON,GIE
  176.                 MOVLW        0XC0
  177.                 MOVWF        SSPSTAT
  178.                 BANKSEL        SSPCON
  179.                 MOVLW        0X30
  180.                 MOVWF        SSPCON
  181.                
  182.                 BCF                STATUS,IRP
  183.                 MOVLW        0X01
  184.                 MOVF        TEMP
  185.                 MOVLW        0X00
  186.                 MOVWF        JIANR
  187.                 RETURN
  188. ;-------------------鍵盤掃描子程序--------------------
  189. KEYSCAN        CLRF        PORTB
  190.         NOP
  191.         NOP
  192.         MOVF                PORTB,W
  193.         ANDLW                0X30
  194.         SUBLW                0X30
  195.         RETURN
  196. ;--------------------鍵盤去抖子程序(8ms)-----------------
  197. KEYDELAY
  198.         MOVLW        0X80
  199.         MOVWF        DEYH
  200. AGAIN2        MOVLW        0XFF
  201.         MOVWF        DEYL
  202. AGAIN1        DECFSZ        DEYL,1
  203.         GOTO        AGAIN1
  204.         DECFSZ        DEYH,1
  205.         GOTO        AGAIN2
  206.         RETURN
  207. ;-----------------------------鍵盤服務子程序----------------
  208. KEYSERVE        MOVLW        0X00
  209.                 MOVWF        JIANR
  210.                 MOVLW        0XFD
  211.                 MOVWF        PORTB
  212.                 BTFSS        PORTB,4
  213.                 GOTO        S10
  214.                 BTFSS        PORTB,5
  215.                 GOTO        S9
  216.                 MOVLW        0XFB
  217.                 MOVWF        PORTB
  218.                 BTFSS        PORTB,4
  219.                 GOTO        S12
  220.                 BTFSS        PORTB,5
  221.                 GOTO        S11
  222.                 GOTO        TUICHU
  223.         S10        MOVLW        0X02
  224.                 MOVWF        JIANR
  225.                 GOTO        TUICHU
  226.         S9        MOVLW        0X01
  227.                 MOVWF        JIANR
  228.                 GOTO        TUICHU
  229.         S12        MOVLW        0X04
  230.                 MOVWF        JIANR
  231.                 GOTO        TUICHU
  232.         S11        MOVLW        0X03
  233.                 MOVWF        JIANR
  234.         TUICHU        RETURN
  235. ;---------------------------顯示緩沖區處理子程序-----------------
  236. XIANHUAN        MOVLW        0XA0
  237.                         MOVWF        FSR
  238.                         MOVF        S3,W
  239.                         MOVWF        INDF
  240.                         INCF        FSR
  241.                         MOVF        S2,W
  242.                         MOVWF        INDF
  243.                         INCF        FSR
  244.                         MOVF        S1,W
  245.                         MOVWF        INDF
  246.                         INCF        FSR
  247.                         MOVF        S0,W
  248.                         MOVWF        INDF
  249.                         RETURN
  250. ;-------------------------------------------------------------
  251. MAIN        NOP
  252.         CALL        MAINSUB
  253.         CALL        CLKINSUB
  254. ;-----------------------------------------------------------
  255. DENJIAN
  256.         BANKSEL        S0
  257.         CLRF        S0
  258.         CLRF        S1
  259.         CLRF        S2
  260.         CLRF        S3
  261.         CLRF        SREG
  262.         CLRF        LEDF
  263.         CALL        XIANHUAN
  264.         CALL        DISPLAY
  265. DENAN        BCF        INTCON,GIE
  266.         CALL        KEYSCAN
  267.         BTFSS        STATUS,Z
  268.         GOTO        XIAODOU1
  269.         GOTO        DENAN
  270. XIAODOU1        CALL        KEYDELAY
  271.         CALL        KEYSCAN
  272.         BTFSC        STATUS,Z
  273.         GOTO        DENAN
  274.         CALL        KEYSERVE
  275.         MOVF        JIANR,W
  276.         SUBLW        0X01
  277.         BTFSS        STATUS,Z
  278.         GOTO        DENAN
  279.         BANKSEL        S0
  280.         CLRF        S0
  281.         CLRF        S1
  282.         CLRF        S2
  283.         CLRF        S3
  284.         CLRF        SREG
  285. WAITS        CALL        KEYSCAN
  286.         BTFSS        STATUS,Z
  287.         GOTO        WAITS
  288. ABC        MOVLW        0X06
  289.         MOVWF        TMR0
  290.         BSF                INTCON,GIE
  291. HERE        CALL        XIANHUAN
  292.         CALL        DISPLAY
  293.         CALL        KEYSCAN
  294.         BTFSS        STATUS,Z
  295.         GOTO        XIAODOU
  296.         GOTO        HERE
  297. XIAODOU        CALL        DISPLAY
  298.         CALL        DISPLAY
  299.         CALL        DISPLAY
  300.         CALL        DISPLAY
  301.         CALL        DISPLAY
  302.         CALL        DISPLAY
  303.         CALL        DISPLAY
  304.         CALL        DISPLAY
  305.         CALL        DISPLAY
  306.         CALL        KEYSCAN
  307.         BTFSC        STATUS,Z
  308.         GOTO        HERE
  309.         CALL        KEYSERVE
  310.         MOVF        JIANR,W
  311.         SUBLW        0X03
  312.         BTFSS        STATUS,Z
  313.         GOTO        HERE
  314.         BCF                INTCON,GIE
  315.         CALL        DISPLAY
  316. WAITR        CALL        KEYSCAN
  317.                 BTFSS        STATUS,Z
  318.                 GOTO        WAITR
  319. DENDAI        CALL        KEYSCAN
  320.         BTFSC        STATUS,Z
  321.         GOTO        DENDAI
  322.         CALL        KEYDELAY
  323.         CALL        KEYSCAN
  324.         BTFSC        STATUS,Z
  325.         GOTO        DENDAI
  326.         CALL        KEYSERVE
  327.         MOVF        JIANR,W
  328.         SUBLW        0X03
  329.         BTFSC        STATUS,Z
  330.         GOTO        WAIT19
  331.         MOVF        JIANR,W
  332.         SUBLW        0X03
  333.         BTFSC        STATUS,Z
  334.         GOTO        DENJIAN
  335.         GOTO        DENDAI
  336. WAIT19        CALL        KEYSCAN
  337.         BTFSS        STATUS,Z
  338.         GOTO        WAIT19
  339.         GOTO        ABC
  340.         END
復制代碼



51hei截圖_20201226160953.png (372.75 KB, 下載次數: 147)

51hei截圖_20201226160953.png

51hei截圖_20201226160953.png (372.75 KB, 下載次數: 138)

51hei截圖_20201226160953.png

作者: glinfei    時間: 2020-12-26 23:21
你數碼管用的是共陰的。要么把 CONVERT這句里的共陽極數碼表改成共陰的表;或者你把數碼管改成共陽的。
作者: Y_G_G    時間: 2020-12-28 09:02
很久沒有接觸PIC了,都看不懂代碼了,就給你幾個建議吧
RB是有內部上拉電阻的不需要上拉
你四個按鍵就用四個IO,直接用檢測低電平就可以,好像沒有必要用2*2掃描的方式
帶小數點的不需要另外建一個表格的,用相同的表格,顯示的時候點亮小數點就可以了




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 特黄毛片 | 国产成人a亚洲精品 | 99热精品国产 | 日本一区二区高清不卡 | 99re在线视频| 亚洲国产精品久久久久秋霞不卡 | 久久九九99 | 欧美99| 日韩在线播放视频 | 亚洲天堂网站 | www日韩欧美 | 国产精品久久久久aaaa | 99精品网 | 免费观看的av | 欧美福利在线 | 精品国产乱码久久久久久果冻传媒 | 国产sm主人调教女m视频 | 久草院线 | 精品国产乱码久久久久久88av | 极品粉嫩国产48尤物在线播放 | 蜜臀久久99精品久久久久野外 | 欧美一区二区在线观看视频 | 国产免费一级片 | 日本成人福利视频 | 美女视频一区二区三区 | 夜夜草 | 久在线| 日韩av网址在线观看 | 7799精品视频天天看 | 成人国产免费观看 | 久久精品综合 | 久久精品一区二区 | 午夜天堂精品久久久久 | 国产精品揄拍一区二区久久国内亚洲精 | 中文字幕亚洲欧美 | 欧美精品一区在线发布 | 欧美一区二区三区四区视频 | 91九色视频在线 | 成年人视频在线免费观看 | av免费网站在线观看 | 日韩一区二区免费视频 |