imx6
Legendary_wasper
这个作者很懒,什么都没留下…
展开
-
Linux内核浮点运算
首次在linux内核驱动使用浮点型运算时出现了undefined reference to `__aeabi_uidiv’等错误,主要参考:Vedic的博客toradexsh的博客根据Vedic的博客修改makefile即可!原创 2020-11-11 20:09:28 · 803 阅读 · 0 评论 -
linux内核中使用定时器
一、使用Linux 内核定时器Linux 内核定时器采用系统时钟来实现, Linux 内核定时器使用很简单,只需要提供超时时间(相当于定时值)和定时处理函数即可,当超时时间到了以后设置的定时处理函数就会执行,和我们使用硬件定时器的套路一样,只是使用内核定时器不需要做一大堆的寄存器初始化工作。在使用内核定时器的时候要注意一点,内核定时器并不是周期性运行的,超时以后就会自动关闭,因此如果想要实现周期性定时,那么就需要在定时处理函数中重新开启定时器。 Linux 内核使用 timer_list 结构体表示内核定原创 2020-11-03 19:55:13 · 903 阅读 · 0 评论 -
linux 串口波特率的修改与sdma的设置
最近这几天准备用串口实现DMA的传输数据,刚开始研究三天DMA,结果是一脸懵逼,无奈之下,只能跑去研究串口,结果发现Linux系统串口和DMA是真的难(小白,而且没人一起研究!),芯片手册对应的页数可以让人放弃,最后还是放弃看芯片手册,从网上百度开始,看看前人的总结,最终写下以下总结笔记。系统:linux3.0.15cpu:imxdl一、DMA二、串口波特率设置与SDMA传输三、测试...原创 2020-08-26 14:28:25 · 2185 阅读 · 1 评论 -
将驱动编译到内核笔记
文件夹的选择把我们的驱动源文件(test.c)放到对应目录下,具体放到哪里需要根据驱动的类型和特点。一般情况下我们分为字节驱动和块驱动,他们分别对应的文件夹时drivers下的char文件夹与block文件夹。(实际上并不一定要放到这些文件,可以再新建文件夹)内核的配置系统组成可参考牧野星辰的博客将字符驱动编译到内核以test.c为例,将其添加到插入目录下,此时可分为两种情况。1、不创建子目录,直接将test.c拷贝到char目录打开char目录的Kconfig,仿写其他驱动的格式在menu原创 2020-07-27 10:42:47 · 182 阅读 · 0 评论 -
imx6PWM学习笔记1
使用zlg的m6708开发板时(内核kernel3.0.15),由于自带得开开发板系统只有一路PWM,并且该路PWM已经给了LCD作背光调节,为此接下来学习如何将其他io口修改为PWM输出。首先参考emb_hao的博客:Linux系统PWM驱动内核的配置在linux内核中有一个规律,Linux内核开发者把通用的东西都总结出来,个性化的东西就留出接口,和GPIO驱动类似,PWM驱动在内核中也提供了对应的接口函数,内核提供的接口函数声明在include/linux/pwm.h中//申请一个PWM资源s转载 2020-07-23 22:10:50 · 556 阅读 · 0 评论 -
imx6Q/6dl的GPIO宏定义
imx6dl的管脚定义其IO口宏定义在\arch\arm\plat-mxc\include\mach\iomux-mx6dl.h中,如CSI0_DAT10的定义。/*管脚模式的命名规则为:MX6Q_PAD_<padname>__<padmode>_ padname为管脚名,padmode为管脚模式。*/#define MX6DL_PAD_CSI0_DAT10__IPU1_CSI0_D_10 \ IOMUX原创 2020-07-18 21:41:59 · 445 阅读 · 0 评论