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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6983|回復(fù): 4
收起左側(cè)

單片機(jī)實(shí)現(xiàn)直流電機(jī)調(diào)速匯編語(yǔ)言源程序+電路

[復(fù)制鏈接]
ID:463114 發(fā)表于 2019-1-6 16:50 | 顯示全部樓層 |閱讀模式
1在鍵盤上輸入數(shù)字,可以在數(shù)碼管上循環(huán)左移顯示。
2直流電機(jī)控制:在鍵盤定義功能鍵,包括正轉(zhuǎn)鍵,反轉(zhuǎn)鍵,速度設(shè)定鍵,復(fù)位鍵?梢詫(shí)現(xiàn)按下速度設(shè)定鍵,然后用數(shù)字鍵輸入速度,并在數(shù)碼管上顯示這一數(shù)字,然后按下正轉(zhuǎn)或者反轉(zhuǎn)鍵,直流電機(jī)開(kāi)始按照這一速度正轉(zhuǎn)或者反轉(zhuǎn),同時(shí)在數(shù)碼管上顯示目前運(yùn)行時(shí)輸出的電壓。按下復(fù)位鍵,電機(jī)按照原運(yùn)轉(zhuǎn)方向相反的方向倒轉(zhuǎn)回到原位。
(附件分別為兩個(gè)的匯編程序)
捕獲1.PNG 捕獲.PNG

