当前位置: 首页 > news >正文

上海建网站工作室flash网站引导页面制作

上海建网站工作室,flash网站引导页面制作,大型网站开发框架移动前端框架,专业网站建设科技公司一、SPI 控制器基础配置(先说主的配置,后面说从的配置) RK3568 集成高性能 SPI 控制器,支持主从双模式,最高传输速率 50MHz。设备树配置文件路径通常为K3568/rk356x_linux_release_v1.3.1_20221120/kernel/arch/arm64/boot/dts/rockchip。 …

一、SPI 控制器基础配置(先说主的配置,后面说从的配置)

RK3568 集成高性能 SPI 控制器,支持主从双模式,最高传输速率 50MHz。设备树配置文件路径通常为K3568/rk356x_linux_release_v1.3.1_20221120/kernel/arch/arm64/boot/dts/rockchip

首先内核配置 make menuconfig

Device Drivers --->
[*] SPI support --->
[*] User mode SPI device driver support

用户空间直接操作 SPI 接口,这样方便众多的 SPI 外设驱动跑在用户空间,不需要改到内核,方便驱动移植开发。在/dev下就能看到spi设备。

RK3568 平台共集成4 组 SPI 控制器,每组均支持主从双模式,其中的SPI已经有厂家做好了基础配置如下:

