自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 uboot配置早期debug uart

一. 使用debug uart的原因由于驱动以及其他依赖因素,通常只有在SPL顺利启动console uart才会有打印输出信息,因此很难定位调试早期启动代码例如PMIC配置,clock配置,DDR配置等。为了使启动更顺利推荐在开发阶段配置uboot的debug UART,这样在early_system_init就会使能uart。通常debug UART要与console uart相同,且在使用相应debug UART前请注意配置pinmux二. 使能deb...

2021-09-02 14:14:18 2052

原创 触摸屏 tsc2007驱动框架

在介绍触摸屏ic驱动前,先要简单了解电阻屏的工作原理。一 电阻屏的工作原理a. 电阻屏结构。如下图所示,硬涂层是用以保护下面的PET层,PET层是很薄的有弹性的PET薄膜,当表面被触摸时它会向下弯曲,并使得下面的两层ITO涂层能够相互接触并在该点连通电路。两个ITO层之间是约千分之一英寸厚的一些隔离支点使两层分开。最下面是一个透明的硬底层用来支撑上面的结构,通常是玻璃或者塑料。b.触摸坐标的计算。其中ITO陶瓷层分为了上下两层,为x层和y...

2021-08-24 10:35:56 1753

原创 am5728 ipc开发总结

一. 概述1. 什么是IPC : ti ipc全称为 Inter-Processor Communication,即核间通信,与 linux 中的概念不同,ti 的ipc是用在不同 cpu间通信的软件包;而linux ipc指的是进程间通信。2. ipc启动过程:AM5728 有两个Cortex A15,两个C66x DSP和两个ARM M4核。 A15通常运行HLOS,例如Linux / QNX / Android,DSP和M4运行RTOS。 在启动过程中,U-Bo...

2021-08-10 15:55:19 888

原创 arm linux 中littlevgl支持tslib的方法

1. 修改文件 lv_drv_conf.h,使用 linux下的 input文件节点将 # define USE_EVDEV 0 改为 # define USE_EVDEV 11. 修改文件 lv_drv_conf.h,使用 linux下的 input文件节点2. 修改文件 lv_drivers/input/evdev.c,添加使用 tslib库代码...

2021-08-04 11:22:59 268

原创 LCD移植种碰到的问题(am5729)

综述:使用AM5729芯片,板子为公司自己制作,LCD型号为:AT080TN64, AT070TN94出现的问题:1. 没有产生/de/fb0设备节点2. lcd字显示顺序反了3. lcd颜色显示不对设备树中与 lcd相关的配置如下:aliases { display1 = &lcd; rtc0 = &tps659038_rtc; rtc1 = &isl1208_rtc;};lcd_bl: backlight {

2021-08-03 14:47:19 335

原创 arm linux添加自启动脚本

由于文件系统类型的不同,自启动脚本的制作方法也不一样,在此仅以 Systemd 类型和 init 类型的文件系统进行介绍,在说明自启动脚本制作方法之前先介绍两种文件类型的区别。一. Systemd(service)和 init的区别1. init。以前的Linux启动都是用init进程,这是一个串行启动,也就是说只有前一个进程启动完,才会启动下一个进程。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,导致脚本变得很长,导致启动脚本复杂。...

2021-07-28 14:56:17 1479

原创 am5728 使用mailbox 通信

一. am5728 mailbox中断相关概念1. crossbar。由于am5728的中断数太多,难以管理,现在引入crossbar来集中管理am5728中的中断。每个crossbar的中断线对应一个中断,对应关系如下,以下列出部分仅供参考2. 每个cpu核心拥有多个irq,在手册中已经编好号。比如 dsp的中断DSP1_IRQ_0等,对应关系如下表:3. 与中断相关的寄存器。此处以 mailbox3 的中断寄存器为例,以下列出了mailbox所有中断寄存器的地址,关键..

2021-07-15 17:18:04 884

原创 arm linux cpu亲和性(affinity)

1. 什么是cpu亲和性(affinity)CPU的亲和性,就是进程要在指定的 CPU 上尽量长时间地运行而不被迁移到其他处理器;简单点的描述就是将指定的进程或线程绑定到相应的cpu上。在多核运行的机器上,每个CPU本身自己会有缓存,缓存着进程使用的信息,而进程可能会被OS调度到其他CPU上,CPU cache命中率就低了,当绑定CPU后,程序就会一直在指定的cpu跑,不会由操作系统调度到其他CPU上,性能有一定的提高。2. 调试思路 本次...

2021-07-10 09:38:16 985 2

原创 am5728的RTC移植问题总结

最近项目中需要使用RTC,使用文件IO设置RTC时间时,RTC时间总是无法设置。使用gdb调试。发现调用函数 mktime返回错误。在32位的arm上,如果 tm_year的值大于137,也就出错了。因为,time_t是个4字节的值,存储的是1900年到现在的秒数,即只能存储137年左右的时间,超过就溢出了。设置的 tm_year不能超过 137,也就是年份不能超过 2037年...

2021-07-05 09:04:41 321

原创 mktime返回-1的原因

最近项目中需要使用RTC,使用文件IO设置RTC时间时,RTC时间总是无法设置。使用gdb发现调用函数 mktime返回错误。

2021-06-18 11:02:07 2030

原创 am5728 更改cpu频率的方法

1. 进入内核源码目录,输入命令进行内核配置make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig内核菜单配置 "CPU Power Management—>CPU Frequency scaling" ,修改配置选项"Default CPUFreq governor",该选项的默认配置为ondemand,该配置下,CPU的频率为1Ghz。修改Default CPUFreq governor,配置为performance.

2021-06-08 10:28:59 438

原创 sys/bios中添加posix编程

一. 什么是posix,在sys/bios添加 posix的原因1. POSIX全称为:Portable Operating System Interface,意为可移植操作系统接口。简单来说就是:不同系统都能使用相同的 API 进行系统调用。2. 在老版本的应用程序中,代码都是基于 posix进行编程,在 sys/bios 中使用添加 posix支持,能使应用程序更易于移植,也能减少应用工程师的工作量。二. 添加步骤1. 在代码中加入 posix相关的代码,此处以创建线程为例,如下:.

2021-06-08 09:11:06 282 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除