立即注册
查看: 2212|回复: 3

[资料] iMX6ULL 软件定制应用笔记 -9个知识点讲解

已绑定手机
发表于 2020-12-31 15:57:51 | 显示全部楼层 |阅读模式 来自 河北省保定市
本文以飞凌OKMX6ULL-S开发板为基础讲解,系统为Linux,一共总结了14个iMX6ULL小知识点,分三期完成,此为第二期

i.MX6ULL应用笔记目录
1.1 管脚复用的参数配置方法(PINMUX)
1.2 Windows下转换开机LOGO图片格式
1.3  8189es SDIO WIFI使用及测试
1.4  USB转串口芯片的支持(PL2303)
1.5  增加串口
1.6  串口配置DMA
1.7  LCD转LVDS模块
1.8  LCD转VGA模块
1.9  硬浮点运算
1.10  OTG修改模式
1.11  使用EC20模块实现4G-AP功能
1.12  SPI转CAN接口
1.13  ADC接口
1.14  LCD的屏幕参数调整

1.4  USB转串口芯片的支持(PL2303)内核自带了PL2303的驱动,需要将配置文imx6ull_defconfig中CONFIG_USB_SERIAL_PL2303 设置为y,如下:(默认已经配置)
arch/arm/configs/imx6ull_defconfig

# CONFIG_USB_SERIAL_NAVMAN is not setCONFIG_USB_SERIAL_PL2303=yCONFIG_USB_SERIAL_VIZZINI=y 配置说明:
1. 编译内核,烧写并替换内核。(如果对imx6ull_defconfig配置进行修改需要执行此步骤)
2.启动系统à 插入USB转串口设备。
3.验证,输入以下指令查看,默认在dev下产生ttyUSB0节点:
root@fl-imx6ull:~#ls -la /dev/ttyUSB0注意:
1.有些USB设备需要将配置文件中CONFIG_USB_PRINTER=y;
2. 测试方法同《用户手册》串口测试章节。
1.5 增加串口
1.此处以uart4配置进行说明。查看IMX6ULLRM.pdf手册中Chapter 4有
262264e0ca7d7bf16afb550339e66986.png

262264e0ca7d7bf16afb550339e66986.png
2.因有调试串口,驱动为同一个,此处不再修改配置configs文件。
3.修改设备树文件imx6ull-S-emmc-1024x600c7.dts
&uart4 {    pinctrl-names = "default";    pinctrl-0 = <&pinctrl_uart4>;    status = "okay";};PIN control部分:
pinctrl_uart4: uart4grp {    fsl,pins = <        MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX 0x1b0b1        MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX 0x1b0b1    >;};因uart4复用为i2c1,此处将i2c1设置为disabled。
&i2c1 {    clock-frequency = <100000>;    pinctrl-names = "default";    pinctrl-0 = <&pinctrl_i2c1>;    status = "disabled";4.编译生成dtb,替换并烧写。
5.查看开发板/dev下有节点ttymxc3,则驱动加载成功。
测试同其他串口的测试方法。此处不再说明。
1.6  串口配置DMAi.MX6ULL-S源码中,默认除了debug串口uart1之外,其它的都是默认打开的DMA的,如果串口只是接了TXD/RXD,而没有硬件流控RTS/CTS,则使用DMA传输大量数据有可能报DMA错误,所以如果只接TXD/RXD可以只使用PIO模式,参考 uart1设置。以uart7为例:
imx6ull.dts

uart7: serial@02018000 {                    compatible = "fsl,imx6ul-uart",                             "fsl,imx6q-uart", "fsl,imx21-uart";                    reg = <0x02018000 0x4000>;                    interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;                    clocks = <&clks IMX6UL_CLK_UART7_IPG>,                         <&clks IMX6UL_CLK_UART7_SERIAL>;                    clock-names = "ipg", "per";                    // dmas = <&sdma 43 4 0>, <&sdma 44 4 0>; //注释掉则该串口不使用DMA                    dma-names = "rx", "tx";                    status = "disabled";                };
1.7  LCD转LVDS模块关闭电源,将LCD屏幕接至LVDS接口,现阶段支持深圳拓普微的LMT070DICFWD-AKA液晶显示器。
上电即可正常显示,触摸可用,如有需要可联系销售人员。
1.8  LCD转VGA模块关闭电源,将LCD屏幕接至LCD转VGA模块。需要更改显示的各参数,客户根据实际使用的设备树修改参数即可。如有需要可联系销售人员。
1.9  硬浮点运算i.MX6ULL的CPU本身有FPU,支持VFPv4-D32。假设测试程序为test.c。
Linux4.1.15内核,按照用户手册描述,配置好交叉编译环境后,直接使用$CC编译即可
$CC -o test test.c1.10 OTG修改模式设备树中设置为device模式:
&usbotg1 {dr_mode = "peripheral"; //默认设置为device模式,所以MFG下载可以用。status = "okay";};设备树中设置为host模式:
&usbotg1 {    vbus-supply = <®_usb_otg1_vbus>;    dr_mode = "host";    status = "okay";};
未完,接下篇
已绑定手机
发表于 2021-2-13 14:19:41 来自手机 | 显示全部楼层 来自 广东省东莞市
谢谢楼主,收藏分享参考学习下
已绑定手机
 楼主| 发表于 2021-2-13 14:24:18 来自手机 | 显示全部楼层 来自 河北省保定市
denxaio 发表于 2021-2-13 14:19
谢谢楼主,收藏分享参考学习下

已绑定手机
发表于 2021-7-13 14:58:22 | 显示全部楼层 来自 陕西省西安市
水水水水水水水水水水水水水水水水水水水
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

合作/建议

TEL: 19168984579

工作时间:
周一到周五 9:00-11:30 13:30-19:30
  • 扫一扫关注公众号
  • 扫一扫打开小程序
Copyright © 2013-2024 一牛网 版权所有 All Rights Reserved. 帮助中心|隐私声明|联系我们|手机版|粤ICP备13053961号|营业执照|EDI证
在本版发帖搜索
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表