spi0: spi@fe610000 {compatible = "rockchip,rk3066-spi";reg = <0x0 0xfe610000 0x0 0x1000>;interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;#address-cells = <1>;#size-cells = <0>;clocks = <&cru CLK_SPI0>, <&cru PCLK_SPI0>;clock-names = "spiclk", "apb_pclk";dmas = <&dmac0 20>, <&dmac0 21>;dma-names = "tx", "rx";pinctrl-names = "default", "high_speed";pinctrl-0 = <&spi0m0_cs0 &spi0m0_cs1 &spi0m0_pins>;pinctrl-1 = <&spi0m0_cs0 &spi0m0_cs1 &spi0m0_pins_hs>;status = "disabled";};spi1: spi@fe620000 {compatible = "rockchip,rk3066-spi";reg = <0x0 0xfe620000 0x0 0x1000>;interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;#address-cells = <1>;#size-cells = <0>;clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>;clock-names = "spiclk", "apb_pclk";dmas = <&dmac0 22>, <&dmac0 23>;dma-names = "tx", "rx";pinctrl-names = "default", "high_speed";pinctrl-0 = <&spi1m0_cs0 &spi1m0_cs1 &spi1m0_pins>;pinctrl-1 = <&spi1m0_cs0 &spi1m0_cs1 &spi1m0_pins_hs>;status = "disabled";};spi2: spi@fe630000 {compatible = "rockchip,rk3066-spi";reg = <0x0 0xfe630000 0x0 0x1000>;interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;#address-cells = <1>;#size-cells = <0>;clocks = <&cru CLK_SPI2>, <&cru PCLK_SPI2>;clock-names = "spiclk", "apb_pclk";dmas = <&dmac0 24>, <&dmac0 25>;dma-names = "tx", "rx";pinctrl-names = "default", "high_speed";pinctrl-0 = <&spi2m0_cs0 &spi2m0_cs1 &spi2m0_pins>;pinctrl-1 = <&spi2m0_cs0 &spi2m0_cs1 &spi2m0_pins_hs>;status = "disabled";};spi3: spi@fe640000 {compatible = "rockchip,rk3066-spi";reg = <0x0 0xfe640000 0x0 0x1000>;interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;#address-cells = <1>;#size-cells = <0>;clocks = <&cru CLK_SPI3>, <&cru PCLK_SPI3>;clock-names = "spiclk", "apb_pclk";dmas = <&dmac0 26>, <&dmac0 27>;dma-names = "tx", "rx";pinctrl-names = "default", "high_speed";pinctrl-0 = <&spi3m0_cs0 &spi3m0_cs1 &spi3m0_pins>;pinctrl-1 = <&spi3m0_cs0 &spi3m0_cs1 &spi3m0_pins_hs>;status = "disabled";};

我目前手上的开发板 的/dev/目录下是没有spi设备的

下面我们修改一下设备树

可以看到 status = "disabled";只需要把 status = "okay";  即可

第一次修改可行的 spi  主 
&spi0 {pinctrl-names = "default";status = "okay";max-freq = <48000000>;pinctrl-0 = <&spi0m1_cs0  &spi0m1_pins>;pinctrl-1 = <&spi0m1_cs0  &spi0m1_pins_hs>;spi_test@0 {pinctrl-names = "default";reg = <0>;compatible = "rockchip,spidev";spi-max-frequency = <12000000>;};
};

修改完成以后,重新编译内核./build.sh kernel

将编译好的内核烧到板子上,或者再编译成 ./build.sh 直接编译成update.img烧写到板子上

通过pinctrl配置引脚复用

每组 SPI 在设备树中的节点名称为spiX(X=0~3),需通过pinctrl配置引脚复用:

如果要使用spi0m0,那就改一下

        pinctrl-0 = <&spi0m0_cs0  &spi0m0_pins>;
        pinctrl-1 = <&spi0m0_cs0  &spi0m0_pins_hs>;

这两个即可.

可以使用spidev_test工具测试一下,该spidev_test可以自己下载编译,rk源码包里也有(内核 4.19 及以后 tools/spi/spidev_test.c)

可以把spi的输入和输出用杜邦线接在一起,TX和RX的数据就一样了,我这里没接。

二、SPI 控制器 从的配置

主从模式配置需通过以下步骤实现

从首先需要内核先配置一下  make menuconfig

Device Drivers --->
[*] SPI support --->
[*] SPI slave protocol handlers

选中以后 设备树的写法需要更改一下,增加一个

spi-slave; //使能 slave 模式

并且按照框架要求,SPI slave子节点的命名需以 "slave" 开始

&spi0 {pinctrl-names = "default";status = "okay";max-freq = <48000000>;pinctrl-0 = <&spi0m1_cs0  &spi0m1_pins>;pinctrl-1 = <&spi0m1_cs0  &spi0m1_pins_hs>;spi-slave; slave@0 {pinctrl-names = "default";reg = <0>;compatible = "rockchip,spidev";spi-max-frequency = <12000000>;};
};

必须要这样写,不然 /dev下不出现 spi的设备

可以看到 spi已经是从设备了,因为我当前的设备没有外接别的spi主设备,所以内核打印了没有传输消息的 告警信息。

至此 就完成了RK3568 spi的主/从 设备的设备树配置。

http://www.dtcms.com/a/575320.html

相关文章:

  • 【Janet】语法与解析器
  • 异构比较查找
  • 网站价位无法访问服务器上网站
  • 服装购物网站排名icp备案证书
  • 网站对公司的作用是什么意思免费外贸网站制作
  • 一级a做爰片免费网站体验nginx进wordpress不能进目录
  • 湛江市建设局网站成功的软文营销案例
  • 对于网站开发有什么要求冉冉科技网站建设
  • 汝州网站建设网站建设方案数
  • 跨境电商平台网站建设制作h5用什么软件比较好
  • 网站构建设计思路设计参考网站推荐
  • 两台电脑一台做服务器 网站电商付费推广方式
  • 编写网站 支付宝做爰的最好看的视频的网站
  • 金华企业网站建设富阳seo关键词优化
  • 青岛网上房地产官网查网签苏州seo关键词优化
  • 网站建设行业发展方向企业百度网站怎么做
  • 做西装的网站金融保险网站模板
  • 网站做长连接用手机怎么制作软件
  • 购物网站建设教程全面的客户管理系统
  • 菏泽 兼职做网站阿里云网站建设教程
  • evince魔改记
  • 做内贸的网站小说网站怎么做用户画像
  • Spring AI Advisors API与 Ollama 的结合及实战示例
  • 互联网装修seo网站结构
  • php做自己的网站vue适合什么样的网站开发
  • 界面设计的算法解析
  • 用tornado做网站电商网站前端制作分工
  • 建一家网站多少钱wordpress emlog
  • 1系统分析与设计及 IT 项目管理
  • 企业建设网站目的商标注册45大类明细