树莓派pi 4 编译 linuxcnc

1.在这里插入图片描述
先用sd 卡安装操作系统
操作系统 选择
buster debian

在这里插入图片描述
因为linuxcnc 有在buster 这个版本上面跑

安装完之后,第一步是开vnc 和ssh
因为 linuxcnc 是分模拟和真实跑两种情况,
模拟是控制不了硬件
真实跑有打补丁
rt 补丁 我这边安装完之后usb 是不能使用了,坑多多

在这里插入图片描述
git 下载树莓 rpi 补丁文件
: git 地址 https://github.com/raspberrypi/linux
git clone https://github.com/raspberrypi/linux.git -b rpi-4.19.y-rt
在这里插入图片描述
在这里插入图片描述
编译有几种方式,一种是直接在树莓pi4 上面编译,别一种是在x86 linux 平台上面交叉编译,

最后编译成功之后都是有移动文件到sd 相对的分区
到源文件的kernel目录运行: KERNEL=kernel7l
KERNEL=kernel7l
这步如果不做的话,那只能编译好内核之后,修config.txt 指定 生产出来的img 文件

返回源码根目录,运行4b 的配置文件
make bcm2711_defconfig

成功之后,编译
make -j4 zImage
make -j4 modules
make -j4 dtbs
make -j4 modules_install
make -j4 dtbs_install
// 也可以写成make -j4 zImage modules dtbs

然后移动 dtb 等文件到 sd 卡目录

cp arch/arm/boot/dts/.dtb /boot/
cp arch/arm/boot/dts/overlays/
.dtb* /boot/overlays/
cp arch/arm/boot/dts/overlays/README /boot/overlays/

./scripts/mkknlimg ./arch/arm/boot/zImage /boot/ K E R N E L . i m g m k k n l i m g 是 把 z l m a g e 生 成 i m g 文 件 的 , 如 果 上 面 没 运 行 K E R N E L = k e r n e l 7 l / b o o t / KERNEL.img mkknlimg 是把zlmage 生成img文件的,如果上面没运行KERNEL=kernel7l /boot/ KERNEL.imgmkknlimgzlmageimgKERNEL=kernel7l/boot/KERNEL.img $KERNEL这个变量不有这样写了, 直接写成自已想要的名字就,英文.img
然后到boot/config.txt 增加
KERNEL=英文.img
重启设备

查看操作 是否打上了补丁
uname -a

在这里插入图片描述

补丁打上了,
2. 开始编译 linuxcnc

在这里插入图片描述

下载源码
https://github.com/LinuxCNC/linuxcnc
在这里插入图片描述
这个是已经编译和打包deb 完成之后的文件源码了,
打包deb 之后可以直接安装,

这官网的教程地址
http://linuxcnc.org/docs/devel/html/code/building-linuxcnc.html

因为环境问题,可能会有很依赖项的报错,补上依赖就行了

在这里插入图片描述

./configure --with-realtime=uspace 这个有注意一下,一定有满足之后才去运行 make
在这里插入图片描述
打包deb 流程,
在这里插入图片描述

之后就可以打包 deb 软件了
然后安装deb ,deb 安装还有点问题,有安装依赖。

在这里插入图片描述
在这里插入图片描述
安装之后
linuxcnc 有控制 pi4 gpio 去控制 电机等硬件
在这里插入图片描述

源码中有个hal_pi_gpio 文件

在这里插入图片描述

这个配置方式,

BCM方式

2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1

7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 (gpio1& 0 not used )

输入输出

0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 dir mask (0 means in 1 means out) dec 78855

// 0 是打这个gpio 使用

0 1 1 1 1 1 0 1 1 0 0 1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 exclude mask (0 means use 1 means dont use) dec 32918520

loadrt hal_pi_gpio dir=78855 exclude=32918520

在这里插入图片描述
测试引脚 pi4 功能
在这里插入图片描述
第一步加载 引脚 , 不然不会在pin 引脚看 pi gpio 的
loadrt hal_pi_gpio dir=78855 exclude=32918520

第二步把
loadrt stepgen step_type=0,0,0
addf hal_pi_gpio.read base-thread
addf hal_pi_gpio.write base-thread
读写加载完成之后,就可以测试 gpio 功能了
黄色表示通电,红色没电, out 可以点 set 和clr 实现开关功能,

第三步是net ,因为机器的运行有控制下面电机和主轴之类的,

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
树莓派安装LinuxCNC需要先安装Linux操作系统,并对树莓派Linux内核进行编译。首先,你需要将Linux内核代码和编译工具上传到Ubuntu系统。根据树莓派的版本,在https://github.com/raspberrypi/下载对应版本的Linux工程。你可以使用git命令来下载树莓派补丁文件,例如:git clone https://github.com/raspberrypi/linux.git -b rpi-4.19.y-rt。接下来,你可以选择在树莓派上直接编译,或者在x86 Linux平台上进行交叉编译。在编译完成后,你需要配置树莓派Linux内核。配置完成后,你可以进行树莓派Linux内核编译,并打包zImage文件。最后,将编译好的Linux内核文件拷贝到树莓派上,完成树莓派LinuxCNC安装。 #### 引用[.reference_title] - *1* *3* [树莓派——配置Linux内核适合树莓派](https://blog.csdn.net/NRWHF/article/details/127849573)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [树莓派pi 4 编译 linuxcnc](https://blog.csdn.net/qq_25160559/article/details/122274261)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值