《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于STC12C5A60S2單片機的測障系統設計
基于STC12C5A60S2單片機的測障系統設計
來源:微型機與應用2013年第12期
周 鵬
(華僑大學 信息學院, 福建 廈門361021)
摘要: 為了提高移動機器人的定位能力,提出了一種測障系統。硬件電路以STC12C5A60S2單片機為主控核心,外圍電路主要由超聲波測距、電子羅盤測方位、數字測溫和液晶顯示電路組成。測距由超聲波渡越時間法實現,利用所測溫度實時修正參數,提高了測距精度。方位由電子羅盤采集并以數字量輸出,簡化了電路。系統軟件是一個微內核、多任務的實時系統,將μC/OS-II嵌入單片機,多參數采集程序運行之上,彌補了前后臺系統處理多參數實時性差的不足。實際運行表明,系統具有測試精度高、實時好和擴展性好等優點。
Abstract:
Key words :

摘  要: 為了提高移動機器人的定位能力,提出了一種測障系統。硬件電路以STC12C5A60S2單片機為主控核心,外圍電路主要由超聲波測距、電子羅盤測方位、數字測溫和液晶顯示電路組成。測距由超聲波渡越時間法實現,利用所測溫度實時修正參數,提高了測距精度。方位由電子羅盤采集并以數字量輸出,簡化了電路。系統軟件是一個微內核、多任務的實時系統,將μC/OS-II嵌入單片機,多參數采集程序運行之上,彌補了前后臺系統處理多參數實時性差的不足。實際運行表明,系統具有測試精度高、實時好和擴展性好等優點。
關鍵詞: 測障系統; μC/OS-II;多任務;單片機

     測障系統由測距和測方位等功能組成,它是一個多參數、多功能采集系統,而基于過程處理的前后臺系統已很難在實時性和可靠性上滿足要求。隨著技術的進步,一些8位及以上微控制器已能嵌入實時操作系統(RTOS),應用程序運行之上,兩者相互協作,組成一個多任務、多功能、可裁剪的測控系統,有效地克服了傳統設計方案的不足。
    μC/OS-II是嵌入式實時操作系統,它具有的微內核、多任務、實時性和穩定可靠等特點使其特別適用于構建基于微處理器或單片機(這類處理器對存儲空間要求極其苛刻)的測控系統,其被成功應用于航天工程、生命科學、消費類電子產品等領域就是很好的例證[1]。
  STC12C5A60S2單片機是具有8051內核的增強型單片機,無需外擴數據存儲器和程序存儲器就能很好地運行裁剪的μC/OS-II系統。本文將?滋C/OS-II移植進STC12C5A60S2單片機,設計了基于單片機的多參數、多功能測障系統。
1 系統方案和主要電路  
 系統硬件主要由STC12C5A60S2單片機、超聲波電路、數字溫度傳感器DS18B20、時鐘芯片DS1302、液晶顯示器LCD12864(ST7920)組成,硬件框圖如圖1所示。

 STC12C5A60S2單片機運行μC/OS-II和應用程序,是測控系統的核心。單片機內置60 KB Flash程序存儲器、集成1 280 B數據存儲器和1 KB數據Flash存儲器[1]。 這些硬件配置使其能構成基于μC/OS-II的多參數、多功能的實時測控系統。超聲波電路實現測距;電子羅盤電路實現測方位;數字溫度傳感器測試溫度,用于測距參數的修正;時鐘芯片輸出時間;液晶顯示器實時顯示距離、方位、溫度等參數。
1.1 超聲波電路
    超聲波電路是利用超聲脈沖回波渡越時間法來實現測距,根據系統發射超聲波與接收反射波的時間差,結合修正后的波速計算出與障礙物的距離[2]。測距公式如下:
    S=vt/2             (1)
    v=331.5+0.6Δ  (2)
