久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
STM32單片機PLC FX3U源碼以及關聯資料
[打印本頁]
作者:
yyhyyhyyh
時間:
2022-12-11 17:06
標題:
STM32單片機PLC FX3U源碼以及關聯資料
//crc校驗碼 從02后面一個字節開始累加到03,和的低8位再分成高4位和低4位,即03后面的兩個字節
//三菱格式碼 0 --30 1--31 2--32 3--33 4--34 5--35 6--36 7--37 8--38
// 9--39 A--41 B--42 C--43 D--44 E--45 F--46
三、寄存器說明
M0-M383 384點 一般用
M384-M511 128點 EEPROM 保持用
M512-M1535 1024點 電容保持用
M8000-M8255 256點 特殊用
S0-S9 10點 初始狀態 EEPROM保持性
S10-S127 118點 EEPROM保持性
S128-S999 872點 電容保持性
D0-D127 128點
D128-D255 128點 EEPROM保持性、
D256-D7999 7744點 電容保持性
D1000-D7999 文件寄存器
D8000-D8255 256點 16位特殊用 本程序對應D6000-D6255
四、模擬量采集
D7899到 D7999存放的是 模擬量采集 數字量---高溫度值----低溫度值-----電流值
單片機源程序如下:
/********************************************************************************
* 文件名 :main.c
* 描述 :PLC應用平臺固件程序
* DI DO AI AO RTC 固件 監控
* 實驗平臺:螺桿機通用平臺
* 硬件連接: 1、停電處理 停電時不做主循環 梯形圖停止運轉 IO停止輸出
2、正常運轉模式
* 作者 : 王璽聯
**********************************************************************************/
#include "PLC_Config.h"
#include "bsp.h"
#include "port.h"
AppManageFlag MainAppManageFlag;
//**************************************************************************************************
// [名稱] u8 ExtendBoardHaveOrNot(void)
// [功能] 擴展板有無檢測
// [作者]
// [日期] 2015年08月11號
// [版本]
//**************************************************************************************************
u8 ExtendBoardHaveOrNot(void)
{
if (GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_5) == 1)
{
//為高說明擴展板存在
d[ SYS_EXTEND_BORD_HAVE_ADR ]= EXTEND_BORD_HAVE;
return EXTEND_BORD_HAVE ;
}
else
{
//為低電平 說明擴展板不存在
d[ SYS_EXTEND_BORD_HAVE_ADR ]=EXTEND_BORD_HAVE_NO;
return EXTEND_BORD_HAVE_NO;
}
}
//**************************************************************************************************
// [名稱] void AppMain(void)
// [功能] 正常運行處理 電源正常 梯形圖運轉 非修正模式
// [作者]
// [日期]
// [版本]
//**************************************************************************************************
void AppMain(void)
{
RegisterXInRefresh();
if(MainAppManageFlag.AdConvert ==TRUE)
{
MainAppManageFlag.AdConvert = FALSE;
AdConvertManage();
}
if(MainAppManageFlag.RtcEeprom ==TRUE)
{
MainAppManageFlag.RtcEeprom = FALSE;
RtcTimeEepromWrtReadManage();
}
if(MainAppManageFlag.DaOut ==TRUE)
{
MainAppManageFlag.DaOut = FALSE;
DaOutManage();
}
if(MainAppManageFlag.Modbus ==TRUE)
{
MainAppManageFlag.Modbus =FALSE;
if (RS485_SLAVE_MODE ==d[RS_485_MASTER_SLAVE_SWICH])
{
ModbusManage();
}
else if(RS485_MASTER_MODE ==d[RS_485_MASTER_SLAVE_SWICH])
{
TopUnitContrlManage();
}
else
{
;//去執行三菱通信協議
}
}
if(MainAppManageFlag.TopOsWrdBit == TRUE)
{
MainAppManageFlag.TopOsWrdBit =FALSE;
TopWrdBitConvertManage();
}
if(MainAppManageFlag.TopOsPhyPropBit == TRUE)
{
MainAppManageFlag.TopOsPhyPropBit =FALSE;
TopPhysiPropManage();
}
if(LadRun()==LAD_DOWN_LOAD_OVER)
{
SetLedSts(PLC_LAD_RUN );
}
else
{
SetLedSts(PLC_IDLE );
}
RegisterYOutRefresh();
}
//**************************************************************************************************
// [名稱] int main(void)
// [功能] 主程序處理
// [作者]
// [日期] 2014年10月9號
// [版本]
//**************************************************************************************************
unsigned char MainLoop =100;
extern unsigned char volatile PlcManageSts;
int main(void)
{
//禁止所有中斷
DisableInterrupts();
CompileLocatToDataSectionClr();
CompileDataClr();
//NVIC configuration
NVIC_Configuration();
TIM2_Initial();
//GPIO 輸入輸出設置
GPIO_Configuration();
SysTickConfig();
I2C_EE_Init() ;
Usart1Init();
Usart2MultiComInit();
Usart3Init();
FuncInit();
PowerOnManage();
SetSubCircutStartOn();
ExtendBoardHaveOrNot();
E2PromFirstUseInitManage();
ReadCorectParamDataFromE2prom();
PowerOnReadRtcCopyToLocalClock();
IWDGInit();
//開啟所有中斷
EnableInterrupts();
while (1)
{
IWDG_ReloadCounter();
switch(MainLoop)
{
case 100:
//在進入真正的梯形圖循環之前將 DI AI 數據采集到內存
RegXReset();
RegisterXInRefresh();
if(AD_MANAGE_FINSH ==AdConvertManage( ))
{
MainLoop =0;
}
else
{
MainLoop =100;
}
break;
//掉電檢測
case 0:
if(PowerOffManage() ==TRUE)
{
MainLoop =4;
}
else
{
MainLoop =1;
}
break;
//編程PROG SW檢測
case 1:
PlcProgRunCheck();
if(LAD_RUN == PlcManageSts)
{
MainLoop =6;
}
else if(LAD_PROG == PlcManageSts)
{
MainLoop =5;
}
else if(LAD_RUN_TO_PROG == PlcManageSts)
{
MainLoop =50;
}
else if(LAD_PROG_TO_RUN == PlcManageSts)
{
MainLoop =60;
}
break;
//掉電 模式
//檢測是否來電,來電后進行主程序循環
case 4:
if(TRUE ==PowerOnCheckManage())
{
MainLoop =0;
}
else
{
MainLoop =4;
}
break;
case 50:
PlcStopInit();
MainLoop =5;
break;
//編程模式
case 5:
LadProgManage();
SetLedSts(PLC_LAD_PORG );
CorectParamDataPrintManage( );
MainLoop =0;
break;
case 60:
//等待復位
DisableInterrupts();
PlcRunInit();
PlcProgToRunReadCrctParamInit();
GenerateSystemReset();
EnableInterrupts();
break;
//運行模式
case 6:
AppMain();
MainLoop =0;
break;
default:
break;
}
}
}
復制代碼
51hei.png
(9.3 KB, 下載次數: 56)
下載附件
2022-12-12 03:01 上傳
所有資料51hei附件下載:
FX3U源碼以及關聯資料20180827.7z
(1.95 MB, 下載次數: 136)
2022-12-12 03:04 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
jokefjg
時間:
2022-12-17 12:31
有沒有F407的
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
天天躁天天操
|
男女免费观看在线爽爽爽视频
|
av电影一区二区
|
欧美一区二区三区小说
|
亚洲欧美综合精品久久成人
|
国产91在线 | 中日
|
国产特级毛片
|
久草久草久草
|
亚洲a级
|
成人高清在线视频
|
中文字幕在线观看国产
|
国产韩国精品一区二区三区
|
欧美一级片在线观看
|
成人精品网
|
国产精品不卡一区
|
亚洲精品一区二区另类图片
|
美女视频一区
|
亚洲一区精品在线
|
亚洲天堂av在线
|
国产精品久久精品
|
美日韩中文字幕
|
中文字幕在线观看精品
|
夜夜爽99久久国产综合精品女不卡
|
懂色一区二区三区免费观看
|
91视频在线
|
99精品免费
|
日本精品视频在线观看
|
日本成人区
|
成人久久久
|
久久久国产精品网站
|
a黄视频
|
天天操天天干天天曰
|
国产一区二区激情视频
|
色资源站
|
天天搞天天搞
|
国产高清久久
|
在线中文字幕av
|
国产精品成人一区二区三区吃奶
|
国产精品一区视频
|
欧洲一区二区三区
|
综合网在线
|