新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于VC的MV05芯片PWM功能測試軟件設計

基于VC的MV05芯片PWM功能測試軟件設計

作者: 時間:2012-08-30 來源:網絡 收藏

用戶自定義模式下數據包封裝函數代碼如下:

void CCommWizardDlg::OnButtonUsrMode()

{ UpdateData(TRUE); //數據更新

CString strtemp;

int s1[9]; //存放數據包數據的數組

unsigned char c1;

// 時鐘選擇

if(this->m_Check1) {s1[6]=0;s1[7]=0;}// 單時鐘

if(this->m_Check2) {s1[6]=0;s1[7]=1;}// 雙時鐘

if(this->m_Check3) {s1[6]=1;s1[7]=0;}// 四時鐘

if(this->m_Check4) {s1[6]=1;s1[7]=1;}// 12 時鐘

//占空比設置

if(this->m_Check9) {s1[3]=0;s1[4]=0;s1[5]=0;}// 1:1

if(this->m_Check10) {s1[3]=0;s1[4]=0;s1[5]=1;}// 1:2

if(this->m_Check11) {s1[3]=0;s1[4]=1;s1[5]=0;}//1:3

if(this->m_Check12) {s1[3]=0;s1[4]=1;s1[5]=1;}//1:4

if(this->m_Check13) {s1[3]=1;s1[4]=0;s1[5]=0;}//1:5

if(this->m_Check14) {s1[3]=1;s1[4]=0;s1[5]=1;}// 1:6

if(this->m_Check15) {s1[3]=1;s1[4]=1;s1[5]=0;}// 1:7

if(this->m_Check16) {s1[3]=1;s1[4]=1;s1[5]=1;}// 1:8

// -ADC 控制

if(this->m_Check5) {s1[1]=0;s1[2]=0;}// 0 主0 控

if(this->m_Check6) {s1[1]=0;s1[2]=1;}// 0 主1 控

if(this->m_Check7) {s1[1]=1;s1[2]=0;}// 1 主0 控

if(this->m_Check8) {s1[1]=1;s1[2]=1;}// 1 主1 控

s1[0]=0; //用戶自定義模式選擇

c1=s1[0]*128+s1[1]*64+s1[2]*32+s1[3]*16+s1[4]*8+s1[5]*4+s1[6]*2+s1[7]*1 ;

strtemp.Format(%02X ,c1); //10 進制轉化為16 進制

m_strSendString=(CString)48 59 4C + strtemp ;

}

5 下位機軟件

下位機軟件包括串口通信模塊和 功能配置模塊。串口部分使用中斷方式接收數據, 當接收到上位機的命令執(zhí)行中斷服務程序轉到PWM 功能配置模塊,PWM 功能模塊對接收到的 數據進行按位解析,根據通信協(xié)議將不同的數據位送到不同的寄存器。該方法對其它測試系 統(tǒng)具有借鑒意義。

6 結束語

本文介紹了上海大學微電子研究與開發(fā)中心研發(fā)的一款汽車發(fā)動機冷卻風扇控制, 給出一種使用VC++6.0編寫上位機軟件對其進行測試的方法。本文的創(chuàng)新點是構造數據封裝 函數,將用戶要測試的項目一次發(fā)送給下位機,下位機按位解析數據包,將相應數據位送入 相應寄存器。通過調試證明該方法是完全可行的,提高了測試效率,測試結果達到了預期設 計指標,功能完全正確。

pwm相關文章:pwm原理



上一頁 1 2 3 下一頁

關鍵詞: PWM MV 05 芯片

評論


相關推薦

技術專區(qū)

關閉