自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小灰笔记

学习笔记,仅用于自我参考回忆!

  • 博客(42)
  • 论坛 (1)
  • 收藏
  • 关注

原创 331_S32K144 CAN FIFO初步

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习,这次来看看CAN的FIFO接收模式。FIFO的功能是使用多个buffer级联,组成一个队列的方式实现队列的报文接收。使用FIFO,可以让驱动软件设计更加简洁。同时,FIFO在接收的能力上也是很强的,可以让我们在后期软件处理上有更多的设计尝试。...

2020-03-31 22:11:19 1187

原创 330_C语言实现一个简单的状态机

最近打算认证学习一下CAN通信以及相关的协议栈,尤其是协议栈。我觉得协议栈的定制代表了一种设计的思想。值得一说的是,我在公司从事过相关的工作,但是这次学习我的方式是不借用公司的任何一点信息,更不借助于公司的任何一行代码或者是一点设备。学习的过程,也会是我在网络上遨游探索获取新知识的一个过程。 为了能够实现一个复杂一点的协议栈,我自己的想法是借助于状态机。或许,这时候诸如MATLA...

2020-03-31 08:10:21 253

原创 329_S32K144 CAN波特率修改

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习,今天做一个简单一些的尝试,修改CAN的波特率。看了前面的CAN的简单实现,我感觉这个应该很容易。 常见的CAN的波特率配置有三种,250K、500K以及1000K。在使用的时候,一般分别对应的场景需求有J1939、UDS以及BootLo...

2020-03-30 23:31:51 706

原创 328_S32K144获取CAN的默认配置

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习探索,这次看看CAN默认配置获取功能。这个函数之前在看文档的时候是看到过的,但是一直没在意。主要原因可能是因为我并不是很清楚这个接口可以做什么用。难道是用于反初始化之类的操作? 看着相应的信息,其实也是很熟悉,这部分我们打开S32DS...

2020-03-29 21:24:23 1082

原创 327_S32K144 CAN接收功能初步

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 前一阵子花了太多的时间来学习lisp,暂且稍微换一下相应的步伐。继续S32K144的学习,今天来看看CAN的接收初步。简单起见,我直接使用SDK进行测试。 注意到文档中的几个关键点: 为了能够使用CAN的驱动,首先得调用这个初始化的函数。这部分我们...

2020-03-29 17:01:54 1704

原创 326_common lisp for循环

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,学了这么久了,一直想找一个类似其他编程语言中的循环结构。今天终于接触到了,可以使用for循环。 先看一个例子: 这个就是我们熟悉的for循环,采用的就是数值的判断。跟我们在C语言中用到的方式很类似。不过...

2020-03-28 21:03:42 111

原创 325_common lisp带有填充指针功能的array

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次来看看带有填充指针功能的array。 上面我们定义了一个维度为5的array,但是从结果看确实一个空的array。我们查看一下对象具体信息如下: 其实,这个定义之后是分配好了相应空间的,只是现...

2020-03-27 22:28:00 109

原创 324_common lisp 可调整的array

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次来看一下维度可以调整的array。 首先定义了一个数组*a1*,是一个可调整的数组。其实,看到这里,我想到了Python中的list。 最初的*a1*是一个空的array,我们在定义*a2*的时候...

2020-03-27 21:32:32 85

原创 323_common lisp prog1 prog2使用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次来看一下prog1以及prog2的使用。在此之前,我们已经用过progn,虽然是在emacs lisp中。在common lisp中,其使用方式其实也是一致的。下面是一个例子。 如果使用progn,返回的数...

2020-03-24 22:28:16 190

原创 322_common lisp 查询函数

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这次来看几个common lisp中的查询函数。 从上面的结果可以看出,查询成功的时候返回相应的查询数值。查询失败的时候,返回nil。 同样的功能,也可以用于列表的查询。 这个查询功能...

2020-03-23 23:48:44 90

原创 321_common lisp complement使用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天看一下complement的使用。首先来看一个基础函数的使用,判断一个数是否是奇数。 上面的奇数判断全都OK,当然,我们的common lisp中其实也是有一个偶数判断函数的。 假设,有一个情况...

2020-03-23 07:26:57 85

原创 320_common lisp获取数组以及列表的长度或者维度

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次来看看一般的数组或者列表的长度或者维度的获取。首先,定义几个变量如下; 接下来,我们先尝试使用length函数。 我们可以成功获取到一个一维array或者list的元素数目或者说是他们的长度。...

2020-03-22 16:59:10 179

原创 319_common lisp row-major-aref使用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次看一下row-major-aref函数的使用。首先,定义两个array如下: 接下来,我们可以看看row-major-aref函数的简单使用。 这个效果看起来跟直接用aref的效果差不多,而且...

2020-03-22 16:34:07 106

原创 318_common lisp中的array以及vector

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天来学习一下array以及vector两个数据类型。其中,array可以看做是基础,而vector是一种特殊的array。Vector的特殊点在于什么地方呢?vector的特殊点是要求array的维度必须为1。相关的异同点,...

