国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

提升PIC單片機AD轉換數(shù)據(jù)存儲及串口效率的設計

發(fā)布時間:2012-2-23 19:23    發(fā)布者:1770309616
關鍵詞: AD轉換 , PIC , 串口 , 單片機
 在由單片機和PC 機構成的檢測系統(tǒng)中,通常會由多個單片機采集數(shù)據(jù)并將經(jīng)過A/D 轉換的數(shù)據(jù)通過串口送往上位PC 機進行數(shù)據(jù)處理。PIC 單片機A/D 轉換后的結果大多是8 位或10位的,8 位的A/D轉換不涉及該問題。以10 位的數(shù)據(jù)為例,在單片機內進行存儲時需要占用2 個8 位的字節(jié),低8 位和高2位分別存儲在2 個字節(jié)中,但是用于存儲高位數(shù)據(jù)的8 位寬的RAM 單元中僅有2 位是有效數(shù)據(jù)。
  單片機的存儲空間有限,以單片機為例,RAM 數(shù)據(jù)存儲器按功能分為通用寄存器和特殊功能寄存器兩個部分,除去特殊功能寄存器外,僅有368個8 位寬的RAM 單元,單片機能夠存儲的數(shù)據(jù)量很有限。假設將每次A/D 轉換的數(shù)據(jù)直接存儲,每個數(shù)據(jù)都要占用2 個字節(jié),理想狀態(tài)下也只能存儲184個數(shù)據(jù); 假設需要存儲100個A/D 轉換的數(shù)據(jù),就要占用200個字節(jié)的單元,這樣的存儲方式并未將單片機的存儲空間充分利用,同時,如果將A/D 轉換后的數(shù)據(jù)通過串口直接上傳,串口就要向上傳送200 幀的數(shù)據(jù),有效傳輸速率比較低,沒有充分利用數(shù)據(jù)幀中的數(shù)據(jù)位。為此,本文提出如下方法將A/D 轉換后的數(shù)據(jù)先進行處理后再存儲或上傳。
  1 程序設計思路
  以10 位的A/D 轉換為例,可以將A/D 轉換的結果暫存在a[size] 中,然后把數(shù)組a 中的數(shù)據(jù)一位一位地取出,把低8 位和高8 位拆開分別存放,低8 位存放在數(shù)組b 中,高8 位存放在數(shù)組c 中,由于高8 位的數(shù)據(jù)中只有2 位是有效數(shù)據(jù),我們可以把有效數(shù)據(jù)取出組合成一個新的數(shù)據(jù)存放,當上傳數(shù)據(jù)后再用相反的方法解碼,把數(shù)據(jù)恢復到原先的狀態(tài)。這樣對于10 位的A/D 轉換來說可以節(jié)省3/8 的空間,需要向上位機傳送的數(shù)據(jù)也會比較少,數(shù)據(jù)傳輸時間僅為原來的5/8。
  2 采用C 語言編寫的程序
  本文采用PIC16F877單片機進行試驗。其中定義i、h、j、n、m 為int8,a[size] 為int16 的數(shù)組,用于暫存A/D 轉換的結果; b[number]、c[number]、d[number] 是int8 的數(shù)組。程序原文如下:

     

  程序首先利用一個for 循環(huán)將A/D 轉換后的數(shù)據(jù)拆開,將低8 位存放在數(shù)組b 中,高2 位暫時存放在數(shù)組c 中。由于數(shù)組c 中的8 位二進制數(shù)據(jù)都是僅有低2 位是有效數(shù)據(jù),所以第二個for 循環(huán)將c[i]、c[i+1]、c[i+2]、c[i+3]中的2 位有效數(shù)據(jù)取出,按照由低到高的順序重新組合成一個8 位的二進制數(shù),放入數(shù)組d,構成一個新的數(shù)組。這樣A/D 轉換結果由原來用數(shù)組a 表示變成了由數(shù)組b 表示低8 位、數(shù)組d 表示高2 位的狀態(tài)。
  程序中的h、j、n、m 用于記錄最后轉換的數(shù)據(jù)存儲在數(shù)組的位置,在下一次轉換的時候,數(shù)據(jù)可以接在上一次的數(shù)據(jù)后面,n 和j 在主程序中cONvert ( ) 被調用之前首先被賦值為0。
  3 結論
  根據(jù)以上程序,我們可以按照類似的方法把12位的A/D 轉化結果進行組合,將12 位的A/D 轉換結果拆成低8 位和高4 位,再將2 個高4 位重新組合成一個8 位的二進制數(shù)存儲,這樣對于12 位的A/D 轉化結果可以節(jié)省1/4 存儲空間,縮短1/4 傳輸時間。
  該程序的執(zhí)行時間僅為990us,相對于數(shù)據(jù)的傳輸時間是很小的。在單片機空間小的情況下,以程序的執(zhí)行時間來換取單片機的存儲空間是值得的。同時又能有效地縮短數(shù)據(jù)的上傳時間,提高有效數(shù)據(jù)的傳輸速率。但是在數(shù)據(jù)量較少的時候,比如只有1 個A/D 轉換的數(shù)據(jù),這樣做反而會耗費時間、降低效率。

來源:電子工程網(wǎng)
本文地址:http://m.qingdxww.cn/thread-86411-1-1.html     【打印本頁】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據(jù)著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 無線充電基礎知識及應用培訓教程
  • Chiptorials——如何使用ATECC608 TrustFLEX實現(xiàn)公鑰輪換
  • Chiptorials ——使用ATECC608 TrustFLEX實現(xiàn)基本非對稱身份驗證
  • Chiptorials ——如何將CryptoAuthLib庫用于Microchip安全身份驗證IC
  • 貿(mào)澤電子(Mouser)專區(qū)

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产美女动态免费视频 | 黄色在线视频播放 | 国产精品1区2区3区 国产精品1区2区 | 91免费版视频 | 免费高清不卡毛片在线看 | 成人国产一区二区三区 | 色五婷婷 | 久草免费精品视频 | 凹凸世界第4季完整免费 | 欧美日韩乱妇高清免费 | 久久青青草原精品国产麻豆 | 精品卡一卡卡2卡3网站 | 视频一区二区三区在线观看 | 天天插天天摸 | 欧美在线视频导航 | 四虎影视久久久免费 | 午夜视频在线观看一区二区 | 手机看片1204国内基地在线 | 青青草原91 | 毛片官网 | 最新亚洲人成网站在线影院 | 极品国产一区二区三区 | 国产卡一卡二卡3卡乱码免费 | 一级毛片一级黄片 | 97国产品香蕉在线观看 | 九九热精品视频在线观看 | 亚洲码在线中文在线观看 | 五月婷婷伊人 | 青青亚洲| 国产高清大尺度一区二区不卡 | 亚洲精品毛片久久久久久久 | 99在线观看视频 | 手机成人免费视频 | 亚洲社区在线观看 | 欧美日韩高清观看一区二区 | 美日韩一区二区 | 亚洲成人在线网站 | 成人精品国产亚洲欧洲 | 国产黄影院 | 日本中文字幕不卡 | 久草视频中文在线 |