分类目录归档:软件

软件相关文章

Coding平台、TortoiseGit和Git三者搭配使用

准备工作

  • 提前注册号Coding账号
  • 提前下好Git安装包和TortoiseGit安装包
  • 本文使用的Git安装包为:Git-2.43.0-64-bit.exe
  • 本文使用的TortoiseGit安装包为:TortoiseGit-2.15.0.0-64bit.msi
  • 本文使用的TortoiseGit语言包为:TortoiseGit-LanguagePack-2.15.0.0-64bit-zh_CN
    各种安装包截图

操作流程

  1. 安装Git。

  2. 安装TortoiseGit。安装完成后,会提示第一次配置,可跳过。

  3. 安装TortoiseGit的语言包。记得Finish前勾选“配置TortoiseGit使用当前语言”。

  4. 打开开始菜单中TortoiseGit文件夹下的PuTTYgen。
    选择PuTTYgen

  5. 右击Generate来生成Key。
    generate

  6. 生成过程中需要在窗口空白处随机移动鼠标来产生随机性用于软件生成Key。
    生成key

  7. Key生成完成后,点击Save private key,保存私钥。也可以点击Save public key,保存公钥。注意文件的尾缀是ppk。注意此时不要关闭PuTTYgen。如果关闭,可以再次打开,点击Load加载刚才保存的私钥文件。
    保存私钥

  8. 打开coding的个人账户设置界面,选择左侧个人设置的SSH公钥页面。然后点击新增公钥。公钥有效期可自己选择。公钥名称可以自定义。公钥内容复制PuTTYgen中生成的一串文字。PuTTYgen中有提示“Public key for pasting into OpenSSH authorized_keys file:”,下方就是需要复制的地方。
    配置coding

  9. 回到Coding的项目页面,新建一个Git仓库,复制克隆仓库的HTTPS链接或者SSH链接。

  10. 在本地新建一个文件夹,右击,选择Git克隆。URL中填上刚才复制的地址。勾选加载Putty密钥,选择刚才保存的私钥。然后单击确定,即可完成克隆。

CH32V103无法进行全局中断控制的解决办法

CH32V103默认无法使用全局中断。需要替换core_riscv.h和startup_ch32v10x.S两个文件。

core_riscv.h文件位于工程目录的Core文件夹下。

startup_ch32v10x.S文件位于工程目录的Startup文件夹下。

core_riscv.h文件中修改的内容

core_riscv.h中新增了关于全局中断控制函数的定义,具体新增的代码片段如下:

RV_STATIC_INLINE void __enable_irq()
{
  __asm volatile ("csrw mstatus, %0" : : "r" (0x1888) );
}

RV_STATIC_INLINE void __disable_irq()
{
  __asm volatile ("csrw mstatus, %0" : : "r" (0x1800) );
}

startup_ch32v10x.S文件中修改的内容

startup_ch32v10x.S文件修改的内容主要是mstatus寄存器的赋值变化,原赋值为0x88,更改为0x1888。

原代码片段如下:

/* enable all interrupt */
li t0, 0x88
csrs mstatus, t0
la t0, _vector_base
ori t0, t0, 1
csrw mtvec, t0

修改后的代码片段如下:

/* enable all interrupt */
li t0, 0x1888
csrs mstatus, t0
la t0, _vector_base
ori t0, t0, 1
csrw mtvec, t0