2020-03-22 11:15:22 96

原创 317_lisp匿名函数

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次重新看一下函数中的匿名函数。之前最初学习lisp的时候,这个功能有些没看懂。但是,学习于我来说就是一个曲折回旋的过程。经过时间的磨砺之后,很多东西都会慢慢掌握。 首先看一个例子: 这是一个简单的函...

2020-03-21 20:35:25 84

原创 316_S32K144 EVB 标准CAN配置

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习,这一次来做一下CAN通信功能的一个小结。说起来,这算是一个迟到的小结,因为这个SBC uja11691耗费了我一点时间,中间的过程不是很顺利。 最初的配置,还是按照能够找到的Demo开始,然后增加到我自己的工程中。但是一直不成功,于是切...

2020-03-14 21:42:14 1282 2

原创 315_common lisp中some every notany notevery函数使用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次来看一组函数的使用,分别是some、every、notany、notevery。 定义以上变量,然后接下来首先得了解一部分基础函数的使用。 上面的一系列的函数,可以用来检测某个数据对象的类型。...

2020-03-14 17:44:45 89

原创 314_common lisp cond结构

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,接下来看看common lisp中的cond结构。在此之前,先看一段代码: 为了编辑更加顺手,我在代码编辑的时候没有使用lispbox的emacs而是使用了我日常用的emacs。之后再在lispbox中编译运行,...

2020-03-14 16:31:57 82

原创 313_common lisp的布尔量

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天来看一下common lisp的布尔量。 上面是关于布尔量的一部分描述,一般来说的话,采用一个值作为FALSE,其他的都是true。而false在common lisp中一般用nil来表示。按照这个思路,我们...

2020-03-14 16:03:05 80

原创 312_common lisp中的string与array

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天来看一下string以及array的关系。先看一段文档描述: 从这一段描述,其实我们是可以知道在common lisp中,string其实就是array。接下来,做一部分测试尝试。 首先,定义一...

2020-03-14 14:57:15 72

原创 311_common lisp case结构

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次看一下common lisp中的case结构。首先,我们设计一段测试代码如下: 通过上面的测试,可以看得出,设计的函数能够识别 a b c三个关键字。 我们通过提示看一下case结构,可以看得出后...

2020-03-14 12:44:45 197

原创 310_common lisp typecase分支结构

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天再从common lisp入手学一点基础性的语言操作。今天看一下typecase。说起来,熟悉C语言的人应该大致了解这么一个类似的处理结构,因为它与C语言中的switch case结构十分相似。 上面是一个简...

2020-03-11 23:02:13 87

原创 309_common lisp引用小结

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 这个在初步分析spacemacs的配置的时候看过了,关于引用。这一次重新趟水common lisp,再做一次小结。 如果说到引用,首先得看看与之相对的求值。如同上面的数字1以及字符串hi的一个求值,我们看到的其实是最后的意义。而第三个测试,foo...

2020-03-11 22:22:11 63

原创 308_common lisp函数调用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天学习一下函数的调用。首先看看下面的这个熟悉的测试。 这也是一种函数的调用。 上面的测试中,#’的功能是获取名称为test的函数对象。从输出信息,可以看得出其属性。 既然获取到了这个...

2020-03-10 22:20:19 112

原创 307_minmea GPS报文解析模块在S32K144上的使用

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习,今天整理的这部分内容其实跟这个芯片本身没有特别紧密的联系,只是作为一个应用的尝试在这个平台上进行一下测试。 从minmea的项目中获取到的test代码,其实是在PC操作系统上进行测试的。这里,我算是切换一个方向在嵌入式的平台上进行一下集...

2020-03-08 19:53:32 258

原创 306_common lisp generic function方法简化

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天继续common lisp的学习。还是关于generic function,这一次看看方法实现的一个简洁的方式。 前面实现过一个方法,采用了defmethod的方式,这一次做一个修改如下: 也实现了...

2020-03-08 14:19:07 89

原创 305_comon lisp gerneric function初步

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次的学习对象依然是common lisp,这一次我们看一下generic function的简单使用。 之前,已经用过其他形式的函数。比如,下面的这个例子。 这是之前接触过的一些常用的函数定义以及使...

2020-03-08 11:45:30 104

原创 304_S32K144 FreeRTOS的工作时钟提升

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习,这一次看一下FreeRTOS的工作时钟修改。其实,这就是一个简单的power-mode的切换。但是,在效果上能够看得出FreeRTOS的行为的变化。这种配置,应该载我们工程创建之初就进行修改,这样会让其他的软件适配更简单。不过,从实际的体验看,这...

2020-03-08 10:29:05 454

