亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機腳本語言移植lua到stm32MDK的步驟

汽車玩家 ? 來源:cnblogs ? 作者:cnblogs ? 2021-07-22 16:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Lua是一個小巧的腳本語言。作者是巴西人。該語言的設(shè)計目的是為了嵌入應(yīng)用程序中,從而為應(yīng)用程序提供靈活的擴展和定制功能。

Lua腳本能夠非常easy的被C/C++ 代碼調(diào)用,也能夠反過來調(diào)用C/C++的函數(shù),這使得Lua在應(yīng)用程序中能夠被廣泛應(yīng)用。不只作為擴展腳本,也能夠作為普通的配置文件,取代XML,Ini等文件格式,而且更easy理解和維護。

Lua的目標(biāo)是成為一個非常easy嵌入其他語言中使用的語言。大多數(shù)程序猿也覺得它的確做到了這一點。

非常多應(yīng)用程序使用LUA作為自己的嵌入式腳本語言,以此來實現(xiàn)可配置性、可擴展性。這當(dāng)中包含魔獸世界、博德之門、憤慨的小鳥、VOCALOID3 等。

MDK下lua移植到stm32

移植lua

  • l 加入?lua源代碼到MDK,把lua.c 和luac.c刪除。

l 改動堆棧大?。憾炎钚?.5kb,棧最小是1.5kb。lua的空間分配在堆空間。16kb的內(nèi)存建議分配是堆11Kb,棧4Kb,留1Kb給全局變量。

在startup_stm32f10x_md.s文件里

; stack size 0x1000 == 4Kb

Stack_Size EQU 0x00001000

; heap size 0x2c00 == 11Kb

Heap_Size EQU 0x00002C00

  • l 重寫標(biāo)準(zhǔn)庫底層函數(shù)

typedef int FILEHANDLE;

#pragma import(__use_no_semihosting_swi)

#pragma import(_main_redirection)

const char __stdin_name[150];

const char __stdout_name[150];

const char __stderr_name[150];

FILEHANDLE _sys_open(const char *name, intopenmode)

{

return0;

}

int _sys_close(FILEHANDLE fh)

{

return 0;

}

int _sys_write(FILEHANDLE fh, constunsigned char *buf, unsigned len, int mode)

{

return0;

}

int _sys_read(FILEHANDLE fh, unsigned char*buf, unsigned len, int mode)

{

return0;

}

  • //檢查句柄是否為終端

int _sys_istty(FILEHANDLE fh)

{

return0;

}

int _sys_seek(FILEHANDLE fh, long pos)

{

return0;

}

  • //刷新句柄關(guān)聯(lián)的緩沖區(qū)

int _sys_ensure(FILEHANDLE fh)

{

return0;

}

  • //返回文件當(dāng)前長度

long _sys_flen(FILEHANDLE fh)

{

return0;

}

void _sys_exit(int status)

{

//while(1);

}

int _sys_tmpnam(char *name, int fileno, unsignedmaxlength)

{

return0;

}

  • //將一個字符寫入控制臺

void _ttywrch(int ch)

{

}

int remove(const char *filename)

{

return0;

}

char *_sys_command_string(char *cmd, intlen)

{

return NULL;

}

static int lua_led_on(lua_State *L)

{

GPIO_ResetBits(GPIOC,GPIO_Pin_13);

return1;

}


文章整合自:cnblogs