單片機(jī)源程序如下:
  1.              ;直流電機(jī)調(diào)速實(shí)驗(yàn)

  2. ;實(shí)驗(yàn)連線
  3. ;1) DA0832單元的CS連接端口地址300CS
  4. ;2) DA0832單元的AOUT連接直流電機(jī)INV

  5. CS0832  EQU 0300H
  6. CS8279C equ 0fff1h
  7. CS8279D equ 0fff0h
  8. DA0V    EQU 000H
  9. DA2V5   EQU 07FH
  10. DA5V    EQU 0fFH
  11. led0 equ 0fff0h
  12. led1 equ 0fff1h
  13.         org 0
  14. mloop:  ; mov dptr,#CS0832
  15.            MOV SP,#40H
  16.   
  17. ;------------------------
  18. ;    初態(tài)送顯示緩沖區(qū)
  19. ;------------------------
  20.   xmos:   mov r0,#30h
  21.            mov a,#10h
  22.   x35s:   mov @r0,a
  23.         inc r0
  24.         cjne r0,#36h,x35s
  25.         inc a
  26.         mov @r0,a
  27. ;-----------------------------
  28. ;     掃描待令入口區(qū)
  29. ;-----------------------------


  30.   xmon:    mov r1,#30h
  31.            call dikey        ;調(diào)顯示鍵掃
  32.            cjne a,#10h,next  ;判數(shù)字鍵還是功能鍵
  33.   next:    cjne a,#20h,next1
  34.            sjmp xmon
  35.   next1:   cjne r1,#10h,krds
  36.   keep:    jNb p1.0,L0
  37.            jNb p1.1,L1
  38.            jNb p1.2,L2
  39.   krds:    jnc krdy           ;轉(zhuǎn)功能鍵處理
  40. ;----------------------------
  41. ;    功能鍵處理入口
  42. ;-----------------------------
  43.   krdy:    mov dptr,#CKEY
  44.            anl a,#03h
  45.            clr c
  46.            rl a
  47.            mov r2,a
  48.            inc a
  49.            movc a,@a+dptr
  50.            push acc
  51.            mov a,r2
  52.            movc a,@a+dptr
  53.            push acc
  54.            ret  
  55. ;-----------------------------
  56. ;    速度設(shè)置鍵入口
  57. ;------------------------------

  58.   VSET:    mov r1,#30h
  59.            call dikey
  60.            cjne a,#20h,ste1
  61.            sjmp VS
  62.    ste1:   mov @r1,a
  63.            call diled
  64.            ljmp xmon
  65. ;----------------------------
  66. ;    反轉(zhuǎn)鍵處理入口
  67. ;----------------------------

  68. LEFT:      mov dptr,#CS0832
  69.            mov r1,#30h
  70.            mov a,#DA0V
  71.            cjne @r1,#10h,qia1
  72.            sjmp qia2
  73.     qia1:  mov a,#0fh
  74.            mov b,@r1
  75.            mul ab
  76.     qia2:  movx @dptr,a
  77.            acall disp0
  78.            clr p1.0
  79.            setb p1.1
  80.            setb p1.2
  81.            ljmp mloop
  82. ;----------------------------
  83. ;    正轉(zhuǎn)鍵處理入口
  84. ;----------------------------
  85.       
  86.         
  87. RIGHT:     mov dptr,#CS0832
  88.            mov r1,#30h
  89.            mov a,#DA5V
  90.            cjne @r1,#10h,qia3
  91.            sjmp qia4
  92.   qia3:    mov a,#0fh
  93.            mov b,@r1
  94.            mul ab
  95.            add a,#7fh

  96.   qia4:    movx @dptr,a
  97.            clr p1.1
  98.            setb p1.0
  99.            setb p1.2
  100.            acall disp1
  101.            ljmp mloop
  102. ;----------------------------
  103. ;    停止鍵處理入口
  104. ;----------------------------
  105.         
  106.         
  107.         
  108. STOP:      mov dptr,#CS0832
  109.            mov a,#DA2V5
  110.            movx @dptr,a
  111.            clr p1.2
  112.            setb p1.1
  113.            setb p1.0
  114.            acall disp1
  115.            ljmp mloop

  116. ;-----------------------
  117. ;     刷新顯示子程序
  118. ;-----------------------
  119. diled:     mov r1,#35h        ;從高位開(kāi)始
  120.            mov 38h,#80h
  121. dilex:     mov dptr,#led1     ;送字位代碼
  122.            mov a,38h
  123.            movx @dptr,a
  124.            mov dptr,#ZOE0     ;索字形代碼
  125.            mov a,@r1
  126.            movc a,@a+dptr
  127.            mov dptr,#led0     ;送當(dāng)前字形
  128.            movx @dptr,a
  129.            inc 38h
  130.            dec r1
  131.                   cjne r1,#2fh,dilex ;末滿六位轉(zhuǎn)
  132.            Ret
  133. ;-----------------------
  134. ;    鍵盤掃描子程序
  135. ;-----------------------
  136. dikey:     mov r4,#00h        ;設(shè)査鍵次數(shù)
  137. dikrd:     mov dptr,#led1     ;指狀態(tài)端口
  138.            movx a,@dptr       ;索鍵盤標(biāo)志
  139.            anl a,#07h         ;屏敝無(wú)效位
  140.            jnz keys           ;有鍵按下轉(zhuǎn)
  141.            djnz r4,dikrd      ;末完繼續(xù)査
  142.            mov a,#20h         ;定義無(wú)鍵碼
  143.            ret                ;返回
  144. keys:      mov dptr,#led0     ;指鍵入端口
  145.            movx a,@dptr       ;讀當(dāng)前鍵碼
  146.            mov r2,a           ;存當(dāng)前鍵碼
  147.            anl a,#03h         ;保留低二位
  148.            xch a,r2           ;取當(dāng)前鍵碼
  149.            anl a,#38h         ;舍棄無(wú)效位
  150.            rr a               ;鍵碼的壓縮
  151.            orl a,r2           ;與低二拼接
  152.            mov dptr,#GOJZ     ;指鍵碼表首
  153.            movc a,@a+dptr     ;索取鍵碼值
  154.            ret                ;返回
  155. ;------------------------
  156. ;    電壓顯示子程序
  157. ;------------------------



  158. disp0:
  159.           xrl a,#0FFh
  160.           clr c
  161.           subb a,#7Fh
  162.           mov r7,a
  163.           mov r2,#85h
  164.           mov r0,#11
  165.           mov dptr,#CS8279C
  166.           mov a,r2
  167.           movx @dptr,a
  168.           mov dptr,#ledmap    ;指字形表首
  169.           mov a,r0               ;取送顯數(shù)據(jù)
  170.           movc a,@a+dptr       ;索字形代碼
  171.           mov dptr,#CS8279D   ;指向字形口
  172.           movx @dptr,a        ;送當(dāng)前字形
  173.           mov b,#50
  174.           mov a,r7
  175.           div ab
  176.           mov r0,a
  177.           dec r2
  178.           mov dptr,#CS8279C
  179.           mov a,r2
  180.           movx @dptr,a
  181.           mov dptr,#ledmap    ;指字形表首
  182.           mov a,r0               ;取送顯數(shù)據(jù)
  183.           movc a,@a+dptr       ;索字形代碼
  184.           mov dptr,#CS8279D   ;指向字形口
  185.           movx @dptr,a        ;送當(dāng)前字形
  186.           dec r2
  187.           mov r0,#10
  188.           mov dptr,#CS8279C
  189.           mov a,r2
  190.           movx @dptr,a
  191.           mov dptr,#ledmap    ;指字形表首
  192.           mov a,r0            ;取送顯數(shù)據(jù)
  193.           movc a,@a+dptr       ;索字形代碼
  194.           mov dptr,#CS8279D   ;指向字形口
  195.           movx @dptr,a        ;送當(dāng)前字形
  196.           dec r2
  197.           mov a,#5
  198.           xch a,b
  199.           div ab
  200.           mov r0,a
  201.           mov dptr,#CS8279C
  202.           mov a,r2
  203.           movx @dptr,a
  204.           mov dptr,#ledmap    ;指字形表首
  205.           mov a,r0            ;取送顯數(shù)據(jù)
  206.           mov dptr,#CS8279D   ;指向字形口
  207.           movx @dptr,a        ;送當(dāng)前字形
  208.           dec r2
  209.           mov dptr,#CS8279C
  210.           mov a,r2
  211.           movx @dptr,a
  212.           mov dptr,#ledmap    ;指字形表首
  213.         mov a,b            ;取送顯數(shù)據(jù)
  214.         movc a,@a+dptr       ;索字形代碼
  215.         mov dptr,#CS8279D   ;指向字形口
  216.         movx @dptr,a        ;送當(dāng)前字形
  217.         ret
  218. disp1:  clr c
  219.         subb a,#7Fh
  220.         mov r7,a
  221.         mov r2,#85h
  222.         mov r0,#0
  223.         mov dptr,#CS8279C
  224.         mov a,r2
  225.         movx @dptr,a
  226.         mov dptr,#ledmap    ;指字形表首
  227.         mov a,r0            ;取送顯數(shù)據(jù)
  228.         movc a,@a+dptr      ;索字形代碼
  229.         mov dptr,#CS8279D   ;指向字形口
  230.         movx @dptr,a        ;送當(dāng)前字形
  231.         mov b,#50
  232.         mov a,r7
  233.         div ab
  234.         mov r0,a
  235.         dec r2
  236.         mov dptr,#CS8279C
  237.         mov a,r2
  238.         movx @dptr,a
  239.         mov dptr,#ledmap    ;指字形表首
  240.         mov a,r0             ;取送顯數(shù)據(jù)
  241.         movc a,@a+dptr       ;索字形代碼
  242.         mov dptr,#CS8279D   ;指向字形口
  243.         movx @dptr,a        ;送當(dāng)前字形
  244.         dec r2
  245.         mov r0,#10
  246.         mov dptr,#CS8279C
  247.         mov a,r2
  248.         movx @dptr,a
  249.         mov dptr,#ledmap    ;指字形表首
  250.         mov a,r0            ;取送顯數(shù)據(jù)
  251.         movc a,@a+dptr       ;索字形代碼
  252.         mov dptr,#CS8279D   ;指向字形口
  253.         movx @dptr,a        ;送當(dāng)前字形
  254.         dec r2
  255.         mov a,#5
  256.         xch a,b
  257.         div ab
  258.         mov r0,a
  259.         mov dptr,#CS8279C
  260.         mov a,r2


  261.         movx @dptr,a
  262.         mov dptr,#ledmap    ;指字形表首
  263.         mov a,r0            ;取送顯數(shù)據(jù)
  264.         movc a,@a+dptr       ;索字形代碼
  265.         mov dptr,#CS8279D   ;指向字形口
  266.         movx @dptr,a        ;送當(dāng)前字形
  267.         dec r2
  268.         mov dptr,#CS8279C
  269.         mov a,r2
  270.         movx @dptr,a
  271.         mov dptr,#ledmap    ;指字形表首
  272.         mov a,b            ;取送顯數(shù)據(jù)
  273.         movc a,@a+dptr       ;索字形代碼
  274.         mov dptr,#CS8279D   ;指向字形口
  275.         movx @dptr,a        ;送當(dāng)前字形
  276.    
  277.         ret
  278.    




  279. ledmap: db 0ch,9fh,4ah,0bh,99h,29h,28h,8fh  ;01234567
  280.         db 08h,09h,0f7h,0fbh,6ch,1ah,68h,0e8h ;89ABCDEF



  281. ;------------------------
  282. ;-------功能鍵定義
  283. CKEY:  dw LEFT,RIGHT,STOP,VS
  284. ;------字形代碼
  285. ZOE0:   DB 0ch,9fh,4ah,0bh,99h,29h,28h,8fh,08h,09h,88h
  286. ;          0   1   2   3   4   5   6   7   8   9   a
  287.         DB 38h,6ch,1ah,68h,0e8h,0ffh,0c0h
  288. ;          b   c   d   e   f    關(guān)閉  p.
  289. ;------按鍵代碼(20h為溢出碼)
  290. GOJZ:   db 13h,12h,11h,10h,0dh,0ch,0bh,0ah,0eh,03h   ;0~9
  291.         db 06h,09h,0fh,02h,05h,08h,00h,01h,04h,07h   ;a~13
  292.         db 20h,20h,20h,20h,20h,20h,20h,20h,20h,20h,20h,20h;



  293.         END
