找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)八位 A/D 轉(zhuǎn)換匯編源碼

[復(fù)制鏈接]
ID:568296 發(fā)表于 2019-6-20 20:55 | 顯示全部樓層 |閱讀模式
上周自己寫的單片機(jī)八位 A/D  轉(zhuǎn)換匯編源碼  歡迎大家參考!


一、 實(shí)驗(yàn)?zāi)康?br /> 1 .掌握 ADC0809 與 與 89C51  的接口方法。
2 .采用定時(shí)與查詢方法讀取 A/D  轉(zhuǎn)換結(jié)果,并將轉(zhuǎn)換數(shù)據(jù)存于片內(nèi)RAM  中。
3.  通過實(shí)驗(yàn)了解單片機(jī)如何進(jìn)行數(shù)據(jù)采集。
4. 掌握如何用 8255 的 的 PA  口輸出轉(zhuǎn)換好的數(shù)字量到發(fā)光二極管顯示。
  1. 1 .定時(shí)方式采集 0  通道
  2. ORG 0000H
  3. AJMP MAIN
  4. MAIN: MOV DPTR,#9003H ;8255  控制字地址
  5. MOV A,#82H ; 方式 0 ,PA ,PC  輸出,PB  輸入
  6. MOVX @DPTR, A
  7. MOV DPTR, #8000H
  8. MOV A, #00H
  9. MOVX @DPTR, A ;動(dòng) 啟動(dòng) A/D
  10. MOV R2, #40H ;  延時(shí)
  11. DLYY: DJNZ R2, DLYY ;等待轉(zhuǎn)換結(jié)果
  12. MOVX A, @DPTR ;
  13. MOV R6,A ; 轉(zhuǎn)換結(jié)果至 R6 中 中
  14. MOV R1, #100 ; 二極管顯示轉(zhuǎn)換的結(jié)果
  15. DLY:
  16. MOV DPTR,#9000H ;Port A  地址
  17. MOVX @DPTR,A
  18. DJNZ R1, DLY ; 延時(shí)
  19. AJMP MAIN
  20. END
  21. 2 .查詢方式采集 0  通道 時(shí) (此時(shí) EOC  引腳和 P1.0
  22. ORG 0000H
  23. AJMP MAIN
  24. MAIN:
  25. MOV DPTR,#9003H;8255  控制字地址
  26. MOV A,#82H ; 方式 0 ,PA ,PC  輸出,PB  輸入
  27. MOVX @DPTR, A
  28. MOV DPTR,#8000H
  29. MOV A,#00H
  30. MOVX @DPTR, A ; 啟動(dòng) A/D
  31. LOOP1:
  32. MOV P1,#0FFH
  33. MOVA,P1
  34. ANLA,#01H; 查詢 EOC  狀態(tài),高電平轉(zhuǎn)換結(jié)束
  35. JNZ DIS
  36. AJMP LOOP1
  37. DIS: MOVX A,@DPTR
  38. MOV R6,A; 轉(zhuǎn)換結(jié)果至 R6 中 中
  39. MOV R1, #100 ; 二極管顯示轉(zhuǎn)換的結(jié)果
  40. DLY:
  41. MOV DPTR,#9000H ;PortA  地址
  42. MOVX @DPTR,A
  43. DJNZ R1, DLY ; 延時(shí)
  44. AJMP MAIN
  45. END
  46. 3. 中斷方式采集 0  通道
  47. ORG 0000H
  48. AJMP MA
  49. ORG 0003H
  50. AJMP RAI
  51. ORG 0100H
  52. MA:SETB IT0
  53. SETB EA
  54. SETB EX0
  55. MOV DPTR,#9003H;8255  控制字地址
  56. MOV A,#82H ; 方式 0 ,PA ,PC  輸出,PB  輸入
  57. MOVX @DPTR, A
  58. QD:MOV DPTR, #8000H ;0809
  59. MOV A, #00H
  60. MOVX @DPTR, A ;動(dòng) 啟動(dòng) A/D
  61. SJMP $
  62. ORG 013FH
  63. RAI:MOV DPTR, #8000H
  64. MOVX A, @DPTR ; 讀入結(jié)果
  65. MOV R6,A ; 轉(zhuǎn)換結(jié)果至 R6 中 中
  66. MOV R1, #100 ; 二極管顯示轉(zhuǎn)換的結(jié)果
  67. DLY:
  68. MOV DPTR,#9000H ;PortA  地址
  69. MOVX @DPTR,A
  70. DJNZ R1, DLY ; 延時(shí)
  71. MOV DPTR, #8000H ; 啟動(dòng) A/D
  72. MOV A, #00H
  73. MOVX @DPTR, A
  74. RETI
  75. END
復(fù)制代碼



回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2019-6-21 03:37 | 顯示全部樓層
本帖需要重新編輯補(bǔ)全電路原理圖,源碼,詳細(xì)說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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