編輯:ymf

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6072

    文章

    45277

    瀏覽量

    661630
  • C語言
    +關(guān)注

    關(guān)注

    183

    文章

    7636

    瀏覽量

    144294
  • 腳本語言
    +關(guān)注

    關(guān)注

    0

    文章

    48

    瀏覽量

    8518
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    大彩講堂:VisualHMI-LUA教程-獲取與設(shè)置32位數(shù)據(jù)函數(shù)的應(yīng)用

    一、適合范圍本文檔適用于VisualHMI平臺,Lua腳本語言為V5.3版本,配合工程可以完成大部分的內(nèi)部邏輯處理。二、概述2.1.get_uint32(vtype,addr)讀取無符號整形寄存器
    的頭像 發(fā)表于 10-15 17:46 ?876次閱讀
    大彩講堂:VisualHMI-<b class='flag-5'>LUA</b>教程-獲取與設(shè)置32位數(shù)據(jù)函數(shù)的應(yīng)用

    大彩講堂:VisualHMI-LUA教程-獲取和設(shè)置16位數(shù)據(jù)函數(shù)

    一、適合范圍本文檔適用于VisualHMI平臺,Lua腳本語言為V5.3版本,配合工程可以完成大部分的內(nèi)部邏輯處理。二、概述2.1get_uint16(vtype,addr)讀取無符號短整型寄存器
    的頭像 發(fā)表于 10-13 16:40 ?851次閱讀
    大彩講堂:VisualHMI-<b class='flag-5'>LUA</b>教程-獲取和設(shè)置16位數(shù)據(jù)函數(shù)

    怎么測單片機系統(tǒng)頻率

    ,各有其特點和操作要點。 示波器測量法 示波器是測量單片機系統(tǒng)頻率的常用工具,其原理是通過捕捉單片機輸出的周期性信號,根據(jù)信號的周期計算頻率。 操作步驟 首先,確定單片機的時鐘輸出引腳
    的頭像 發(fā)表于 07-25 11:39 ?338次閱讀

    大彩講堂:VisualHMI-LUA教程-on_run回調(diào)函數(shù)使用指南

    一、適合范圍本文檔適用于VisualHMI平臺,Lua腳本語言為V5.3版本,配合工程可以完成大部分的內(nèi)部邏輯處理。二、概述on_run(screen)周期回調(diào)函數(shù),用該回調(diào)函數(shù),會根據(jù)設(shè)定的時間
    的頭像 發(fā)表于 07-23 15:25 ?824次閱讀
    大彩講堂:VisualHMI-<b class='flag-5'>LUA</b>教程-on_run回調(diào)函數(shù)使用指南

    機智云配網(wǎng)教程第三期:單片機代碼移植實戰(zhàn)

    前言本篇文章將分享單片機移植的經(jīng)驗。可以下載并按步驟移植,也可以直接使用已移植好的工程文件。文中將介紹我在
    的頭像 發(fā)表于 07-01 17:32 ?688次閱讀
    機智云配網(wǎng)教程第三期:<b class='flag-5'>單片機</b>代碼<b class='flag-5'>移植</b>實戰(zhàn)

    STM32與機智云連接實現(xiàn)步驟與技巧(下篇):機智云代碼移植與優(yōu)化

    在《STM32與機智云連接實現(xiàn)步驟與技巧(上篇)》中,我們介紹了硬件連接和通信協(xié)議配置。本篇將重點講解如何將機智云相關(guān)代碼移植STM32,
    的頭像 發(fā)表于 05-23 18:10 ?679次閱讀
    <b class='flag-5'>STM32</b>與機智云連接實現(xiàn)<b class='flag-5'>步驟</b>與技巧(下篇):機智云代碼<b class='flag-5'>移植</b>與優(yōu)化

    單片機c語言編程實例大全

    單片機c語言編程實例大全_18
    發(fā)表于 04-30 16:11 ?6次下載

    瑞薩RA8系列教程 | 基于 Keil 開發(fā) RA8單片機

    本文結(jié)合瑞薩Cortext-M85單片機RA8D1、Keil MDK,以及瑞薩自家的代碼初始化工具(Smart Configurator)給大家描述一下,快速在Keil MDK上點亮Cortext-M85
    的頭像 發(fā)表于 04-22 17:41 ?936次閱讀
    瑞薩RA8系列教程 | 基于 Keil 開發(fā) RA8<b class='flag-5'>單片機</b>

    STM32F10xxx單片機編程手冊

    電子發(fā)燒友網(wǎng)站提供《STM32F10xxx單片機編程手冊.pdf》資料免費下載
    發(fā)表于 04-14 14:56 ?12次下載

    STM32F103x8 STM32F103xB單片機數(shù)據(jù)手冊

    STM32F103x8STM32F103xB單片機數(shù)據(jù)手冊
    發(fā)表于 04-14 14:55 ?6次下載

    STM32單片機最小系統(tǒng)電路設(shè)計

    單片機最小系統(tǒng)是指用最少的電路組成單片機可以工作的系統(tǒng),通常最小系統(tǒng)包含:電源電路、時鐘電路、復(fù)位電路、調(diào)試/下載電路,對于STM32還需要啟動選擇電路??傊?,剛開始如果不太懂電路的話,就抄別人的電路,然后自己拼湊。
    的頭像 發(fā)表于 03-12 14:09 ?1.6w次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>單片機</b>最小系統(tǒng)電路設(shè)計

    【正點原子STM32H7R3開發(fā)套件試用體驗】移植lua解釋器

    Lua簡介 Lua 是一種輕量小巧的腳本語言,用標(biāo)準(zhǔn)C語言編寫并以源代碼形式開放, 其設(shè)計目的是為了嵌入應(yīng)用程序中,從而為應(yīng)用程序提供靈活的擴展和定制功能。
    發(fā)表于 12-29 13:30

    nginx+lua+redis實現(xiàn)灰度發(fā)布

    了這種能力,隨時可以基于這種能力和思想調(diào)整實現(xiàn)方案:比如nginx+lua+(其他數(shù)據(jù)源)、nginx+(其他腳本語言) 一、灰度方案: 常見的灰度實現(xiàn)方案: 1.請求路由:通過請求中的標(biāo)識(如用戶ID、設(shè)備ID、請求頭等)來決定是否將請求路由
    的頭像 發(fā)表于 12-17 10:01 ?685次閱讀

    Linux從零精通:最簡單的Shell腳本入門教程

    case語句 shell變量數(shù)組 shell腳本前言 |為什么學(xué)習(xí)shell編程 Shell腳本語言是實現(xiàn)Linux/UNIX系統(tǒng)
    的頭像 發(fā)表于 12-05 09:56 ?2188次閱讀
    Linux從零<b class='flag-5'>到</b>精通:最簡單的Shell<b class='flag-5'>腳本</b>入門教程

    微軟生成式AI腳本GenAIScript的安裝與配置

    GenAIScript 是一種結(jié)合了生成式人工智能(Generative AI,簡稱 GenAI)和腳本編寫能力的新型腳本語言
    的頭像 發(fā)表于 11-07 09:13 ?1153次閱讀
    微軟生成式AI<b class='flag-5'>腳本</b>GenAIScript的安裝與配置