创建、构建、上传和监控avr cosa项目

WCosa的Python项目详细描述


滑铁卢cosa是一个命令行工具,用于帮助创建、构建和 上传使用面向对象平台cosa构建的avr项目 阿迪诺。这个项目建立在 arduino-cmake到 为cosa提供cmake工具链,并封装在python脚本中。

COSA

Cosa拥有更好的性能 更低的功耗,同时比 标准的Arduino图书馆。cosa,面向对象集成性好 与其他C++程序编写的OOP风格。

wcosa

这个项目提供wcosa,一个用python编写的构建脚本。这个 脚本允许用户createbuilduploadmonitor AVR项目。此工具在幕后使用cmake工具链。 运行创建脚本将生成具有结构的项目

project/
    lib/
    src/
    wcosa/
        bin/
        CMakeLists.txt
    .gitignore
    config.json
    CMakeLists.txt
    CMakeListsPrivate.txt

源文件应该放在src目录中,并且库 应该放在lib目录中的文件夹中。生成文件 包含在wcosa中,需要为每个 正在运行wcosa项目的环境。

命令和用法

using命令的格式为wcosa [action],其中[action]是 其中一个是createupdatebuildcleanupload

下面是创建项目的示例:

mkdir wcosa-project
cd wcosa-project
wcosa create --board uno --ide clion

--board标志指定项目所需的目标板 生成,--ide clion告诉wcosa生成文件以启用 项目导入到CLion,以获得代码建议和完成。使用 wcosa boards查看可用板列表,支持COSA。 此命令将生成特定于环境的文件,如 CMakeListsPrivate.txtwcosa文件夹。

要构建项目,创建可上载的二进制文件,请使用wcosa build, 要清理项目,请运行wcosa clean。如果微控制器 插入电脑后,运行wcosa upload将尝试 自动检测端口并上载程序。如果你有多个 微控制器或如果wcosa无法检测到端口,则使用 wcosa upload --port [port_name]指定所需的上载端口。

命令wcosa update可用于更新目标板 wcosa update --board [new_board]或者config.json被修改。 若要向主项目或子模块添加生成定义,请修改 build-flags

{"build-flags":"MAX_ALLOCATORS=4u STATIC_MEMORY"}

要指定在lib下添加的模块的定义,

{"build-flags":"...","module-flags":{"wlib":"BLOCK_SIZE=64u NUM_BLOCKS=400u"}}

然后运行wcosa update更新内部配置。

签出时还应该调用命令wcosa update。 从源代码管理投影以创建环境文件。为了 示例,

git clone --recursive https://github.com/teamwaterloop/goose-sensors.git
cd goose-sensors
wcosa update

安装

pip install wcosa

wcosa需要安装gcc-avr或arduino sdk。 cmake也是构建项目所必需的。

窗口

我们建议安装Arduino SDK。一。下载并安装 Arduino IDE2。添加 Arduino安装目录和子目录 \hardware\tools\avr\bin到您的系统路径;这些可能看起来像* C:\Program Files (x86)\Arduino* C:\Program Files (x86)\Arduino\hardware\tools\bin

有一些avr-gcc 可用于Windows的生成,但这些生成未经测试。

Linux

您可以选择安装arduino sdk或所需的工具和 命令行中的二进制文件。

ubuntu

sudo apt-get install gcc-avr avr-libc avrdude

arch

sudo pacman -S avr-gcc avr-libc avrdude

macos

您可以安装arduino sdk或使用brew生成avr-gcc。 请记住,构建avr-gcc可能需要一些时间。

xcode-select --install
brew tap osx-cross/avr
brew install avr-gcc
brew install avrdude

提交者

深迪伦(@dhillon deep)纽杰夫(@mogball)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Cassandra DB的javascript查询结果   java定时器任务调度   java在TLS上实现LDAP   为什么在浏览器中滚动会使java小程序闪烁?   未使用轮询器和serviceactivator提取java pubsub消息   java风暴多线程问题   java计算平均成绩   java将字符串添加到另一个类的数组列表中   文件Java路径如何转换为例如InputStream   java更改JComboBox的字体颜色   java inthttp:具有可轮询请求通道的inboundgateway   使用继承在Java中运行swing Base和扩展windows   java ivysettings。xml:添加本地maven路径   java如何将参数自定义视图传递给activity类   java延迟加载无法在Hibernate中使用一对一映射   当文件以“file:/”开头时,Java无法识别该文件   需要java正则表达式帮助,使用反斜杠   片段中的java GWT参数