接口是atmel sam-ba监视器。

carioca的Python项目详细描述


carioca是sam ba的变体,在本例中是sam-ba的变体。 sam-ba是一个成熟的系统程序员 由atmel支持引导他们的各种sam微控制器。 sam-ba是专有的,这意味着(大多数)源代码是 对sam-ba用户不可用。因此,如果有什么东西坏了,只有 阿特梅尔可以解决这个问题。

相反,carioca是一个最小的开源工具 目标是山姆-巴。它是最小的,因为它没有任何 初始化硬件组件(如 DRAM或编程闪存。相反,Carioca提供了足够的 支持启动主引导加载程序,然后 操作系统,如Linux。所有闪存编程等都可以 在目标操作系统内完成。

carioca有两种模式:脚本模式和终端模拟模式。它 以脚本模式启动,在脚本模式下执行零个或多个脚本 存储在文件中。还有一种交互脚本模式,其中 用户可以在终端中交互键入命令。一旦剧本 完成后,carioca通常会切换到终端仿真模式。在 这种模式下,Carioca只需从目标的 在中启动了到终端Carioca的串行接口。这使得 用户观察目标操作系统的引导过程, 登录并根据需要执行命令。

有了这两种模式,carioca可以启动sam 微控制器通过单个串行接口(如调试 串行端口),而不是sam-ba通常需要的两个端口 (调试串行端口和USB串行接口)。

carioca完全是用python 3编写的,脚本语言 受到另一个现在已经失效的python项目sam_i_am的影响 (不过,这两个项目并不共享实际的代码,它们的脚本是 不兼容)。

快速启动

  1. 安装时使用:

    pip install --user carioca
    

    (或者使用“pip3”,如果这是提供python 3的版本)。

  2. 将目标板与sam微控制器连接到计算机 使用其调试串行端口或USB串行端口。打开 Linux,前者通常显示为设备/dev/ttyusb0, 后者是/dev/ttyacm0

  3. 如果目标的串行端口在 计算机和目标的串行端口速度是115200波特,然后 像这样启动Carioca:

    ~/.local/bin/carioca
    

    可以使用选项-p指定非默认串行端口(例如 “-p/dev/ttyacm0”)和-b选项来指定非默认值 波特率(例如“-b 57600”)。

  4. 启动目标板。假设目标尚未设置 对于自动引导,您应该看到“romboot”提示。如果是的话, 继续。

  5. 键入“ctrl-]quit”退出Carioca的终端仿真器,然后 按键输入

  6. 使用以下命令启动Carioca的交互式脚本模式:

    ~/.local/bin/carioca -
    

    这将给您一个“carioca$”提示。您可以键入“help”以获取 可用命令的列表。执行第一个命令时 需要与目标互动,Carioca报告是目标的 Sam-BA监视器版本。例如:

    carioca$ writeb 0x200000 42
    

    将值42写入内存位置0x200000,并用:

    Connected to SAM-BA Monitor v1.1 Jul 31 2015 15:09:09
    

    通常,您需要将主引导加载程序发送到 微控制器的sram然后开始执行。这可能是 使用:

    carioca$ sendimg 0x200000 "at91bootstrap.bin"
    carioca$ go 0x200000
    

    一旦执行“go”命令,carioca将切换到 终端模拟模式,以便您可以观察引导过程和 根据需要与目标互动。

  7. 当你和目标玩累了系统,类型 “ctrl-]quit”,然后按enter键退出Carioca。

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

推荐PyPI第三方库


热门话题
java在依赖项上没有这样的方法异常   java如何将@Value注入setter?   验证输入java的最佳实践   java在使用kotlin的安卓项目中没有此类字段错误   我们可以强制java接口实现超时吗?   java将BasicAuth()与FormLogin()组合用于不同的路径   java无法在更新SDK后更新应用程序(未安装应用程序)   macos Java 8、Swing和OSX:对话框使UI对鼠标无响应   java自定义单元格格式以US格式显示,尽管使用了带UK语言环境的DataFormatter   java按升序排列列表字符串数据   java Hibernate OGM[PersistenceUnit:person]无法构建Hibernate SessionFactory   生命周期配置未涵盖java插件执行:com。乱穿马路。专家插件。安卓generation2:安卓mavenplugin:3.5.0:generatesources   java RecyclerView显示为空   当服务器不返回任何输入时,java InputStream read()会阻塞