掛式空調器用控制板的自動測試系統研究
遙控模擬
本文引用地址:http://www.cqxgywz.com/article/109230.htm現代空調控制板都具有遙控器功能,這是必不可少的,測試儀要測試空調控制板就必須給它發送模擬遙控器指令,以讓它執行開機、關機、制熱、制冷等動作。各種遙控器指令實際上是一串串按照一定協議被編碼的脈沖。一般這種協議是遙控器給空調控制板發送數據的專用協議。這種脈沖指令可由測試儀按照編程者的意愿依靠單片機里的定時器產生,其產生的信號具有波形整潔、規則、無毛刺的優點,非常適合模擬一些專用的低頻通信信號。
當由單片機的定時器模擬遙控器所發送的信號時,要求定時時間必須精確,其產生的脈沖寬度和協議所要求的誤差最好不要超過1ms,否則會導致信號模擬失效,從而讓電腦板接收不到正確的遙控指令,這種錯誤是非常隱秘且難以捕捉的,有時侯開發者可能會懷疑自己的程序有問題,尋覓半天,卻最終發現是由于自己的定時精度達不到設計的要求。
硬件實現
如圖6所示,模擬的遙控信號從與三極管Q2基極相連的電阻R8進入,從Q2集電極輸出,再直接連接到空調控制板遙控接收端即可。在這里,三極管Q2起到加強驅動能力的作用。

軟件編程
測試儀按照遙控協議發送出來的數據,本質上無非是一些用來表示二進制的 0和1 的周期恒定不變的脈沖信號。只不過這種信號具有人工預先約定好的固定的格式,從而使其具有了傳送二進制數據的能力。。
通信的雙方一旦 (本遙控發送實質上是一種單工通信) 獲知了通信協議的內容和二進制數據0和1 的固定格式的波形表示方法,即可通過軟件編程實現雙方的通信了。下面是一段按照以上格式的波形所寫的如何產生二進制數據1的C代碼,該代碼在51開發軟件WAVE環境下編寫:
#include
#define MS2 2000
#define MS9 9000
sbit RemoteSend = P1 ^ 0;
void InitTimer0(void);
void main(void)
{
InitTimer0();//調用初始化定時
器函數
while (1);
}
void InitTimer0(void)
{
TH0 = (65536 - MS2) / 256;//初
始化為2MS
TL0 = (65536 - MS2) % 256;
RemoteSend = 1;//先輸出2ms高
TMOD = 0X01;//TC0 初始化為
16位定時器
ET0 = 1; //TC0 溢出中斷使能
EA = 1; //全局中斷使能
TF0 = 0; //TC0 中斷標志清0
TR0 = 1; //TC0 啟動
}
void Timer0Service(void) interrupt
1 using 0 //中斷服務程序
{
TH0 = (65536 - MS9) / 256;//初
始化為2MS
TL0 = (65536 - MS9) % 256;
RemoteSend = 0;//輸出變低
}
結語
開發的功能自動測試議已經應用在了控制板的生產過程中,提高了檢測的效率,并實現了不同功能缺陷的分類匯總,為提高和改進控制板的產品質量提供了基礎。
參考文獻:
[1]劉全周,汪春華,張宏偉.基于LabVIEW和PXI的汽車數字儀表測控系統[J].電子產品世界,2008(02):114~116
[2]王典洪; 殷星; 劉成.分布式在線監測系統的設計與實現 [J].微計算機信息.2007(10): 128~130
[3]徐長軍,王峰,張西華.雙向可控硅的設計及應用[J].電子產品世界,2008(12):33~35
[4]鮮飛. 在線測試技術的現狀和發展[J].電子測試, 2008(09):50~56
[5] 姚立新,張武學,連軍莉. AOI系統在PCB中的應用[J].電子工業專用設備, 2004(05): 25~28
蜂鳴器相關文章:蜂鳴器原理
















評論