<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于LabVIEW的單片機(jī)脈沖發(fā)生器

          基于LabVIEW的單片機(jī)脈沖發(fā)生器

          作者: 時(shí)間:2009-02-13 來源:網(wǎng)絡(luò) 收藏

          在接收到數(shù)據(jù)后,有一條反饋的指令,他將其緩沖區(qū)內(nèi)的值再次送回上位機(jī),對(duì)該值進(jìn)行顯示,并可以和原來實(shí)際輸出的16進(jìn)制數(shù)進(jìn)行比較。用戶可以很方便地知道,是否在上下位機(jī)通信中出現(xiàn)誤碼。

          本文引用地址:http://www.ex-cimer.com/article/173904.htm

          圖6左側(cè)的倒三角表示從圖4(a)的VISA Read中接收到的值,他與上一次顯示的值拼裝成一個(gè)完整的字符串,成為新的顯示值,在字符串顯示區(qū)顯示出來。

          4 程序運(yùn)行結(jié)果與驗(yàn)證

          程序的前面板界面如圖7所示。

          圖8是另一個(gè)程序的前面板,該程序可以將采樣率設(shè)定為50 kHz的采集卡采集到的數(shù)據(jù)顯示在屏幕上。該屏幕顯示的是,上位機(jī)程序發(fā)送欲產(chǎn)生高低電平均為0.6 ms波的定時(shí)器初始值給下位機(jī)后,下位機(jī)產(chǎn)生的序列。

          上位機(jī)發(fā)送的16進(jìn)制數(shù)為FDA8FDA8,下位機(jī)準(zhǔn)確接收后,反饋的值也為FDA8FDA8。

          根據(jù)采樣率為50 kHz,即0.02 ms采樣一次,則在顯示波形圖中任選一次完整(如圖8所示)進(jìn)行計(jì)算,可以得到該次的低電平的持續(xù)時(shí)間為0.66 ms,高電平的持續(xù)時(shí)間為0.68 ms。

          這兩個(gè)數(shù)據(jù)的誤差可能是采集卡的采樣率誤差引起的,或是的定時(shí)器中斷服務(wù)程序的執(zhí)行周期產(chǎn)生的延時(shí)所造成的。

          另外,在上下位機(jī)的通信中,也可能會(huì)產(chǎn)生誤碼,導(dǎo)致產(chǎn)生的波形不符合要求。如果要一次性完成數(shù)據(jù)傳輸?shù)娜蝿?wù),則應(yīng)該在上下位機(jī)間增加可糾錯(cuò)的編碼和譯碼電路,否則,可以選擇再次發(fā)送數(shù)據(jù),當(dāng)返回值與發(fā)送值一致時(shí),才可認(rèn)為發(fā)送成功,產(chǎn)生的波形基本可以符合要求。

          5 結(jié)語(yǔ)

          本文用RS 232串行通信接口將計(jì)算機(jī)與相連,組成一個(gè)可控脈沖用于皮膚阻抗檢測(cè)。上位機(jī)用編程,產(chǎn)生的界面友好,操作方便。這種可控脈沖編程靈活,不僅可以產(chǎn)生方波,還可以產(chǎn)生三角波,正弦波等,基本可以滿足實(shí)驗(yàn)的要求。


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();