8266之lua测试

init.lua

initLed = 0
wifiPin = 4
gpio.mode(wifiPin,gpio.OUTPUT)
print("------ 8266 app start ------")
tmr.alarm(1,500,1,function()
  if initLed%2 == 0 then
      gpio.write(wifiPin, gpio.HIGH)
  else
      gpio.write(wifiPin, gpio.LOW)
  end
  initLed = initLed + 1
end)

dofile("wifi.lua")
wifi.lua
cnt = 0
red = 6
gpio.mode(red, gpio.OUTPUT)
tmr.alarm(2,1000,1,function()
    print("wifi test:"..cnt)
    cnt = cnt + 1
    if(cnt%2==0) then
        gpio.write(red,gpio.HIGH)
    else
        gpio.write(red,gpio.LOW)
    end
end)

tmr.register(3,1000,1,function()
 print("---")
end)
tmr.start(3)
test.lua  --------- 这个脚本就会导致不能下载,所以test.lua不能在启动时执行,只能作为临时测试
cnt = 0
red = 7
gpio.mode(red, gpio.OUTPUT)
while 1 do
    tmr.delay(10000)
    print("my test:"..cnt)
    cnt = cnt + 1
    if(cnt%2==0) then
        gpio.write(red,gpio.HIGH)
    else
        gpio.write(red,gpio.LOW)
    end
end

注意:

1. 使用esplorer软件,保存就会下载到8266中编译运行,init.lua是必须的,启动就会开始执行

2. 虽然程序是在两个文件中,但是其变量名以及函数名是不能重名的,否则将出现问题

3. 尽量不要用while(true), 否则会出现无法下载lua程序,这时候就只能重新刷固件了

4. 可以单独创建一个test.lua文件,进行相关代码测试,不要再init.lua执行调用到。这样系统死机后重启就不会执行test.lua了

5. 时间间隔不能太短,太短了系统就相应不过来,出现无法下载的情况


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Lua实现C测试框架是指在Lua语言中编写代码,来测试C语言的功能和性能。下面是一个简单的示例,用于说明如何使用Lua实现C测试框架。 首先,我们需要准备好需要测试的C函数。比如,我们有一个C函数`sum`来计算两个整数的和。 ```c // sum.c int sum(int a, int b) { return a + b; } ``` 接下来,我们可以使用Lua编写一个测试框架,来测试`sum`函数的功能。 ```lua -- test_sum.lua local sum = require("sum") local function test_sum() -- 测试两个正数的和 assert(sum(3, 5) == 8, "测试失败:3 + 5 不等于 8") -- 测试一个正数和一个负数的和 assert(sum(-2, 5) == 3, "测试失败:-2 + 5 不等于 3") -- 测试两个负数的和 assert(sum(-5, -5) == -10, "测试失败:-5 + -5 不等于 -10") print("所有测试通过!") end test_sum() ``` 在这个测试框架中,我们首先使用`require`函数引入了C代码中的`sum`函数。然后,我们编写了一个`test_sum`函数,里面包含了多个测试用例。每个测试用例都使用`assert`函数来断言函数的调用结果是否符合预期。如果断言失败,则会输出相应的错误信息。最后,在`test_sum`函数被调用时,会执行所有的测试用例。 注意,为了在Lua中使用C函数,我们需要通过Lua的C API来调用C函数。具体可以使用Lua的`ffi`库,或者通过自定义的方式将C代码编译成动态链接库,并在Lua中进行调用。 当运行这个测试脚本时,如果所有的断言都通过了,会输出"所有测试通过!"的提示信息。如果有任何断言失败,会输出相应的测试失败信息。这样,我们就可以方便地测试C代码的功能是否正确了。 当然,这只是一个简单的示例,实际上,Lua实现C测试框架要更加复杂。需要根据具体的需求和C函数的特性来进行相应的设计和实现。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值