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

標(biāo)題: 0-30V電壓表頭 單片機(jī)匯編實(shí)例 [打印本頁]

作者: liu2454004961    時(shí)間: 2023-1-3 11:21
標(biāo)題: 0-30V電壓表頭 單片機(jī)匯編實(shí)例
0-30V電壓表頭匯編程序,難點(diǎn):1. 90K的電阻需要多個(gè)串并才能達(dá)到;2. 四位十六進(jìn)制轉(zhuǎn)換成四位BCD碼

1672715579678.png (60.97 KB, 下載次數(shù): 197)

電壓表頭接線圖

電壓表頭接線圖

1672715616391.png (74.72 KB, 下載次數(shù): 158)

電壓表頭匯編程序

電壓表頭匯編程序

作者: liu2454004961    時(shí)間: 2023-1-3 11:24
三位表頭,匯編語言程序包含四位轉(zhuǎn)換(沒有編譯)
  1.        ADC_CONTR   EQU 0BCH            ;ADC控制寄存器       ;;;IC:15L204EA,內(nèi)部振蕩6M,不分頻,3.26V/256=0.0127V,0v-3.26v;;;;
  2.        ADC_RES     EQU 0BDH            ;ADC高8位結(jié)果
  3.        P1ASF       EQU 09DH            ;P1口第2功能控制寄存器
  4.                  JU1         DATA 32H
  5.                  JU2         DATA 33H
  6.                  JU3         DATA 34H
  7.                  JU4         DATA 35H
  8.                  JU5         DATA 36H
  9.        ORG   0000H
  10.        LJMP  MAIN1
  11.        ORG   0040H
  12. MAIN1:  MOV  SP,#7FH
  13.         LCALL INIT_ADC
  14. MAIN2:  LCALL GET_ADC_RESULT        ;讀取高8位結(jié)果
  15.        MOV   A,ADC_RES
  16.        MOV   B,#07FH                ;電壓比127,改變測(cè)量范圍,修改電壓比
  17.                  MUL   AB
  18.                  MOV   R0,A                  ;低8位結(jié)果
  19.                  MOV   R1,B                  ;高8位結(jié)果
  20.        ACALL BCD
  21. ;       MOV   A,JU2                 ;四位十進(jìn)制數(shù)轉(zhuǎn)四位BCD碼顯示
  22. ;       MOV DPTR,#TAB              ;千分位數(shù),P3.4
  23. ;              MOVC A,@A+DPTR
  24. ;                 MOV   P2,A
  25. ;                 MOV   P3,#0EFH
  26. ;                 ACALL YS3
  27.                  MOV   A,JU4               ;百分位數(shù),P3.5
  28.        MOV DPTR,#TAB              
  29.               MOVC A,@A+DPTR
  30.                  MOV   P2,A
  31.                  MOV   P3,#0DFH
  32.                  ACALL YS3
  33.                  MOV   A,JU3              ;十分位數(shù),P3.6
  34.        MOV DPTR,#TAB1              
  35.               MOVC A,@A+DPTR
  36.                  MOV   P2,A
  37.                  MOV   P3,#0BFH
  38.                  ACALL YS3
  39.                  MOV   A,JU5               ;個(gè)位數(shù),P3.7
  40.        MOV DPTR,#TAB            ;個(gè)位數(shù)帶小數(shù)點(diǎn)顯示         
  41.               MOVC A,@A+DPTR
  42.                  MOV   P2,A
  43.                  MOV   P3,#7FH
  44.        ACALL YS3
  45.                  LJMP  MAIN2

  46. GET_ADC_RESULT:                 ;讀取ADC結(jié)果
  47.     PUSH  ACC
  48.     MOV   ADC_CONTR,#11101011B         ;ADC控制寄存器__開ADC電源1,最高轉(zhuǎn)換速度11,ADC_FLAG軟件標(biāo)志位清0,
  49.                                      ;ADC_START啟動(dòng)1,轉(zhuǎn)換通道001(P1.3)
  50.     NOP                         ;等待4個(gè)NOP
  51.     NOP
  52.     NOP
  53.     NOP
  54. WAIT:MOV   A,#00010000B           ;等待ADC轉(zhuǎn)換完成,判斷ADC_FLAG是否完成,等于1
  55.     ANL   A,ADC_CONTR
  56.     JZ    WAIT                   ;AD轉(zhuǎn)換未完成,繼續(xù)等待
  57.     ANL   ADC_CONTR,#11101011B  ;結(jié)束標(biāo)志位ADC_FLAG清零,ADC_START位清零,停止A/D等待
  58.     POP   ACC
  59.     RET
  60. INIT_ADC:                       ;初始化ADC
  61.     MOV   P1ASF,#11B            ;設(shè)置P1.3口為AD口
  62.     MOV   ADC_RES,#0            ;清除結(jié)果寄存器
  63.     MOV   ADC_CONTR,#11101011B  ;ADC控制寄存器--開ADC電源,最高轉(zhuǎn)換速度11
  64.     MOV   A,#2                  ;ADC上電并延時(shí)
  65.     LCALL DELAY
  66.     RET
  67. DELAY:MOV   R2,A                   ;軟件延時(shí)
  68.     CLR   A
  69.     MOV   R0,A
  70.     MOV   R1,A
  71. DELAY1:
  72.     DJNZ  R0,DELAY1
  73.     DJNZ  R1,DELAY1
  74.     DJNZ  R2,DELAY1
  75.     RET
  76. YS3:     MOV R4,#40                ;延時(shí)程序2
  77. D2:      MOV R5,#250
  78.          DJNZ R5,$
  79.          DJNZ R4,D2
  80.          RET
  81. BCD:   MOV R2,#00h                 ;四位十六進(jìn)制數(shù)轉(zhuǎn)五位十進(jìn)制數(shù)
  82.        MOV R3,#00h
  83.        MOV R4,#00h
  84.        MOV R5,#16
  85. LOOP:  CLR C
  86.        MOV A,R0
  87.        RLC A
  88.        MOV R0,A
  89.        MOV A,R1
  90.        RLC A
  91.        MOV R1,A
  92.        MOV A,R4
  93.        ADDC A,R4
  94.        DA A
  95.        MOV R4,A
  96.        MOV A,R3
  97.        ADDC A,R3
  98.        DA A
  99.        MOV R3,A
  100.        MOV A,R2
  101.        ADDC A,R2
  102.        MOV R2,A
  103.        DJNZ R5,LOOP
  104.        MOV  A,R4
  105.        MOV  B,#16
  106.        DIV  AB
  107.        MOV  JU1,A
  108.        MOV  JU2,B
  109.        MOV  A,R3
  110.        MOV  B,#16
  111.        DIV  AB
  112.        MOV  JU3,A
  113.        MOV  JU4,B
  114.        MOV  JU5,R2
  115.        RET
  116. TAB:   DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H
  117. TAB1:  DB 040H,079H,024H,030H,019H,012H,02H,078H,00H,010H
  118.     END
