完善modbus功能

This commit is contained in:
zcy 2023-01-22 00:01:26 +08:00
parent 4be1252744
commit c73e26c0bf
4 changed files with 13 additions and 13 deletions

View File

@ -79,6 +79,7 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental> <LinkIncremental>true</LinkIncremental>
<IncludePath>D:\project\c++\nim_duilib\examples\libmodbus\;$(IncludePath)</IncludePath> <IncludePath>D:\project\c++\nim_duilib\examples\libmodbus\;$(IncludePath)</IncludePath>
<PublicIncludeDirectories>D:\project\c++\nim_duilib\examples\libmodbus\src;$(PublicIncludeDirectories)</PublicIncludeDirectories>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental> <LinkIncremental>false</LinkIncremental>

View File

@ -561,7 +561,7 @@ LRESULT BasicForm::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
if (mModbusMasterForm.find(p->name) == mModbusMasterForm.end()) { if (mModbusMasterForm.find(p->name) == mModbusMasterForm.end()) {
auto form = new ModbusMasterForm(this, p->name, p->baurate, p->port_num, auto form = new ModbusMasterForm(this, p->name, p->baurate, p->port_num,
p->data_bits, p->stop_bits, p->verify, p->flow_control); p->data_bits, p->stop_bits, p->verify, p->flow_control);
form->SetChildLayoutXML(L"basic/uart_form.xml"); form->SetChildLayoutXML(L"basic/modbus_master_form.xml");
form->SetName(p->name); form->SetName(p->name);
form->SetVisible(false); form->SetVisible(false);
mModbusMasterForm[p->name] = form; mModbusMasterForm[p->name] = form;

View File

@ -4,8 +4,7 @@
#include "global.h" #include "global.h"
// 在qml界面中显示lua层处理过的数据 // 在qml界面中显示lua层处理过的数据
int LuaShowData(lua_State* vm) int LuaShowData(lua_State* vm) {
{
// 获取函数参数:从栈底取一个参数 // 获取函数参数:从栈底取一个参数
const char* k = lua_tostring(vm, 1); const char* k = lua_tostring(vm, 1);
if (nullptr != k) { if (nullptr != k) {
@ -21,15 +20,13 @@ int LuaShowData(lua_State* vm)
} }
// //
int LuaWriteUart(lua_State* vm) int LuaWriteUart(lua_State* vm) {
{
// 获取函数参数:从栈底取一个参数 // 获取函数参数:从栈底取一个参数
const char* k = lua_tostring(vm, 1); const char* k = lua_tostring(vm, 1);
if (nullptr != k) { if (nullptr != k) {
//todo qml显示添加 //todo qml显示添加
} }
//gGlobal.SendUartData(k);
//qDebug() << "send data " << QString(k);
return 0; return 0;
} }

View File

@ -1,6 +1,8 @@
#include "modbus_form.h" #include "modbus_form.h"
#include "lua_bind.h" #include "lua_bind.h"
#include "msgdef.h" #include "msgdef.h"
#include "modbus.h"
ModbusMasterForm::ModbusMasterForm(ui::Window* hwnd, std::wstring name, ModbusMasterForm::ModbusMasterForm(ui::Window* hwnd, std::wstring name,
uint32_t baurate, UINT portnum, uint32_t baurate, UINT portnum,
@ -67,7 +69,8 @@ ModbusMasterForm::~ModbusMasterForm() {
void ModbusMasterForm::Init() { void ModbusMasterForm::Init() {
ui::ChildBox::Init(); ui::ChildBox::Init();
/*
auto mRightSide = dynamic_cast<ui::Label*> (FindSubControl(L"uart_info_label")); auto mRightSide = dynamic_cast<ui::Label*> (FindSubControl(L"uart_info_label"));
wchar_t p[100] = { 0 }; wchar_t p[100] = { 0 };
wsprintf(p, L"串口号: %s 波特率%d 数据位: %d 停止位: %d ", wsprintf(p, L"串口号: %s 波特率%d 数据位: %d 停止位: %d ",
@ -75,10 +78,8 @@ void ModbusMasterForm::Init() {
m_data_bits, m_stop_bits); m_data_bits, m_stop_bits);
mRightSide->SetText(std::wstring(p)); mRightSide->SetText(std::wstring(p));
/*
mEditSend = dynamic_cast<ui::RichEdit*>(FindSubControl(L"uart_send_edit")); mEditSend = dynamic_cast<ui::RichEdit*>(FindSubControl(L"uart_send_edit"));
mEditRecv = dynamic_cast<ui::RichEdit*>(FindSubControl(L"uart_recv_eidt"));
mEditLua = dynamic_cast<ui::RichEdit*>(FindSubControl(L"lua_script"));
mEditLua->SetRich(true);
mEditLua->SetReturnMsgWantCtrl(true); mEditLua->SetReturnMsgWantCtrl(true);
mEditLua->SetText(string2wstring(mLuaScript)); mEditLua->SetText(string2wstring(mLuaScript));
@ -113,7 +114,7 @@ void ModbusMasterForm::Init() {
std::string lua = wstring2string(mEditLua->GetText()); std::string lua = wstring2string(mEditLua->GetText());
if (0 == this->mLua->UpdateScript(lua)) { if (0 == this->mLua->UpdateScript(lua)) {
this->mLuaScript = lua; this->mLuaScript = lua;
mLuaFileEdit = std::ofstream(UART_LUA_SCRIPT, std::ios::out | std::ios::trunc); mLuaFileEdit = std::ofstream(MODBUS_LUA_SCRIPT, std::ios::out | std::ios::trunc);
mLuaFileEdit.write(lua.c_str(), lua.size()); mLuaFileEdit.write(lua.c_str(), lua.size());
mLuaFileEdit.flush(); mLuaFileEdit.flush();
mLuaFileEdit.close(); mLuaFileEdit.close();
@ -135,7 +136,8 @@ void ModbusMasterForm::Init() {
WM_ADD_UART_CLOSE, (WPARAM)name, 0); WM_ADD_UART_CLOSE, (WPARAM)name, 0);
return true; return true;
}); });
}*/ }
*/
} }
void ModbusMasterForm::UpdateRecvEdit() void ModbusMasterForm::UpdateRecvEdit()