找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)ADC0832+DAC0808電壓檢測設(shè)計(含VB上位機(jī))仿真+源程序

[復(fù)制鏈接]
ID:319133 發(fā)表于 2019-1-28 18:47 | 顯示全部樓層 |閱讀模式
題目:電壓檢測系統(tǒng)

概述:1、用一個單片機(jī)和DAC0808轉(zhuǎn)換組成一個隨機(jī)電壓發(fā)生單元(0~5V);
         2、另一個單片機(jī)和ADC0832轉(zhuǎn)換組成數(shù)據(jù)采集單元;
         3、通過串行接口將采集的數(shù)據(jù)傳到上位機(jī)中,需要編寫上位計算機(jī)程序,對采集的數(shù)據(jù)進(jìn)行處理,如顯示當(dāng)前值、畫出一定時間內(nèi)的記錄曲線等。

說明:1、這里是一個仿真系統(tǒng),需要安裝虛擬串口工具。proteus的串行接口對應(yīng)虛擬串口com3,VB程序?qū)?yīng)虛擬串口com4。
              1200BSP,無校驗位,8個數(shù)據(jù)位,1個停止位;單片機(jī)系統(tǒng)采用的是6M晶振。
         2、上位機(jī)程序用VB編寫,數(shù)據(jù)采集程序用匯編語言編寫,隨機(jī)電壓發(fā)生程序用C語言編寫。
         3、上位機(jī)程序可直接運行“工程1.exe”,如果在VB6.0的機(jī)器上可以看見原代碼。
         4、如果提示缺少MSCOMM32.OCX,可將文件夾中所帶的MSCOMM32.OCX復(fù)制粘帖到c:\windows\system32\下即可(不會對您的系統(tǒng)造成任何危害)。
捕獲.PNG

電壓檢測系統(tǒng)仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
捕獲1.PNG

上位機(jī)源碼:
0.png

單片機(jī)源程序如下:
  1. ;ADCS BIT P3.5 ;使能接口
  2. ;ADCLK BIT P3.6 ;時鐘接口
  3. ;ADDO BIT P3.7 ;數(shù)據(jù)輸出接口(復(fù)用)
  4. ;ADDI BIT P3.7 ;數(shù)據(jù)輸入接口
  5. ORG     0000H
  6. LJMP INITOUT
  7. ORG 0023H
  8. LJMP SERVE
  9. ORG 30H
  10. INITOUT:
  11. MOV SP,#60H   ;棧頂?shù)刂?br />
  12. MOV TMOD,#20H  ;定時器1初始化
  13. MOV TH1,#0F3H  ;設(shè)置波特率為1200MHz,6MHz的晶振
  14. MOV TL1,#0F3H  ;
  15. MOV SCON,#50H  ;串口初始化為可以接收
  16. MOV PCON,#00H  ;波特率不倍增
  17. SETB TR1   ;啟動定時器
  18. SETB EA   ;開中斷
  19. SETB ES   ;允許串口中斷
  20. MainProgram:   
  21. NOP    ;主程序主要是等中斷
  22. NOP
  23. LCALL CONV
  24. SJMP Mainprogram
  25. ;=======================================================
  26. SERVE:
  27. PUSH PSW        ;將程序狀態(tài)字壓入堆棧
  28. PUSH ACC        ;將累加器壓入堆棧
  29. CLR EA        ;關(guān)閉系統(tǒng)中斷         
  30. CLR RI          ;清除中斷標(biāo)志位
  31. MOV A,SBUF
  32. CJNE A,#01,NEXTI;判斷,01號單片機(jī)

  33. MOV SBUF,31H


  34. wait:jnb ti,wait
  35.      clr ti

  36. CLR RI          ;清除中斷標(biāo)志位
  37. SETB EA         ;打開系統(tǒng)中斷
  38. POP ACC         ;累加器出棧
  39. POP PSW         ;程序狀態(tài)字出棧
  40. NEXTI:RETI            ;中斷程序返回



  41. ;==============================================
  42.      
  43. CONV:MOV 30H,#02H;方式字選擇
  44.      MOV R0,#31H;數(shù)據(jù)存儲首地址
  45.      LCALL ADC0832;調(diào)用A/D轉(zhuǎn)換子程序

  46.      RET
  47. ;========================================
  48. ADC0832:SETB P3.7 ;初始化通道選擇
  49.         NOP
  50.         NOP
  51.         CLR P3.5 ;拉低/CS端
  52.         NOP
  53.         NOP
  54.         SETB P3.6 ;拉高CLK端
  55.         NOP
  56.         NOP
  57.         CLR P3.6 ;拉低CLK端,形成下降沿
  58.         MOV A,30H
  59.         MOV C,ACC.1 ;確定取值通道選擇
  60.         MOV P3.7,C
  61.         NOP
  62.         NOP
  63.         SETB P3.6 ;拉高CLK端
  64.         NOP
  65.         NOP
  66.         CLR P3.6 ;拉低CLK端,形成下降沿2
  67.         MOV A,30H
  68.         MOV C,ACC.0 ;確定取值通道選擇
  69.         MOV P3.7,C
  70.         NOP
  71.         NOP
  72.         SETB P3.6 ;拉高CLK端
  73.         NOP
  74.         NOP
  75.         CLR P3.6 ;拉低CLK端,形成下降沿3
  76.         SETB P3.7
  77.         NOP
  78.         NOP
  79.     MOV R7,#8 ;準(zhǔn)備送下后8個時鐘脈沖
  80. ADH:MOV C,P3.7 ;接收數(shù)據(jù)
  81.     MOV ACC.0,C
  82.     RL A ;左移一次
  83.     SETB P3.6
  84.     NOP
  85.     NOP
  86.     CLR P3.6 ;形成一次時鐘脈沖
  87.     NOP
  88.     NOP
  89.     DJNZ R7,ADH ;循環(huán)8次
  90.     MOV C,P3.7 ;接收數(shù)據(jù)
  91.     MOV ACC.0,C
  92.     MOV @R0,A
  93.     MOV R7,#8
  94. ADL:MOV C,P3.7 ;接收數(shù)據(jù)
  95.     MOV ACC.0,C
  96.     RR A ;左移一次
  97.     SETB P3.6
  98.     NOP
  99.     NOP
  100.     CLR P3.6 ;形成一次時鐘脈沖
  101.     NOP
  102.     NOP
  103.     DJNZ R7,ADL ;循環(huán)8次
  104.     MOV B,@R0
  105.     CJNE A,B,ADC0832 ;數(shù)據(jù)校驗
  106.     SETB P3.5 ;拉高/CS端
  107.     CLR P3.6 ;拉低CLK端
  108.     SETB P3.7 ;拉高數(shù)據(jù)端,回到初始狀態(tài)
  109.     RET
  110. ;=======================================
復(fù)制代碼

所有資料51hei提供下載:
電壓檢測系統(tǒng)(含VB上位機(jī))proteus仿真 程序資料.rar (151.53 KB, 下載次數(shù): 104)

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:160725 發(fā)表于 2019-4-30 08:09 | 顯示全部樓層
值得學(xué)習(xí)
回復(fù)

使用道具 舉報

ID:525633 發(fā)表于 2019-5-1 16:46 | 顯示全部樓層

值得學(xué)習(xí)
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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