復(fù)制代碼

所有資料51hei提供下載:
匯編程序.rar (3.34 KB, 下載次數(shù): 35)


評(píng)分

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

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:74784 發(fā)表于 2019-1-6 17:05 | 顯示全部樓層
有換向功能嗎?
回復(fù)

使用道具 舉報(bào)

ID:7485 發(fā)表于 2019-1-6 20:08 | 顯示全部樓層
本帖最后由 ahshmj 于 2019-1-7 00:35 編輯

這個(gè)電路和程序現(xiàn)在基本上沒(méi)人會(huì)再用了。

在單片機(jī)普及應(yīng)用之前,由于受技術(shù)和成本的影響,多使用8031單片機(jī)。由于這種單片機(jī)沒(méi)有片內(nèi)ROM,所以必須外掛并行ROM(當(dāng)時(shí)沒(méi)有串行ROM)。這樣就必須占用P0和P2口,這樣一來(lái)往往是IO不夠用,所以就有了8279這種專門配套數(shù)碼管顯示+鍵盤功能的芯片,其功能非常強(qiáng)大。
8031+ROM+8279+373等必須的電路,構(gòu)成一個(gè)叫做“單板機(jī)”的系統(tǒng)。

樓主給出的圖還僅僅是8279的電路部分,其他的8031、74ls373、ROM等,還包括程序中出現(xiàn)的0832等都在另外的電路圖中。
、從樓主給出的電路圖可以看出其電路相當(dāng)?shù)膹?fù)雜,現(xiàn)在一般很少用了。

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:164988 發(fā)表于 2019-1-6 20:22 | 顯示全部樓層
下載后解壓縮時(shí)提示:這個(gè)文件壓縮格式未知或文件已被破壞     沒(méi)有找到壓縮文件
回復(fù)

