欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

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

QQ登錄

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

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

單片機(jī)DAC0832波形發(fā)生器源程序及課程設(shè)計(jì)說(shuō)明書下載(匯編語(yǔ)言)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
1. DAC0832讀寫原理
D/A轉(zhuǎn)換是把數(shù)字量轉(zhuǎn)換成模擬量的變換,從D/A輸出的是模擬電壓信號(hào)。產(chǎn)生鋸齒波和三角波只需由A存放的數(shù)字量的增減來(lái)控制;要產(chǎn)生正弦波,較簡(jiǎn)單的手段是造一張正弦數(shù)字量表。取值范圍為一個(gè)周期,采樣點(diǎn)越多,精度就越高。
在實(shí)驗(yàn)板上,輸入寄存器占偶地址端口,DAC寄存器占較高的奇地址端口。兩個(gè)寄存器均對(duì)數(shù)據(jù)獨(dú)立進(jìn)行鎖存。因而要把一個(gè)數(shù)據(jù)通過(guò)0832輸出,要經(jīng)兩次鎖存。典型程序段如下:


主程序:
  1. NAME T92               ;0832數(shù)模轉(zhuǎn)換實(shí)驗(yàn)
  2. PORT EQU 0CFA0H        ;片選地址送給字符名稱PORT
  3. ORG 00H
  4. START: MOV P1,#0FFH           ; P1口初地址賦值
  5.        MOV C,P1.0             ; Cy←P1.0
  6.        JNC JUCH1              ;若Cy=0,轉(zhuǎn)移到JUCH1,否則繼續(xù)執(zhí)下一步
  7.        MOV C,P1.1             ; Cy←P1.1
  8.        JNC JUCH2              ;若Cy=0,轉(zhuǎn)移到JUCH1,否則繼續(xù)執(zhí)下一步
  9. MOVC,P1.2              ;Cy←P1.2
  10.        JNC JUCH3              ;若Cy=0,轉(zhuǎn)移到JUCH1,否則繼續(xù)執(zhí)下一步
  11. MOVC,P1.3              ;Cy←P1.3
  12.        JNC JUCH4              ;若Cy=0,轉(zhuǎn)移到JUCH1,否則繼續(xù)執(zhí)下一步
  13.        SJMP START             ;轉(zhuǎn)移
  14.   子程序
  15. 三角波子程序:
  16. JUCH1:MOV DPTR,#PORT+1        ;DAC寄存器端口地址送DPTR
  17.       MOV A,#00H              ;初值送給累加器A
  18.       MOV R4,#2               ;設(shè)定波形的頻率
  19. UP0: MOV B,#0FFH             ;設(shè)定波形的周期
  20. UP1: MOV DPTR,#PORT          ;DAC輸入寄存器端口地址
  21.       MOVX @DPTR,A            ;送出數(shù)據(jù)
  22.       INC DPTR                ;加一,為DAC寄存器端口地址
  23.       MOVX @DPTR,A            ;啟動(dòng)轉(zhuǎn)換
  24.       INC A                   ;數(shù)據(jù)加一
  25.       CJNE A,#0FFH,UP1        ;波行達(dá)到下限值時(shí),波形上升   
  26.   MOV R2,#0FEH            ;R2←0FEH
  27. UP22:MOV DPTR,#PORT          ;DAC輸入寄存器端口地址
  28.       MOV A,R2                ;將波形上限值賦予A
  29.       MOVX @DPTR,A            ;送出數(shù)據(jù)
  30.       INC DPTR                ;加一,為DAC寄存器端口地址     
  31.   MOVX @DPTR              ;啟動(dòng)轉(zhuǎn)換
  32.          DJNZ R2,UP22            ;波形一直達(dá)到上限
  33.          DJNZ B,UP1              ;達(dá)到波形周期值
  34.          DJNZ R4,UP0             ;達(dá)到波形頻值
  35.       SJMP START              ;轉(zhuǎn)移
  36. 方波子程序:
  37. JUCH2:MOV R4,#20              ;循環(huán)次數(shù)
  38. UP00:MOV B,#0FFH             ;下限值
  39. LOOP1:MOV A,#33H              ;值上限電平
  40.       MOV DPTR,#PORT          ;DAC輸入寄存器端口地址
  41.       MOVX @DPTR,A            ;送出數(shù)據(jù)
  42.       INC DPTR                ;加一,為DAC寄存器端口地址
  43.          MOVX @DPTR,A            ;啟動(dòng)轉(zhuǎn)換
  44.          LCALL DELAY             ;形成方波頂寬
  45.          MOV A,#0FFH             ;置下限電平
  46.          MOV DPTR,#PORT          ;DAC輸入寄存器端口地址
  47.          MOVX @DPTR,A            ;送出數(shù)據(jù)
  48.          INC DPTR                ;加一,為DAC寄存器端口地址
  49.          MOVX @DPTR,A            ;啟動(dòng)轉(zhuǎn)換
  50.          LCALL DELAY             ;形成方波底寬
  51.          DJNZ B,LOOP1            ;若未達(dá)到下限值,轉(zhuǎn)到LOOP1,;否則下移
  52.          DJNZ R4,UP00            ;若未達(dá)到循環(huán)次數(shù),轉(zhuǎn)到UP00,否則下移
  53.          SJMP  START             ;轉(zhuǎn)移
  54. DELAY:MOV R0,#40H             ;延時(shí)程序
  55. D1:NOP
  56.          NOP
  57.          DJNZ R0,D1
  58. RET                          
  59. 鋸齒波子程序:
  60. JUCH3:MOV A,#00H              ;初值送給累加器A
  61. LOOP2:MOV B,#0FFH             ;下限值
  62. LOOP3:MOV DPTR,#PORT          ;DAC輸入寄存器端口地址
  63.          MOVX @DPTR,A            ;送出數(shù)據(jù)
  64.          INC DPTR                ;加一,為DAC寄存器端口地址
  65.          MOVX @DPTR,A            ;啟動(dòng)轉(zhuǎn)換
  66.          INC A                   ;數(shù)據(jù)加一
  67.          CJNE A,#0FFH,LOOP3      ;使鋸齒波的下限達(dá)到下限值   
  68. DJNZ B,LOOP3            ;若A未達(dá)到下限值,轉(zhuǎn)到LOOP3,否則下移
  69.          LJMP START              ;轉(zhuǎn)移
  70.    正弦波子程序:
  71. JUCH4:MOV B,#00H              ;正弦波啟示
  72. LP1:MOV DPTR,#DATRO         ;DPTR←表起始地址
  73.          MOV R4,#00H             ;波形終值
  74. LP2:CLR A               ;累加器清零
  75.          MOVC A,@A+DPTR          ;查表
  76.          MOV R3,DPH              ;高8位送給R3
  77.          MOV R5,DPL              ;低8位送給R5
  78.          MOV DPTR,#PORT          ;DAC輸入寄存器端口地址
  79.          MOVX @DPTR,A            ;送出數(shù)據(jù)
  80.          INC DPTR                ;加一,為DAC寄存器端口地址
  81.          MOVX @DPTR,A            ;啟動(dòng)轉(zhuǎn)換
  82.          MOV DPH,R3              ;R3送給數(shù)據(jù)指針高8位
  83.          MOV DPL,R5              ;R5送給數(shù)據(jù)指針低8位
  84.          INC DPTR                ;波形位移增量
  85.          DJNZ R4,LP2             ;達(dá)到波形設(shè)定周期
  86.          DJNZ B,LP1              ;達(dá)到波形設(shè)定頻率
  87.          LJMP START              ;轉(zhuǎn)移
  88. DATRO:DB 80H,83H,86H,89H,8DH,90H,93H,96H            ;正弦波數(shù)據(jù)
  89. DB 99H,9CH,9FH,0A2H,05AH,08AH,0ABH,0AEH
  90.       DB 0B1H,0B4H,0BFH,0BAH,0BCH,0BFH,0C2H,0C5H
  91.       DB 0C7H,0CAH,0CCH,0CFH,0D1H,0D4H,0D6H,0D8H
  92.       DB 0DAH,0DDH,0DFH,0E1H,0E3H,0E5H,0E7H,0E9H
  93.       DB 0EAH,0ECH,0EEH,0EFH,0F1H,0F2H,0F4H,0F5H
  94.       DB 0F6H,0F7H,0F8H,0F9H,0FAH,0FBH,0FCH,0FDH
  95.       DB 0FDH,0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH
  96.       DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,0FDH
  97.       DB 0FDH,0FCH,0FBH,0FAH,0F9H,0F8H,0F7H,0F6H
  98.       DB 0F5H,0F4H,0F2H,0F1H,0EFH,0EEH,0ECH,0EAH
  99.       DB 0E9H,0E7H,0E5H,0E3H,0E1H,0DEH,0DDH,0DAH
  100.       DB 0D8H,0D6H,0D4H,0D1H,0CFH,0CCH,0CAH,0C7H
  101.       DB 0C5H,0C2H,0BFH,0BCH,0BAH,0B7H,0B4H,0B1H
  102.       DB 0AEH,0ABH,0A8H,0A5H,0A2H,9FH,9CH,99H
  103.       DB 96H,93H,90H,8DH,89H,86H,83H,80H
  104.       DB 80H,7CH,79H,76H,72H,6FH,6CH,69H
  105.       DB 66H,63H,60H,5DH,5AH,57H,55H,51H
  106.       DB 4EH,4CH,48H,45H,43H,40H,3DH,3AH
  107.       DB 38H,35H,33H,30H,2EH,2BH,29H,27H
  108.       DB 25H,22H,20H,1EH,1CH,1AH,18H,16H
  109.       DB 15H,13H,11H,10H,0EH,0DH,08H,0AH
  110.       DB 09H,8H,7H,6H,5H,4H,3H,2H
  111.       DB 02H,1H,0H,0H,0H,0H,0H,0H
  112.       DB 00H,0H,0H,0H,0H,0H,1H,2H
  113.       DB 02H,3H,4H,5H,6H,7H,8H,9H
  114.       DB 0AH,0BH,0DH,0EH,10H,11H,13H,15H
  115.       DB 16H,18H,1AH,1CH,1EH,20H,22H,25H
  116.       DB 27H,29H,2BH,2EH,30H,33H,35H,38H
  117.       DB 3AH,3DH,40H,43H,45H,47H,4CH,4EH
  118.       DB 51H,51H,55H,57H,5AH,5DH,60H,63H
  119.       DB 69H,6CH,6FH,72H,76H,79H,7CH,80H
  120.       END
復(fù)制代碼

完整的Word格式文檔51黑下載地址:
單片機(jī)原理發(fā)生器課程設(shè)計(jì).doc (256 KB, 下載次數(shù): 45)


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

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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