[应用相关] STM32嵌入LUA开发(控制小灯闪耀)

[复制链接]
 楼主| 家有两宝呀 发表于 2021-8-4 22:05 | 显示全部楼层 |阅读模式
今天因为想让STM32完美的处理字符串,所以就想着让STM32嵌入lua,本来想用f103c8t6,但是一编译就提示内存不足......
所以单片机的型号选择的
71552610a9ebb3cd00.png

 楼主| 家有两宝呀 发表于 2021-8-4 22:06 | 显示全部楼层
我下载到了RBT6的芯片上测试的

先说一下最终实现的效果吧,就是用lua语言控制单片机的PC13  每间隔500Ms反转一次

实现功能的部分
 楼主| 家有两宝呀 发表于 2021-8-4 22:07 | 显示全部楼层
  1. static int lua_led_on(lua_State *L)
  2. {
  3.   PCout(13) = 1;
  4.   return 1;
  5. }
  6. static int lua_led_off(lua_State *L)
  7. {
  8.   PCout(13) = 0;
  9.   return 1;
  10. }

  11. static int lua_delay(lua_State *L)
  12. {
  13.   int num;
  14.   num= lua_tointeger(L, 1);
  15.   delay_ms(num);
  16.   return 1;
  17. }

  18. static const struct luaL_Reg mylib[]=
  19. {
  20.   {"led_on",lua_led_on},
  21.   {"led_off",lua_led_off},
  22.   {"delay",lua_delay},
  23.   {NULL,NULL}
  24. };


  25. const char LUA_SCRIPT_GLOBAL[] ="  \
  26. off = 500     \
  27. on = 500       \
  28. while 1 do \
  29. led_on() \
  30. delay(off)    \
  31. led_off()        \
  32. delay(on)      \
  33. end";
 楼主| 家有两宝呀 发表于 2021-8-4 22:08 | 显示全部楼层
调用部分while(1)
    {
        lua_State *L;
        L = luaL_newstate(); /* 建立Lua运行环境 */
      luaopen_base(L);
        luaL_setfuncs(L, mylib, 0);
    luaL_dostring(L, LUA_SCRIPT_GLOBAL); /* 运行Lua脚本 */
   
        
        while(1);
 楼主| 家有两宝呀 发表于 2021-8-4 22:09 | 显示全部楼层
其实虽然可以了,但是也没什么感觉....因为可能需要裁剪很多功能才能运行在c8t6上,所以,唉,不开心......

现在说一下移植(赋值粘贴加修改)的步骤
 楼主| 家有两宝呀 发表于 2021-8-4 22:09 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:10 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:10 | 显示全部楼层
下载之后
把这个文件夹拷贝出来
8796610a9fd168f4c.png
 楼主| 家有两宝呀 发表于 2021-8-4 22:11 | 显示全部楼层
放在自己的工程目录下,位置随意,只要自己知道就行,因为需要手动设置告诉软件一些.h的位置,这个大家应该知道
 楼主| 家有两宝呀 发表于 2021-8-4 22:12 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:13 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:14 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:15 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:16 | 显示全部楼层
设置头文件位置 98776610aa11dccb53.png
 楼主| 家有两宝呀 发表于 2021-8-4 22:18 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:19 | 显示全部楼层
 楼主| 家有两宝呀 发表于 2021-8-4 22:20 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

61

主题

584

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部