使用道具 舉報(bào)

ID:164988 發(fā)表于 2019-1-6 20:25 | 顯示全部樓層
壓縮文件下載后,解壓不了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久久久久久久国产成人免费 | 国产成人免费视频网站高清观看视频 | 羞羞色影院 | 久久国产99 | 欧洲一级视频 | 四虎国产 | 精品国产乱码久久久久久蜜柚 | 亚洲成人av在线播放 | 久久精品国产一区二区电影 | 精品国产乱码久久久久久闺蜜 | 精品在线一区 | 亚洲精品一区二区另类图片 | 亚洲成人国产 | 金莲网 | 高清人人天天夜夜曰狠狠狠狠 | 亚洲精品99 | 欧美精品 在线观看 | 午夜私人影院在线观看 | 日韩中文字幕一区二区 | 欧美aaaaaaaaaa| 毛片免费看| 中文字幕在线播放不卡 | 最新免费黄色网址 | 日本三级电影在线看 | 日韩有码一区二区三区 | 免费日韩av网站 | 久久久久无码国产精品一区 | 91视频在线看 | 久久99国产精品 | 激情欧美一区二区三区 | 黑人精品xxx一区一二区 | 成人免费在线播放视频 | 亚洲成人久久久 | h视频在线免费看 | 999久久久久久久久6666 | 自拍偷拍一区二区三区 | 在线免费91| 国产激情一区二区三区 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | www.99热.com | 99国产精品99久久久久久 |