原创 303_S32K144运行模式切换

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 继续S32K144的学习,这一次来探索一下运行模式的切换。这个功能能够让MCU进入更高速的运行模式或者是更低速的低功耗模式。其实,很多芯片都有这个功能,但是我自己的实践过程中似乎是没有什么这方面的实践经历。正好,借用这个小开发板来做一个简单的学习。 我先看了官方...

2020-03-07 22:11:41 1160

原创 302_common lisp last函数

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续学习emacs以及lisp,这一次学习的对象是last函数。学习总结直接从练习开始: 从上面的结果看,这个功能返回的似乎是最后一个元素。我们再做一个测试: 如果,我们通过cons自己来构建一个list,似乎也可以得到同样的结果。...

2020-03-07 18:39:30 92

原创 301_common lisp array初始值参数

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,今天小结的内容是创建列表时候的初始值参数。 首先,看一段测试: 这个测试,很容易让我联想到C语言中的memset函数。不过,从简洁程度或者说程序设计进化的角度来看,感觉lisp算是更加高级的语言。尽管,...

2020-03-07 16:06:24 79

原创 300_common lisp aref函数使用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续emacs以及lisp的学习,这一次来看看aref的使用。先看一份说明文档: 这里面介绍了很多aref,看起来十分复杂。其实,这是由于lisp的各种灵活性设计导致的,其实,我们需要关注的之后例子中的哪一个关于函数的描述即可。也就是,aref可...

2020-03-07 15:49:43 159

原创 299_S32K144 lptmr定时器使用

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144其实,这个应该跟看门狗的实践有很多类似点。归根结底就是一个时钟的设置。为了方便,我把这个定时器的主频设置为1M Hz,这样其实一个计数单位就是正好1us。定时器的设置我先设置为一个32位的最大值,这样应该长时间不会出现一次定时提示。这样,经过简单的初始化之后,启动...

2020-03-05 23:04:47 1777

原创 298_S32K144看门狗的使用

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144继续S32K144的学习,接下来看一下看门狗的使用。还是使用SDK,感觉可能会很简单。首先得添加看门狗的模块,添加后:为了能够计算超时,我应该先看看这个时钟信息。默认情况下,128K。我看了下这个超时的时间,类型是uint16。这样,即使是在极限超时的情况下,看门...

2020-03-03 22:47:18 671

原创 297_common lisp defvar defparameter defconstant使用

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续common lisp的学习,这一次来对比一下三种常用的全局变量的引入方式。定义如上变量。其中,前面两个创建的是动态的变量,第三个创建的是const。看上去有很多相似之处,其实绑定的内容不是很一样。上面是编译运行的效果。如果修改了+...

2020-03-03 21:44:51 120

原创 296_common lisp相等或相同判断

完整的emacs and lisp的学习集合整理如下:https://github.com/GreyZhang/g_lisp 继续学习emacs以及lisp,接下来的学习小结内容为common lisp中的相等或者相同判断。其实,对于一个C程序员来说有时候这些信息不会去做过多的关注。但是,如果是到了其他的编程语言中,有时候确实会遇到这样的问题。比如,python之中就有一个is和==...

2020-03-01 22:32:54 263

原创 295_common lisp字符串的标识符

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144这是一段我看着有点蒙圈的知识点,接下来的小结也很可能是错误的。关于字符串的标识符是什么,可以先参考一下文档定义:也就是说,这是一个对象,用来代表一个字符串。可能是一个单独的字符,也可能是一个字符串。上面是一个字符串的处理示范,由于之前接触的大部分都是list,对于...

2020-03-01 21:51:29 80

原创 294_S32K144 FreeRTOS获取剩余的heap空间

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144继续S32K144以及FreeRTOS的学习,这一次看看heap剩余存储的信息获取。在实际的工程中,随着内存不断被申请,这个资源很可能会成为短板。如果有一个可以实时查看heap剩余空间这样的功能,可以方便我们在软件的调试过程中知道当前的资源使用情况然后根据这个做相应的优化。找...

2020-03-01 20:29:46 421

原创 293_S32K144 FreeRTOS守护程序启动监控

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144继续S32K144的学习,这一次继续总结FreeRTOS的部分功能。这次总结的对象是守护程序的启动监控。关于守护程序,我个人的简单理解是只有这个程序开启了之后FreeRTOS的各项功能才能够有序展开。如果在此之前,使用了一些FreeRTOS的接口的话可能就会导致一些系统的异常...

2020-03-01 18:42:09 136

原创 292_S32K144 FreeRTOS中获取任务的优先级

完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144继续S32K144的学习,这次小结的对象还是FreeRTOS。这一次看一下任务优先级获取的一个接口。说起来,这个功能我暂时没有考虑到应该如何在我的应用中使用。但是,总归是一个可以纳入到OS本身工具箱的一个功能。为了能够获取所有任务的优先级,我们创建任务的方式有限得修改一下,增...

2020-03-01 18:23:41 165

空空如也

grey_csdn的留言板

发表于 2020-01-02 最后回复 2020-05-15

空空如也

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

TA关注的人 TA的粉丝

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