亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標題:
mpc5643l定時器捕捉測量頻率 系統(tǒng)初始化等源碼分享
[打印本頁]
作者:
xuejiqingtian
時間:
2018-7-5 21:23
標題:
mpc5643l定時器捕捉測量頻率 系統(tǒng)初始化等源碼分享
包括mpc5643l的工程代碼
0.png
(37.31 KB, 下載次數(shù): 37)
下載附件
2018-7-6 04:53 上傳
單片機源程序如下:
/*************************************************************************
【平 臺】MPC5643L
【編 寫】
【版 本】V1.0
【時 間】
【功 能】1.通過8PIN撥碼開關(guān)輸入閾值轉(zhuǎn)速值("BM_INPUT.h");
2.初始化系統(tǒng),包括看門狗、系統(tǒng)時鐘、外設(shè)時鐘、中斷初始化(MPC5643L_SysCtrl.h")
3.gpio輸出電平控制led,報警和停機"TASK_LED.h"
4.脈沖輸出功能"OPWM.h"
5,轉(zhuǎn)速輸入測頻率,計算轉(zhuǎn)速,比較大小"TIMER_ECT.h"
6,超速測試按鍵輸入函數(shù)Key_OVERSPEED.h
*************************************************************************/
/*******************頭文件******************/
#include "MPC5643L.h"
#include "MPC5643L_SysCtrl.h" //系統(tǒng)控制函數(shù)
#include "TASK_LED.h" //GPIO輸出
#include "Etimer_OutputPulseWidth.h" //脈沖輸出
#include "Key_OverspeedTest.h" //超速測試復(fù)位鍵掃描
#include "TIMER_ECT.h"
#include "FLEXCAN.h"
#include "frequecythershord_input.h" //撥碼開關(guān)輸入函數(shù)
#include "config_output.h" //GPIO輸出
/****************全局變量定義**************/
uint8_t compare(uint8_t num1,uint8_t num2)
{
if(num1 < (uint8_t)(num2/2))
{
// init_OUTPUT(7,0);
return 1;
}
else if(num1 > num2)
{
// init_OUTPUT(7,0);
return 0;
}
else
{
// init_OUTPUT(7,0);
return 2;
}
}
uint16_t main(void)
{
uint8_t Result; //撥碼開關(guān)輸入pin配置
float temp_bm; //頻率閾值定義
uint8_t Flag_HalfSpeedWSE; //半速不停機測試標志位
uint8_t Flag_HalfSpeedSE; //半速停機測試標志位
uint8_t Flag_OverSpeedWSE; //超速不停機測試標志位
uint8_t Flag_OverSpeedSE; //超速停機測試標志位
InitSysCtrl(); //初始化系統(tǒng)時鐘,中斷,看門狗,外設(shè)時鐘
init_OUTPUT(7,1);
// init_OUTPUT(7,0); //上電LED燈亮
init_OUTPUT(81,1); //LED_green正常
init_OUTPUT(73,1); //LED_red 超速報警
init_OUTPUT(2,0); //脈沖輸出,開始輸出低電平
init_OUTPUT(128,1); //out1
init_OUTPUT(125,1); //out2
init_OUTPUT(124,1); //csbh_bf_out
init_OUTPUT(121,1); //out3
init_OUTPUT(119,1); //out5
init_OUTPUT(117,1); //out6
Init_BM_COFIG(); //撥碼開關(guān)輸入配置
InitEtimer1_3();
INTC_InstallINTCInterruptHandler(ISRICEimer, Source_Etimer1_3, Priority);
Init_opweTimer0();
INTC_InstallINTCInterruptHandler(eTimer_OPWisr, Source_Etimer0_0, Priority);
INTC.CPR_PRC0.R = 0; //定義優(yōu)先級
InitCan1();
InitCan0();
INTC_InstallINTCInterruptHandler(RecieveMsg,Source_Flexcan,Priority); //開啟CAN_1接收中斷
ETIMER_1.CHANNEL[3].CCCTRL.B.ARM = 1; //開始捕捉
while(1)
{
float bj = 78;
InputCaptureChannel3_FREQHandler(); //轉(zhuǎn)速處理函數(shù)
temp_bm = threshold_value();
TransmitMsg();
/*頻率比較,控制柴油機及報警功能*/
temp_bm = threshold_value();
Result = compare(bj,temp_bm);
/*測試按鍵輸入功能*/
Skan_OverspeedPB1Key(); //掃描超速測試按鍵,進行超速測試
Flag_OverSpeedWSE = OverspeedSystemTest_WithStopEngi(); //超速測試不停機標志
Flag_OverSpeedSE = OverspeedSystemTest_EngineStopeed(); //超速停機測試標志
Flag_HalfSpeedWSE = HalfSpeedTest_WithoutStoppingEngineKeep(); //半速不停機測試標志
Flag_HalfSpeedSE = HalfSpeedTest_EngineStopeed();
// Skan_Key(); //掃描超速測試按鍵
// csfw_test(); //超速復(fù)位測試程序
// csbtj_test(); //超速不停機測試程序
// bsbtj_test(); //半速不停機測試程序
// bstj_test(); //半速停機測試程序
switch(Result)
{
case 1:
if(Flag_OverSpeedWSE) // self-checking:超速測試不停機
{
SwitchOverspeedOut_WithoutStoppingEngine(); //不停機測試程序
}
if(Flag_OverSpeedSE) // self-checking:超速測試停機
{
SwitchOverspeedOut_EngineStopeed(); //停機測試程序
}
PressAfterFaultTest_Reset(); //超速保護復(fù)位測試,停機報警復(fù)位函數(shù)
//復(fù)位故障檢測函
if((Flag_OverSpeedWSE | Flag_OverSpeedSE | Flag_HalfSpeedWSE |Flag_HalfSpeedSE) == 0) //無超速測試按鍵按下
{
SwitchOverspeedOut_EngineStopeed(); //停機測試程序
}
break;
case 0:
if(Flag_HalfSpeedWSE) //self-checking:測試不停機
{
SwitchOverspeedOut_WithoutStoppingEngine(); //不停機測試程序
// Inspection_WithStopEngi(); //不停機測試故障檢測函數(shù)
}
if(Flag_HalfSpeedSE) //self-checking:測試停機
{
SwitchOverspeedOut_EngineStopeed(); //停機測試程序
// Inspection_StopEngi(); //停機測試故障檢測函數(shù)
}
PressAfterFaultTest_Reset(); //超速保護復(fù)位測試,停機報警復(fù)位函數(shù)
if((Flag_OverSpeedWSE | Flag_OverSpeedSE | Flag_HalfSpeedWSE |Flag_HalfSpeedSE) == 0) //無超速測按鍵按下
{
SwitchOverspeedOut_EngineStopeed(); //停機測試程序
// Inspection_StopEngi(); //停機測試故障檢測函數(shù)
}
break; //停機測試程序
case 2:
SystemInWorking0rder(); //正常運行
break;
}
}
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
mpc5643l_test.zip
(275.48 KB, 下載次數(shù): 15)
2018-7-5 21:23 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1