其中,S為與障礙物的距離,單位為m;v為帶溫度補償的超聲波傳播速度,單位為m/s;t為超聲波發射與接收到反射波時的時間差,單位為s;331.5是0℃時超聲波在空氣中的傳播速度, 單位為m/s;Δ為實測溫度,由測溫電路測得,單位為℃。
    超聲波電路由超聲波發射電路和超聲波接收電路組成,選用壓電式超聲波傳感器(型號TCT40-16T/R,中心頻率40.0±1.0 kHz)。
    超聲波發射電路由555定時器、CD4069、TCT40-16T發射器等組成,如圖2所示。它是利用發射器的逆壓電效應,將高頻電振動轉換成機械振動,產生超聲波發射出去的電路。電路中,當單片機控制引腳P1.1為低電平時,555定時器產生中心頻率40 kHz的高頻信號,由引腳3輸出至CD4069,CD4069將其整形后驅動發射器發射超聲波。

    超聲波接收電路由TCT40-16R接收器和紅外線檢波芯片CX20106A等組成,如圖3所示。它是利用接收器的壓電效應,將接收的超聲振動轉換成電信號,實現微弱反射回波的放大、濾波、檢波、整形輸出的電路[3]。電路中,反射波由引腳1輸入,此信號被處理后由引腳7輸出低電平,此負跳變通過P1.2引入單片機,單片機以查詢的方式獲取該信號的變化(反射波)。


1.2 電子羅盤電路
    電子羅盤電路用于測試與障礙物的方位(角度和方向)。其工作原理是利用磁阻傳感器測試與地磁場的偏移關系從而獲取方位信息[4]。
    電子羅盤電路由電源電路和HMC5883L集成模塊組成。HMC5883L內置磁阻傳感器、12位ADC、放大器、I2C數字接口、測量精度達到1°~2°[5]。電子羅盤電路與單片機接口如圖4所示。

1.3 數字測溫/時鐘電路

 


    數字測溫電路由數字溫度傳感器DS18B20組成。它具有以下特點[6]: (1)測溫范圍為-55℃~+125℃, 最高12 bit分辨率,精度可達±0.5℃;(2)可通過編程的方式實現9 bit~12 bit的數字溫度直讀; (3)可設置超限溫度報警,并有搜索命令識別報警條件;(4)單總線接口,僅需一條輸入/輸出線(DQ)就能與單片機(P1.0)通信。DS18B20數字測溫電路如圖5所示。

    時鐘電路由時鐘芯片DS1302組成。它是一種高性能、低功耗、采用三線接口的實時時鐘電路,可以對時間和日期進行計時[7]。DS1302時鐘電路如圖6所示。

2 系統軟件
    系統軟件是運行于?滋C/OS-II之上的程序,它將RTOS與應用程序有機融合在一起。RTOS負責任務管理與調度、任務間同步和通信等功能;應用程序實現具體功能,如測距、測方位和參數顯示等。
2.1 μC/OS_II移植
  μC/OS-II必須裁剪才能在STC12C5A60S2單片機中正常運行,主要涉及4個文件[1]: 處理器相關文件(OS_CPU_C.C、OS_CPU.H)、 配置文件(OS_CFG.H)、 匯編文件(OS_CPU_A.ASM)、啟動文件(STARTUP.A5)。
2.2 應用程序組成
 程序流程框圖如圖7所示。主文件由系統和應用程序初始化功能函數、任務1和任務2的功能函數、時鐘中斷函數UserTickTimer()等組成。

2.2.1 系統和應用程序初始化主要功能函數
    (1) OSInit()
    初始化操作系統。
    (2) InitHardware()/InitLcdBase()/ Init DS1302 ()/Init
Hmc5883()
 初始化定時器T0/T1:方式1,T0定時50 ms中斷一次,T1為超聲波計數,初值為0。
 初始化液晶顯示器LCD12864、數字時鐘芯片DS1302和電子羅盤芯片HMC5883。
 (3) OSTaskCreate()
 OSTaskCreate(Task1,(void*)0,&Task1Stk[0],1);
 OSTaskCreate(Task2,(void*)0,&Task2Stk[0],2);
 創建Task1和Task2兩個任務,級別為1和2,并分配堆棧。
 (4) myMbox=OSMboxCreate((void*)1);
 創建消息郵箱并賦初值,作為1 s到的時間標識。
 (5) OSStart()
 啟動多任務。
2.2.2 任務1和任務2的功能函數
 (1) 任務1的功能函數
 ① Hmc5883Process()/DisplayGoniometer()
 測方位并用數字/指針顯示,每1 s刷新一次。
 ② OSTimeDly(20)
 任務1被掛起20個時鐘節拍,讓出CPU資源。
    (2) 任務2的功能函數
    ① OSMboxPend(myMbox,0,&err)
    當接收到系統每隔1 s發過來的消息時,執行以下函數,否則等待。
    ② Get1302Data()/Display1302DigitalClock()  
    讀取DS1302的值并顯示時間。
    ③ Ds18b20DataToString()/DisplayDs18b20Tempe()
    讀取DS18b20溫度值并轉換為相應格式,顯示溫度值。
    ④ UltraShowDistance()
    顯示基于超聲回波渡越時間波測試的距離值。
    ⑤ OSTimeDly(5)
    任務2被掛起5個時鐘節拍,讓出CPU資源。
