全志F1C100s主线linux入坑记录 (10)调试串口更改

调试串口更改

百度网站


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

未完成版本
未完成版本
未完成版本
未完成版本
未完成版本
未完成版本
未完成版本

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


uboot 修改

一、修改设备树

vi arch/arm/dts/suniv-f1c100s-licheepi-nano.dts
&uart1 {
//	pinctrl-names = "default";
//	pinctrl-0 = <&uart1_pins_a>;
//	status = "okay";
};

&uart2 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart2_pins_e>;
	status = "okay";
};

在这里插入图片描述

serial1 = &uart1;
//serial2 = &uart2;

在这里插入图片描述

stdout-path = "serial1:115200n8";
//stdout-path = "serial2:115200n8";

在这里插入图片描述

vi arch/arm/dts/suniv.dtsi
uart1_pins_a: uart-pins-pa {
	pins = "PA2", "PA3";
	function = "uart1";
};

uart2_pins_a: uart-pins-pe-uart2 {
//	pins = "PE7", "PE8";
//	function = "uart2";
};

在这里插入图片描述

二、修改文件

vi arch/arm/include/asm/arch-sunxi/gpio.h
#define SUNIV_GPA_UART1         5
#define SUNIV_GPE_UART2         3

在这里插入图片描述

必须放在 #include <configs/sunxi-common.h> 不然会编译报错

vi include/configs/suniv.h
#include <configs/sunxi-common.h>


#undef CONFIG_CONS_INDEX

/*
#define CONFIG_CONS_INDEX       1  //UART0
*/

#define CONFIG_CONS_INDEX       2  //UART1

/*
#define CONFIG_CONS_INDEX       3  //UART2
*/


在这里插入图片描述

vi arch/arm/mach-sunxi/board.c
#elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUNIV)
       sunxi_gpio_set_cfgpin(SUNXI_GPA(2), SUNIV_GPA_UART1);
       sunxi_gpio_set_cfgpin(SUNXI_GPA(3), SUNIV_GPA_UART1);
       sunxi_gpio_set_pull(SUNXI_GPA(3), SUNXI_GPIO_PULL_UP);
//#elif CONFIG_CONS_INDEX == 3 && defined(CONFIG_MACH_SUNIV)
//       sunxi_gpio_set_cfgpin(SUNXI_GPE(7), SUNIV_GPE_UART2);
//       sunxi_gpio_set_cfgpin(SUNXI_GPE(8), SUNIV_GPE_UART2);
//       sunxi_gpio_set_pull(SUNXI_GPA(8), SUNXI_GPIO_PULL_UP);

在这里插入图片描述

3. 修改内核传递参数

make ARCH=arm menuconfig
ttys1 //我用的串口1就用tty1假如是串口2就tty2

在这里插入图片描述

内核修改

vi arch/arm/boot/dts/suniv-f1c100s.dtsi
uart0_pe_pins: uart0-pe-pins {
//	pins = "PE0", "PE1";
//	function = "uart0";
};

uart1_pa_pins: uart1-pa-pins {
	pins = "PA2", "PA3";
	function = "uart1";
};

uart2_pe_pins: uart2-pe-pins {
//	pins = "PE7", "PE8";
//	function = "uart2";
};

在这里插入图片描述

vi arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts 
aliases {
//	serial0 = &uart0;
	serial1 = &uart1;
//	serial2 = &uart2;
};

chosen {
//	stdout-path = "serial0:115200n8";
	stdout-path = "serial1:115200n8";
//	stdout-path = "serial2:115200n8";
};

在这里插入图片描述

&uart0 {
//	pinctrl-names = "default";
//	pinctrl-0 = <&uart0_pe_pins>;
//	status = "okay";
};

&uart1 {
	pinctrl-names = "default";
	pinctrl-0 = <&uart1_pa_pins>;
	status = "okay";
};

&uart2 {
//	pinctrl-names = "default";
//	pinctrl-0 = <&uart2_pe_pins>;
//	status = "okay";
};

参考

https://whycan.com/viewtopic.php?id=4017

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值