復(fù)制代碼

作者: 小白艾世雄    時(shí)間: 2023-1-13 08:22
匯編寫的很專業(yè),圖沒有看懂,MCU數(shù)碼管,信號(hào)源在哪接呀?
作者: liu2454004961    時(shí)間: 2023-2-1 09:15
MOV   ADC_CONTR,#11101011B         ;ADC控制寄存器__開ADC電源1,最高轉(zhuǎn)換速度11,ADC_FLAG軟件標(biāo)
                                                         志位清0,
                                                        ;ADC_START啟動(dòng)1,轉(zhuǎn)換通道001(P1.3)
作者: 傲世飛魚    時(shí)間: 2023-3-2 15:20
能做個(gè)5位的就厲害了
作者: hu2018y    時(shí)間: 2023-4-8 11:59
還是用匯編的頭大。
作者: jsjt2008    時(shí)間: 2023-4-18 19:40
用匯編頭大。
作者: jsjt2008    時(shí)間: 2023-4-18 19:41
用匯編的高手,牛人呀。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 日本 欧美 国产 | 91影院在线观看 | 成人午夜视频在线观看 | 欧美成人手机在线 | 成人久久一区 | 日本天堂视频在线观看 | 欧美va大片 | 91久久精品一区二区三区 | 嫩呦国产一区二区三区av | 欧美精品福利视频 | 国产精品成人在线播放 | 91精品国产综合久久久动漫日韩 | 国产一卡二卡三卡 | 国产高清一区二区 | 国产亚洲精品美女久久久久久久久久 | 久久国产精品一区二区三区 | 日韩精品一区二区三区在线观看 | 日本视频免费观看 | 91精品国产91久久久久久吃药 | 亚洲一区二区三区在线播放 | 操皮视频 | 国产在线一区二区 | 国产精品久久久久久模特 | 国产精品免费观看 | 国产精品一区久久久 | 天天操网| 91久久精品一区二区二区 | 亚洲有码转帖 | 成人免费观看男女羞羞视频 | 欧美精品一区二区三区在线播放 | 欧美成人免费在线视频 | 国产日韩欧美精品一区二区三区 | 99久久精品国产麻豆演员表 | 国产一区二区三区在线看 | www免费视频 | 黄网站免费在线看 | 日本超碰 | 色视频在线播放 | 国产成人aⅴ | 久久伦理电影 | 国产 日韩 欧美 在线 |