3 實驗
    基于單片機的測障系統實際運行結果如圖8所示。

    圖8(a)~(d)中,第1行為交替顯示時間和日期信息,日期格式為年/月/日;數字時鐘格式為小時:分鐘:秒。初始時間和日期可通過程序設定。
    第2行:“E:XXX.X°” 為方位信息,即與以東為參考點的夾角(角度為0時指向東),單位為度(°)。指針的指向與角度一致。
    第3行:“XXX.XCM”為實測的與障礙物的距離,單位為cm,測試范圍<600 cm。
    第4行:“±XX.XX℃”為實測溫度,單位為攝氏度(℃)。
    系統硬件以增強型單片機為測控核心,外圍電路采用模塊化設計,整個電路穩定、可靠。系統軟件設計為基于嵌入式實時操作系統的多任務系統。實際運行表明,系統測試精度高,功能多,實時性好,可擴展性好,為深入研究機器人定位系統奠定了基礎。
參考文獻
[1] 陳桂友. 增強型8051單片機實用開發技術[M].北京:北京航空航天大學出版社,2010.
[2] 張根寶,李秀平,龐蘇娟. 基于ARM Cortex-M3 便攜式智能超聲波液位計[J].儀表技術與傳感器,2012(1):20-31.
[3] 楊發權,陳勝權. 基于M50462和CX20106A芯片的雙工紅外線通信系統[J].佛山科學技術學院學報(自然科學版),2008,26(5):21-24.
[4] 郭檢楠.基于磁阻芯片和MSP430單片機的電子羅盤設計[J].信息與電子工程,2010,8(1):12-14.
[5] 胡寧博,李劍,趙櫸云.基于HMC5883的電子羅盤設計[J].傳感器世界,2011(6):35-38.
[6] 孫明利,鮑健,張爍. 單總線技術及DS18B20的溫度測量實現[J].大氣與環境光學學報,2010,5(4):322-326.
[7] 黃明強. DS1302在單片機系統中的應用.保定師范專科學校學報[J].2004,17(2):30-33.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲精品欧美| 宅男噜噜噜66国产日韩在线观看| 欧美人交a欧美精品| 午夜欧美精品久久久久久久| 一本色道久久综合狠狠躁篇怎么玩| 欧美在线观看视频在线| 亚洲美女电影在线| 亚洲国产美女| 亚洲第一狼人社区| 欧美日韩亚洲视频| 欧美精品午夜视频| 欧美精品在线一区二区| 欧美xart系列高清| 欧美成年网站| 欧美不卡一卡二卡免费版| 麻豆精品在线视频| 巨胸喷奶水www久久久免费动漫| 久久精品国产99精品国产亚洲性色 | 国产最新精品精品你懂的| 国产精品视频免费一区| 国产精品人人爽人人做我的可爱| 欧美日韩免费一区| 欧美日韩视频第一区| 欧美日韩亚洲一区三区| 欧美性片在线观看| 国产精品免费福利| 国产色视频一区| 国际精品欧美精品| 樱桃成人精品视频在线播放| 在线精品视频一区二区三四| **性色生活片久久毛片| 在线免费一区三区| 日韩视频一区二区三区| 一本色道久久99精品综合 | 久久久噜噜噜久久| 老司机亚洲精品| 欧美岛国在线观看| 欧美日韩亚洲一区二区三区在线观看| 欧美日在线观看| 国产日韩欧美不卡| 伊人久久综合97精品| 最新国产成人在线观看| 一区二区高清视频| 午夜精品剧场| 亚洲青涩在线| 亚洲一区不卡| 久久免费观看视频| 欧美日韩亚洲一区二区三区在线| 国产麻豆91精品| 亚洲观看高清完整版在线观看| 亚洲免费精彩视频| 香蕉久久夜色精品国产使用方法| 久久精品亚洲一区二区| 亚洲美女免费视频| 香蕉久久夜色精品| 农夫在线精品视频免费观看| 欧美午夜在线视频| 国内外成人免费激情在线视频| 亚洲精品综合精品自拍| 亚洲欧美国产精品桃花| 亚洲日本va午夜在线电影| 亚洲影音一区| 美女主播一区| 国产精品久久久久9999| 伊人久久亚洲影院| 亚洲一区影院| 亚洲精品九九| 欧美在线亚洲一区| 欧美激情一区二区三级高清视频| 国产精品99一区| 国产一区二区你懂的| 国产精品v日韩精品| 国内精品久久久久影院 日本资源 国内精品久久久久伊人av | 欧美中文字幕在线| 免费亚洲一区二区| 欧美视频中文字幕| 国产三级精品在线不卡| 国语自产精品视频在线看8查询8| 玉米视频成人免费看| 日韩视频中文字幕| 欧美一级视频| 99视频在线精品国自产拍免费观看| 亚洲自啪免费| 噜噜噜躁狠狠躁狠狠精品视频 | 欧美色中文字幕| 国产主播一区二区三区四区| 国产精品乱人伦一区二区| 国产综合色产在线精品| 日韩亚洲欧美一区| 亚洲电影专区| 亚洲一区二区三区在线视频| 久久久久久尹人网香蕉| 欧美日韩成人在线| 精品av久久707| 亚洲一区日本| 99re6热只有精品免费观看| 久久成人免费| 欧美三区美女| 怡红院av一区二区三区| 亚洲一区欧美二区| 一区二区激情小说| 久久免费的精品国产v∧| 国产精品高潮视频| 亚洲电影在线播放| 亚洲综合三区| 亚洲免费在线视频| 欧美美女bb生活片| 精久久久久久| 在线亚洲+欧美+日本专区| 亚洲国产高清在线观看视频| 欧美伊人久久久久久久久影院 | 亚洲一级在线| 欧美激情中文字幕在线| 国模吧视频一区| 亚洲午夜电影| 日韩网站在线| 欧美片第一页| 亚洲动漫精品| 久久riav二区三区| 欧美一区二区三区电影在线观看| 欧美日本三区| 亚洲黄色视屏| 亚洲欧洲另类国产综合| 久久久999精品| 欧美成年网站| 亚洲人成网站999久久久综合| 亚洲电影免费观看高清完整版在线 | 亚洲国内精品在线| 久久久久久尹人网香蕉| 国产日韩精品在线观看| 亚洲影视九九影院在线观看| 日韩亚洲一区二区| 欧美日韩亚洲综合一区| 亚洲人成小说网站色在线| 亚洲黄页视频免费观看| 久久久青草青青国产亚洲免观| 国产伦精品一区二区三区四区免费| 亚洲一区二区在线播放| 亚洲欧美另类在线| 欧美性事免费在线观看| 日韩视频永久免费| 午夜精品福利在线观看| 国产精品久久久久久久第一福利 | 亚洲人成网站精品片在线观看 | 亚洲欧美日本在线| 欧美一区二区观看视频| 国产欧美欧美| 欧美一区二区三区四区高清 | 欧美另类极品videosbest最新版本| 亚洲国产精品激情在线观看| 久久精品人人做人人综合| 美女日韩在线中文字幕| 在线观看三级视频欧美| 亚洲精品欧美日韩| 欧美精品一区在线播放| 亚洲国产成人一区| 亚洲免费成人| 欧美日韩亚洲综合一区| 亚洲一区二区三区精品在线观看 | 1000部国产精品成人观看| 亚洲人成人一区二区三区| 欧美福利专区| 亚洲伦理在线观看| 亚洲影院免费| 国产精品久久久久9999高清| 久久精品导航| 欧美大秀在线观看| 99在线精品观看| 欧美亚洲免费在线| 国模大胆一区二区三区| 亚洲美女黄色片| 国产精品电影在线观看| 亚洲女人天堂av| 久久久午夜电影| 亚洲欧洲日韩综合二区| 亚洲一区二区三区高清不卡| 国产乱码精品一区二区三| 久久精品欧美日韩| 欧美日韩大陆在线| 亚洲欧美不卡| 免费观看在线综合| 国产综合久久久久久| 亚洲天堂av在线免费| 国产一区二区电影在线观看| 亚洲国产欧美在线人成| 欧美日韩精品伦理作品在线免费观看| 亚洲性图久久| 女女同性女同一区二区三区91| 日韩一级精品视频在线观看| 欧美影院成人| 亚洲国产精品久久久久婷婷老年 | 一区二区三区视频观看| 久久精品99国产精品| 国产精品久久久久77777| 欧美一级精品大片| 欧美日本中文字幕| 欧美一区二区三区四区高清| 欧美日韩国产综合一区二区| 欧美一区二区三区免费观看视频| 欧美激情在线观看|