找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3745|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)紅外霍爾傳感測速儀的源代碼 匯編和c語言都有

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:144396 發(fā)表于 2016-10-25 18:08 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
紅外霍爾傳感測速儀的源代碼  給大家分享一下

紅外霍爾傳感測速儀的源代碼.zip (4.71 KB, 下載次數(shù): 31)

下面是匯編的源碼:

  1. D_TMP  EQU 35H
  2. COUNT1 EQU 36H
  3. COUNT2 EQU 37H

  4. ORG 0000H
  5. LJMP MAIN
  6. ORG 0003H
  7. LJMP ZHONGDUAN
  8. ORG 000BH
  9. LJMP TT0
  10. ORG 0030H
  11. MAIN:
  12.      MOV 30H,#00H   ;顯示緩沖單元30H~33H
  13.      MOV 31H,#00H
  14.      MOV 32H,#00H
  15.      MOV 33H,#00H
  16.      mov 20h,#00h     ;計數(shù)標(biāo)志位20H
  17.      MOV R6,#00H      ;脈沖計數(shù)單元R6\R7
  18.      MOV R7,#00H
  19.      MOV P0,#0FFH
  20.      MOV P1,#00H
  21.      MOV P2,#0FFH
  22.      MOV P3,#0ffH
  23.      MOV COUNT1,#50    ;1S定時計數(shù)值
  24.      MOV COUNT2,#60    ;1分定時計數(shù)值
  25.      MOV TMOD,#01h
  26.      MOV TL0,#00H      ;20ms定時初值
  27.      MOV TH0,#70H
  28.      SETB TR0
  29.      SETB ET0
  30.      SETB EX0
  31.      SETB IT0
  32.      SETB PT0
  33.      SETB EA
  34. LOOP:LCALL DISPLAY      ;調(diào)用顯示程序
  35.      JNB 00h,LOOP       ;計數(shù)標(biāo)志位為0,則等待
  36.      LCALL HEXTOBCDD    ;調(diào)用十六進(jìn)制數(shù)十十進(jìn)制子程序
  37.      LCALL bcd          ;BCD碼子程序
  38.      CLR A
  39.      MOV R6,A           ;脈沖計數(shù)單元清0
  40.      MOV R7,A
  41.      CLR 00h            ;計數(shù)標(biāo)志位清0
  42.      SJMP LOOP          ;繼續(xù)循環(huán)

  43. ZHONGDUAN:                   ;中斷0程序
  44.      MOV A,R7
  45.      ADD A,#1
  46.      MOV R7,A
  47.      MOV A,R6
  48.      ADDC A,#0
  49.      MOV R6,A
  50.      CJNE R6,#27H,NEXT  ;計數(shù)最大值9999
  51.      CLR   A
  52.      MOV   R6 , A
  53.      MOV   R7 , A
  54. NEXT:RETI

  55. TT0:  DJNZ count1,NEXT1  ;T0中斷程序
  56.       ;MOV COUNT1,#50        ;分轉(zhuǎn)速計
  57.       ;DJNZ COUNT2,NEXT1
  58.       CLR EA
  59.       SETB 00H           ;計數(shù)標(biāo)志位置1,則執(zhí)行計數(shù)
  60.       MOV COUNT1,#50
  61.       ;MOV COUNT2,#60
  62.       SETB EA
  63. NEXT1:MOV TL0,#00H
  64.       MOV TH0,#70H
  65.       RETI


  66. HEXTOBCDD:MOV  A , R6               ;由十六進(jìn)制轉(zhuǎn)化為十進(jìn)制
  67.          PUSH  ACC
  68.          MOV   A , R7
  69.          PUSH  ACC
  70.          MOV   A , R2
  71.          PUSH  ACC
  72.          CLR   A
  73.          MOV   R3 , A
  74.          MOV   R4 , A
  75.          MOV   R5 , A
  76.          MOV   R2 , #10H
  77. HB3:     MOV   A  , R7              ;將十六進(jìn)制中最高位移入進(jìn)位位中
  78.          RLC   A
  79.          MOV   R7 , A
  80.          MOV   A  , R6
  81.          RLC   A
  82.          MOV   R6 , A
  83.          MOV   A  , R5              ;每位數(shù)加上本身相當(dāng)于將這個數(shù)乘以2
  84.          ADDC  A  , R5
  85.          DA    A
  86.          MOV   R5 , A
  87.          MOV   A  , R4
  88.          ADDC  A  , R4
  89.          DA    A                       ;十進(jìn)制調(diào)整
  90.          MOV   R4 , A
  91.          MOV   A  , R3
  92.          ADDC  A  , R3
  93.          DJNZ  R2 , HB3
  94.          POP   ACC
  95.          MOV   R2 , A
  96.          POP   ACC
  97.          MOV   R7 , A
  98.          POP   ACC
  99.          MOV   R6 , A
  100.          RET

  101. BCD:     MOV   R0 , #30H
  102.          MOV   A  , R5
  103.          ANL   A  , #0FH    ;屏蔽R5中的低4位
  104.          MOV   @R0 , A      ;存回以30H為地址的房間
  105.          MOV   A  , R5      ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  106.          SWAP  A            ;R5高低4位互換
  107.          ANL   A  , #0FH    ;屏蔽R5中的低4位
  108.          INC   R0           ;存儲地址加1指向31H
  109.          MOV   @R0 , A      ;存回以31H為地址的房間
  110.                              ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  111.          MOV   A  , R4      ;R4中的內(nèi)容存A
  112.          ANL   A , #0FH     ;屏蔽低4位
  113.          INC   R0           ;存儲地址加1指向32H
  114.          MOV   @R0 , A      ;存回以32H為地址的房間
  115.          MOV   A   , R4     ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  116.          SWAP  A            ;R4高低位互換
  117.          ANL   A  , #0FH    ;屏蔽R5中的低4位
  118.          INC   R0           ;存儲地址加1指向33H
  119.          MOV   @R0 , A      ;存回以31H為地址的房間
  120.          RET


  121. DISPLAY:                    ;顯示程序
  122.          MOV A,30H
  123.          LCALL MM
  124.          MOV P0,A
  125.          CLR P2.0
  126.          LCALL DELAY

  127.          MOV A,31H
  128.          LCALL MM
  129.          MOV P0,A
  130.          CLR P2.1
  131.          LCALL DELAY

  132.          MOV A,32H
  133.          LCALL MM
  134.          MOV P0,A
  135.          CLR P2.2
  136.          LCALL DELAY

  137.          MOV A,33H
  138.          LCALL MM
  139.          MOV P0,A
  140.          CLR P2.3
  141.          LCALL DELAY
  142.          RET

  143. MM:     MOV P2,#0FFH
  144.          MOV P0,#0FFH
  145.          MOV DPTR,#TAB
  146.          MOVC A,@A+DPTR
  147.          RET
  148. TAB:     DB    03FH , 06H , 5BH , 4FH , 66H , 6DH , 7DH , 07H , 7FH , 6FH   ;七段碼表

  149. DELAY:   MOV D_TMP,#90;  100us延時
  150.          LCALL DELAY1
  151. DELAY1:  DJNZ D_TMP,$
  152.          RET
  153.          END
復(fù)制代碼



評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:667554 發(fā)表于 2020-2-27 15:47 | 只看該作者
沒有仿真嗎?想要圖
回復(fù)

使用道具 舉報

板凳
ID:667554 發(fā)表于 2020-2-27 15:47 | 只看該作者
沒有仿真圖嗎?想看仿真圖
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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