亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dac_ctrl.psm

?? 環境ISE
?? PSM
?? 第 1 頁 / 共 3 頁
字號:
                  OUTPUT s0, SPI_control_port     ;drive clock Low
                  SUB s1, 01                      ;count bits
                  JUMP NZ, next_SPI_dac_bit       ;repeat until finished
                  RETURN
                  ;
                  ;
                  ;
                  ;Set a voltage on one of the LTC2624 D/A converter outputs
                  ;
                  ;The D/A converter has 4 channels. Specify which channel is to be set using
                  ;register sC as follows....
                  ;   sC     Channel                 Nominal Voltage Range
                  ;   00        A                       0 to 3.30v (or VREFAB)
                  ;   01        B                       0 to 3.30v (or VREFAB)
                  ;   02        C                       0 to 2.50v (or VREFCD)
                  ;   03        D                       0 to 2.50v (or VREFCD)
                  ;   0F        All channels            various as above.
                  ;
                  ;The analogue level is a 12-bit value to be supplied in lower 12-bits of register
                  ;pair [sB,sA]. If this value is called 'k' and is in the range 0 to 4095 (000 to FFF)
                  ;then
                  ;      Vout = (k/4096) * VREFx
                  ;Hence it is not possible to reach the absolute level of the reference.
                  ;
                  ;Here are some useful values..
                  ;    Voltage    A or B    C or D
                  ;      0.0       000       000
                  ;      0.5       26D       333
                  ;      0.65      327               A/D reference -1.00v
                  ;      1.0       4D9       666
                  ;      1.5       746       99A
                  ;      1.65      800       A8F     converter reference = 3.3/2 = 1.65v
                  ;      2.0       9B2       CCD
                  ;      2.5       C1F       FFF
                  ;      2.65      CD9               A/D reference +1.00v
                  ;      3.0       E8C       n/a
                  ;      3.3       FFF       n/a
                  ;
                  ;Note that the full scale deflection of FFF will result in different output
                  ;voltages due to different reference voltages for each pair of channels.
                  ;
                  ;SPI communication with the DAC only requires a 24-bit word to be transmitted.
                  ;However, the device internally contains a 32-bit shift register. When writing
                  ;a command word, the previous contents are shifted out and can be observed by
                  ;the master (Spartan-3E in this case). If you do not use a 32-bit format, then
                  ;the read back is confusing. Hence this routine uses a 32-bit format by transmitting
                  ;a dummy byte first.
                  ;
                  ;  Byte 1 = 00   8 dummy bits
                  ;  Byte 2 = 3c   Command nibble (3=write and update) and channel selection
                  ;  Byte 3 = dd   Upper 8-bits of the 12-bit voltage value
                  ;  Byte 4 = d0   lower 4-bits of the 12-bit voltage value and 4 dummy bits.
                  ;
                  ;At the end of this communication, the register set [s9,s8,s7,s6] will contain the
                  ;data received back from the D/A converter which should be the previous command.
                  ;
         set_dac: CALL SPI_init                   ;ensure known state of bus and s0 register
                  XOR s0, SPI_dac_cs              ;select low on D/A converter
                  OUTPUT s0, SPI_control_port
                  LOAD s2, 00                     ;Write dummy byte to DAC
                  CALL SPI_dac_tx_rx
                  LOAD s9, s2                     ;capture response
                  LOAD s2, sC                     ;Select channel for update
                  AND s2, 0F                      ;isolate channel bits to be certain of correct command
                  OR s2, 30                       ;Use immediate Write and Update command is "0011"
                  CALL SPI_dac_tx_rx
                  LOAD s8, s2                     ;capture response
                  SL0 sA                          ;data shift bits into correct position
                  SLA sB                          ;with 4 dummy bits ('0') in the least significant bits.
                  SL0 sA
                  SLA sB
                  SL0 sA
                  SLA sB
                  SL0 sA
                  SLA sB
                  LOAD s2, sB                     ;Write 12 bit value followed by 4 dummy bits
                  CALL SPI_dac_tx_rx
                  LOAD s7, s2                     ;capture response
                  LOAD s2, sA
                  CALL SPI_dac_tx_rx
                  LOAD s6, s2                     ;capture response
                  XOR s0, SPI_dac_cs              ;deselect the D/A converter to execute
                  OUTPUT s0, SPI_control_port
                  RETURN
                  ;
                  ;Perform a hard reset of the D/A converter
                  ;
       dac_reset: CALL SPI_init                   ;ensure known state of bus and s0 register
                  XOR s0, SPI_dac_clr             ;pulse the clear signal.
                  OUTPUT s0, SPI_control_port
                  XOR s0, SPI_dac_clr
                  OUTPUT s0, SPI_control_port
                  RETURN
                  ;
                  ;
                  ;**************************************************************************************
                  ;Software delay routines
                  ;**************************************************************************************
                  ;
                  ;
                  ;
                  ;Delay of 1us.
                  ;
                  ;Constant value defines reflects the clock applied to KCPSM3. Every instruction
                  ;executes in 2 clock cycles making the calculation highly predictable. The '6' in
                  ;the following equation even allows for 'CALL delay_1us' instruction in the initiating code.
                  ;
                  ; delay_1us_constant =  (clock_rate - 6)/4       Where 'clock_rate' is in MHz
                  ;
                  ;Registers used s0
                  ;
       delay_1us: LOAD s0, delay_1us_constant
        wait_1us: SUB s0, 01
                  JUMP NZ, wait_1us
                  RETURN
                  ;
                  ;Delay of 40us.
                  ;
                  ;Registers used s0, s1
                  ;
      delay_40us: LOAD s1, 28                     ;40 x 1us = 40us
       wait_40us: CALL delay_1us
                  SUB s1, 01
                  JUMP NZ, wait_40us
                  RETURN
                  ;
                  ;
                  ;Delay of 1ms.
                  ;
                  ;Registers used s0, s1, s2
                  ;
       delay_1ms: LOAD s2, 19                     ;25 x 40us = 1ms
        wait_1ms: CALL delay_40us
                  SUB s2, 01
                  JUMP NZ, wait_1ms
                  RETURN
                  ;
                  ;Delay of 20ms.
                  ;
                  ;Delay of 20ms used during initialisation.
                  ;
                  ;Registers used s0, s1, s2, s3
                  ;
      delay_20ms: LOAD s3, 14                     ;20 x 1ms = 20ms
       wait_20ms: CALL delay_1ms
                  SUB s3, 01
                  JUMP NZ, wait_20ms
                  RETURN
                  ;
                  ;Delay of approximately 1 second.
                  ;
                  ;Registers used s0, s1, s2, s3, s4
                  ;
        delay_1s: LOAD s4, 14                     ;50 x 20ms = 1000ms
         wait_1s: CALL delay_20ms
                  SUB s4, 01
                  JUMP NZ, wait_1s
                  RETURN
                  ;
                  ;
                  ;
                  ;**************************************************************************************
                  ;Interrupt Service Routine (ISR)
                  ;**************************************************************************************
                  ;
                  ;Interrupts occur at a rate of 8KHz.
                  ;
                  ;Each interrupt is the fundamental timing trigger used to set the sample rate and
                  ;it is therefore use to set the D/A outputs by copying the values stored in
                  ;scratch pad memory and outputting them to the D/A converter using the SPI bus.
                  ;
                  ;Because the SPI communication is in itself a predictable process, the sample rate
                  ;is preserved without sample jitter. All variable activities are left to the main
                  ;program.
                  ;
                  ;Each time PicoBlaze transmits a 32-bit command word to the D/A converter, the
                  ;D/A responds with the last command it was sent. So as the end of this service routine
                  ;the register set [s9,s8,s7,s6] will contain the command which has just been sent
                  ;for the setting of channel C.
                  ;
                  ;Set channel A
                  ;
             ISR: LOAD sC, 00                     ;channel A
                  FETCH sB, chan_A_msb            ;12-bit value
                  FETCH sA, chan_A_lsb
                  CALL set_dac
                  ;
                  ;Set channel B
                  ;
                  LOAD sC, 01                     ;channel B
                  FETCH sB, chan_B_msb            ;12-bit value
                  FETCH sA, chan_B_lsb
                  CALL set_dac
                  ;
                  ;Set channel C
                  ;
                  LOAD sC, 02                     ;channel C
                  FETCH sB, chan_C_msb            ;12-bit value
                  FETCH sA, chan_C_lsb
                  CALL set_dac
                  ;
                  ;Set channel A
                  ;
                  LOAD sC, 03                     ;channel D
                  FETCH sB, chan_D_msb            ;12-bit value
                  FETCH sA, chan_D_lsb
                  CALL set_dac
                  ;
                  LOAD sF, 00                     ;clear flag
                  RETURNI ENABLE
                  ;
                  ;
                  ;**************************************************************************************
                  ;Interrupt Vector
                  ;**************************************************************************************
                  ;
                  ADDRESS 3FF
                  JUMP ISR
                  ;
                  ;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本一道波多野结衣一区二区| 亚洲444eee在线观看| 国产精品系列在线播放| 精品国内二区三区| 激情综合色播五月| 久久久www成人免费毛片麻豆 | 欧美日韩一区二区电影| 五月天激情小说综合| 日韩午夜中文字幕| 国产精品综合久久| 国产精品国产三级国产a| 91丨九色丨尤物| 午夜影视日本亚洲欧洲精品| 欧美一级黄色录像| 国产精品一二三四区| 亚洲人成小说网站色在线| 色播五月激情综合网| 日韩精品久久久久久| 精品日韩在线一区| 94色蜜桃网一区二区三区| 亚洲一区二区三区爽爽爽爽爽 | 精品少妇一区二区三区免费观看| 国产精品一区二区不卡| 亚洲精品中文在线观看| 日韩免费高清电影| 99久久国产综合精品女不卡| 亚洲成人av中文| 2014亚洲片线观看视频免费| 97久久精品人人澡人人爽| 婷婷开心久久网| 国产日韩欧美精品在线| 欧美日韩亚洲综合在线| 国产精品自拍毛片| 午夜精品一区二区三区三上悠亚| 久久久高清一区二区三区| 欧美丝袜丝交足nylons图片| 国产精品1区2区| 婷婷亚洲久悠悠色悠在线播放| 国产无一区二区| 日韩亚洲欧美在线| 91激情在线视频| 成人永久免费视频| 日本视频一区二区三区| 亚洲卡通欧美制服中文| 国产色产综合色产在线视频| 欧美美女网站色| 粉嫩av一区二区三区在线播放 | 久久综合久久鬼色中文字| 色噜噜狠狠色综合中国| 国产裸体歌舞团一区二区| 亚洲国产一区二区三区青草影视| 欧美激情综合五月色丁香小说| 91麻豆精品国产91久久久资源速度 | 精品久久久久久无| 欧美日韩成人激情| 91女厕偷拍女厕偷拍高清| 国产精品影视网| 久久精品久久精品| 亚欧色一区w666天堂| 亚洲少妇最新在线视频| 欧美激情一区二区在线| 精品国一区二区三区| 日韩一区二区三区视频| 欧美另类高清zo欧美| 欧美视频一区二区在线观看| 97久久精品人人做人人爽50路| 豆国产96在线|亚洲| 国模冰冰炮一区二区| 久久狠狠亚洲综合| 日韩电影免费在线看| 午夜精品久久久久久久蜜桃app| 亚洲激情av在线| 亚洲精品高清视频在线观看| 最新不卡av在线| 中文字幕在线不卡一区| 亚洲日本丝袜连裤袜办公室| 亚洲图片欧美激情| 亚洲三级免费观看| 亚洲婷婷综合久久一本伊一区| 国产精品日产欧美久久久久| 中文在线一区二区| 中文字幕永久在线不卡| 国产夫妻精品视频| 国产自产v一区二区三区c| 奇米一区二区三区| 久久国产精品一区二区| 国产一区二区三区免费在线观看| 激情丁香综合五月| 国产高清亚洲一区| 波多野结衣中文一区| 91网上在线视频| 欧美体内she精高潮| 欧美一级精品在线| 久久精品人人爽人人爽| 国产精品国产自产拍高清av王其| 国产精品久久久久久一区二区三区 | 紧缚捆绑精品一区二区| 精品亚洲成a人| 成人av电影在线播放| 色婷婷综合久久久中文一区二区| 欧美色爱综合网| 欧美一级欧美三级| 国产校园另类小说区| 亚洲人成亚洲人成在线观看图片 | 欧美精品一区二区在线观看| 中文字幕不卡在线观看| 夜夜精品视频一区二区| 日韩av一区二区在线影视| 国产精品综合网| 欧洲日韩一区二区三区| 欧美变态tickle挠乳网站| 国产精品高潮久久久久无| 亚洲www啪成人一区二区麻豆| 美女久久久精品| www.99精品| 7777精品伊人久久久大香线蕉| 久久久久久久国产精品影院| 亚洲美女精品一区| 老司机精品视频一区二区三区| zzijzzij亚洲日本少妇熟睡| 欧美精品日日鲁夜夜添| 亚洲国产电影在线观看| 午夜成人免费电影| 粉嫩嫩av羞羞动漫久久久| 这里只有精品免费| 亚洲色图视频网| 久久99国产精品免费网站| 99国产精品国产精品毛片| 欧美一区二区美女| 亚洲美女屁股眼交| 国产成人精品亚洲777人妖| 欧美视频在线一区二区三区| 国产精品少妇自拍| 蜜桃视频在线观看一区| 色94色欧美sute亚洲线路一ni| 精品久久久久久久久久久久包黑料 | 青娱乐精品视频在线| 成年人午夜久久久| 欧美大片顶级少妇| 亚洲国产一区视频| 99在线热播精品免费| 久久免费视频色| 青青草伊人久久| 欧美日韩精品欧美日韩精品一综合| 中文av一区特黄| 精东粉嫩av免费一区二区三区| 欧美三级韩国三级日本三斤| 中文字幕色av一区二区三区| 精品综合久久久久久8888| 欧美日韩在线播| 伊人婷婷欧美激情| a4yy欧美一区二区三区| 久久久久久电影| 国产呦精品一区二区三区网站| 91精品婷婷国产综合久久性色 | 国产乱人伦偷精品视频不卡| 欧美一区二区三区色| 亚洲成人激情社区| 欧美亚洲动漫另类| 亚洲福利视频一区| 91看片淫黄大片一级在线观看| 久久影院视频免费| 国产成人夜色高潮福利影视| 久久久久青草大香线综合精品| 免费在线观看一区| 欧美一区二区三区视频免费播放| 日韩精品国产欧美| 91精品国产乱码久久蜜臀| 日韩成人午夜电影| 日韩一区二区在线免费观看| 青青草国产精品97视觉盛宴| 日韩三级在线免费观看| 日本sm残虐另类| 久久亚洲私人国产精品va媚药| 奇米影视一区二区三区小说| 欧美一区二区三区视频在线| 日本不卡视频在线| 成人自拍视频在线观看| 国产色产综合产在线视频| 成人综合在线网站| 1区2区3区欧美| 99精品国产99久久久久久白柏| 亚洲免费观看高清| 99久久精品国产导航| 亚洲精品大片www| 91精品久久久久久久91蜜桃| 免费在线观看视频一区| 欧美精品一区二区蜜臀亚洲| 黄页视频在线91| 国产精品污污网站在线观看| 色哟哟国产精品免费观看| 亚洲自拍偷拍麻豆| 日韩免费一区二区三区在线播放| 亚洲午夜一区二区| 91精品国产91综合久久蜜臀| 国产一区久久久| 国产精品丝袜一区| 欧美三级韩国三级日本三斤| 欧美性xxxxx极品少妇| 韩国一区二区三区|