<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[tmd182的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/tmd182</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; tmd182]]></copyright><item><title><![CDATA[Linux驱动开发-------platform平台设备]]></title><link>https://blog.csdn.net/tmd182/article/details/137727786</link><guid>https://blog.csdn.net/tmd182/article/details/137727786</guid><author>tmd182</author><pubDate>Sat, 20 Apr 2024 17:01:10 +0800</pubDate><description><![CDATA[在注册驱动时，首先判断platform_driver中的成员probe是否定义，如果定义将device_driver基类中的成员probe赋值为platform_drv_probe，即匹配成功后执行的函数。在platform_drv_probe函数中将会调用platform_driver中的成员probe，即需要自行编写的内容。总结：在编写驱动和设备程序时，需要重点关注。]]></description><category></category></item><item><title><![CDATA[Linux驱动开发--------设备树]]></title><link>https://blog.csdn.net/tmd182/article/details/137638499</link><guid>https://blog.csdn.net/tmd182/article/details/137638499</guid><author>tmd182</author><pubDate>Sat, 13 Apr 2024 22:40:21 +0800</pubDate><description><![CDATA[一般 .dts描述板级信息 (也就是开发板上有哪些IIC设备、SPI设备等 )，.dtsi描述SOC级信息 (也就是 SOC有几个 CPU、主频是多少、各个外设控制器信息等 )。其他的 .dts文件可以直接引用 .dtsi文件，类似于 C语言中的头文件。DTS是设备树源码文件， DTB是将DTS编译以后得到的二进制文件，编译工具是DTC。DTC工具源码在 Linux内核的 scripts/dtc目录下。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记------任务调度机制]]></title><link>https://blog.csdn.net/tmd182/article/details/135978765</link><guid>https://blog.csdn.net/tmd182/article/details/135978765</guid><author>tmd182</author><pubDate>Fri, 02 Feb 2024 17:24:59 +0800</pubDate><description><![CDATA[任务的切换与Tick和PendSV中断有关，最终的切换在PendSV中断通过调用vTaskSwitchContext函数完成，与tick中断相关的函数是xTaskIncrementTick。上述示例中，实际创建了4个任务，xTaskStartScheduler函数会创建优先级为0的空闲任务。pxReadyTaskLists是一个链表数组，大小与优先级的数量相同。状态的切换就是把任务放进不同的链表的中，如调用vTaskDelay后，任务将会被移进pxDelayedTaskList等链表。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记-------任务创建函数详解]]></title><link>https://blog.csdn.net/tmd182/article/details/135976194</link><guid>https://blog.csdn.net/tmd182/article/details/135976194</guid><author>tmd182</author><pubDate>Thu, 01 Feb 2024 17:04:00 +0800</pubDate><description><![CDATA[根据以上代码可知，在执行任务时，pxTaskCode将被写入PC寄存器中，pvParameters被写入R0寄存器中。任务创建函数执行完后，任务所需的栈示意图如下。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记-------基础知识]]></title><link>https://blog.csdn.net/tmd182/article/details/135900093</link><guid>https://blog.csdn.net/tmd182/article/details/135900093</guid><author>tmd182</author><pubDate>Sun, 28 Jan 2024 22:05:55 +0800</pubDate><description><![CDATA[一般借助存储器访问指令，通过内核寄存器Rx(x=0~12)完成存储器的读写。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记-------中断管理]]></title><link>https://blog.csdn.net/tmd182/article/details/135856043</link><guid>https://blog.csdn.net/tmd182/article/details/135856043</guid><author>tmd182</author><pubDate>Thu, 25 Jan 2024 23:38:59 +0800</pubDate><description><![CDATA[ISR的优先级高于任务。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记-------软件定时器]]></title><link>https://blog.csdn.net/tmd182/article/details/135790982</link><guid>https://blog.csdn.net/tmd182/article/details/135790982</guid><author>tmd182</author><pubDate>Thu, 25 Jan 2024 22:22:44 +0800</pubDate><description><![CDATA[在FreeRTOS中，软件定时器基于系统滴答中断(Tick Interrupt)。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记--------事件组]]></title><link>https://blog.csdn.net/tmd182/article/details/135684453</link><guid>https://blog.csdn.net/tmd182/article/details/135684453</guid><author>tmd182</author><pubDate>Fri, 19 Jan 2024 11:50:16 +0800</pubDate><description><![CDATA[可以使用事件组传递资源状态。某一位不能是某些位中的某几个事件发生后，唤醒所有符合条件的任务。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记--------互斥量]]></title><link>https://blog.csdn.net/tmd182/article/details/135528193</link><guid>https://blog.csdn.net/tmd182/article/details/135528193</guid><author>tmd182</author><pubDate>Thu, 11 Jan 2024 17:21:19 +0800</pubDate><description><![CDATA[互斥量就是二进制的信号量，都是用来传递状态。与二进制信号量不同的是，互斥量的初始值是1。官方源码如下，由源码可知初始值为1(通过xQueueGenericSend函数向队列中写入一个数据)。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记-------信号量]]></title><link>https://blog.csdn.net/tmd182/article/details/135508561</link><guid>https://blog.csdn.net/tmd182/article/details/135508561</guid><author>tmd182</author><pubDate>Thu, 11 Jan 2024 09:30:14 +0800</pubDate><description><![CDATA[队列可以用于传输数据，但不需要传输数据时，可以使用信号量，信号量传输的是状态。信号量的示意图如下所示：在FreeRTOS中，信号量本质就是队列，是一个只关心队列长度，不关心队列数据内容的队列。由官方源码可知， 创建信号量时实际创建的是uxItemSize为0的队列，使用uxMessagesWaiting表示计数值。当计数值达到最大时释放信号量，将返回错误（队列是数据满时再写入数据，如果没有超时，则阻塞。有关队列内容可参考文章信号量有两种：二进制信号量和计数型信号量。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记---------队列]]></title><link>https://blog.csdn.net/tmd182/article/details/135428253</link><guid>https://blog.csdn.net/tmd182/article/details/135428253</guid><author>tmd182</author><pubDate>Tue, 09 Jan 2024 01:14:56 +0800</pubDate><description><![CDATA[队列写数据的方式有两种：向尾部写入，向头部写入。队列向尾部写入数据的过程如下图所示：每次向尾部写入时，先写入数据，pcWriteTo再自加uxItemSize。每次读取时，pcreadFrom先自加uxItemSize，再读取数据。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记--------任务管理]]></title><link>https://blog.csdn.net/tmd182/article/details/135399053</link><guid>https://blog.csdn.net/tmd182/article/details/135399053</guid><author>tmd182</author><pubDate>Sat, 06 Jan 2024 15:17:18 +0800</pubDate><description><![CDATA[在默认调度算法下，对于同优先级的任务，它们轮流执行，轮流的时间基准由tick中断决定，由定时器产生固定间隔的中断。可以修改中断产生的时间间隔。1000Hz表示间隔为1ms。]]></description><category></category></item><item><title><![CDATA[FreeRTOS学习笔记-------任务创建与删除]]></title><link>https://blog.csdn.net/tmd182/article/details/135397086</link><guid>https://blog.csdn.net/tmd182/article/details/135397086</guid><author>tmd182</author><pubDate>Fri, 05 Jan 2024 00:26:49 +0800</pubDate><description><![CDATA[FreeRTOS任务创建、删除、优先级、栈等]]></description><category></category></item><item><title><![CDATA[嵌入式Linux LED驱动开发实验]]></title><link>https://blog.csdn.net/tmd182/article/details/133280020</link><guid>https://blog.csdn.net/tmd182/article/details/133280020</guid><author>tmd182</author><pubDate>Tue, 26 Sep 2023 12:12:54 +0800</pubDate><description><![CDATA[1] 【】I.MX6U嵌入式Linux驱动开发指南V1.71[2]]]></description><category></category></item><item><title><![CDATA[字符设备驱动开发]]></title><link>https://blog.csdn.net/tmd182/article/details/133097833</link><guid>https://blog.csdn.net/tmd182/article/details/133097833</guid><author>tmd182</author><pubDate>Thu, 21 Sep 2023 21:09:41 +0800</pubDate><description><![CDATA[字符设备就是一个一个字节，按照字节流进行读写操作的设备，读写数据是分先后顺序的。比如我们最常见的点灯、按键、IIC、SPI，LCD 等等都是字符设备，这些设备的驱动就叫做字符设备驱动。]]></description><category></category></item></channel></rss>