lua尝试调用方法“ sendGGA”(nil值)

时间:2019-12-04 21:48:44

标签: object lua

我只是在这里对为什么我的代码无法正常工作缺乏基本的了解。我对lua不太熟悉...我在两个lua文件中有三个具有以下样式的伪对象(设置,ntrip和menuController)。为了简洁起见,我只列出其中一个

local ntrip = {} 
function ntrip:new(o)
   local o = o or {}
   setmetatable(o, self)
   self.__index = self
   return o
end
function ntrip:sendGGA()
   -- some code, etc
end
return ntrip

在我的主要lua中,我有以下内容

local serialA = reserveSerial(SERIAL_PATH_1, SERIAL_PORT_1, CONFIG)
local currentSettings = settings:new(serialA)
local ntripClient = ntrip:new(currentSettings)
ntripClient:login()
local menuController = menuControl:new(serialA)

稍后会在主要

sched.sigRun('TIMER', 'two_min',
    function (event, arg)
        -- some code, etc
        ntripClient:sendGGA()
    end
)

基本上,我只是不了解为什么它不起作用。每当捕获到此信号时,代码就会因列出的错误而中断。我知道这与我将SerialA发送到ntrip和menuControl有关,因为两者都需要在该串行端口上进行交互。如果删除menuController = menuControl:new(serialA),ntripClient中的所有内容将继续按预期运行。任何帮助表示赞赏。

0 个答案:

没有答案