
ARM
grey_csdn
这个作者很懒,什么都没留下…
-
原创 343_S32K144 CRC模块的使用
完整的S32K144的学习汇总如下:https://github.com/GreyZhang/g_s32k144 CRC模块的功能相对来说简单,但是要计算CRC的校验首先得有一致的多项式以及seed。其实,CRC校验的软件算法也非常多,在此之前我自己使用的更多的也是软件的算法。如果翻看博客的话,应该还有一个测试的记录。如果CRC切换成了硬件,速度以及可配置的简单程度都要好很多。 通常,网络传输有一个推荐的多项式。这个在很多工具中也是一个默认的配置,比如我接触到的INCA的CRC多项式...2020-06-07 19:04:11432
1
-
原创 233_S32DS共性特征学习
完整的S32K144的学习汇总如下: https://github.com/GreyZhang/g_s32k144 开始正式的开发操作之前,继续做准备性学习。 上面的描述,对我来说能够提取出来的信息其实就是两条:1,这其实是GNU的开发工具链; 2,这个工具的使用没有代码大小限制。 以上是一个一般的软件开发的步骤或者过程,可以类比我们实际的经验,或者...2020-02-13 23:01:03523
0
-
原创 232_S32DS for ARM快速上手文档学习
完整的S32K144的学习汇总如下: https://github.com/GreyZhang/g_s32k144 前面看了S32DS for ARM的FAQ文档,这次看看S32DS for ARM的快速上手说明文档。如果不看文档说明书直接凭感觉操作也能够很短时间内让很多功能用起来,但是我一直觉得那不是最佳的实践路线。在类似的工作对比中,很长的一段时间内我似乎在这方面都...2020-02-13 22:33:042599
0
-
原创 228_S32DS上手的部分准备信息整理
完整的S32K144的学习汇总如下: https://github.com/GreyZhang/g_s32k144 这几天复工了,自己折腾自己爱好的时间少了,加上前面几天花了比较多的时间在学习lisp,S32K144的学习有点延迟了。今天,稍微前进一步,先来了解一下我选择的S32K144的开发工具S32DS for ARM。 如何快速而全面掌握相关的知识呢?我...2020-02-12 21:50:171091
0
-
原创 220_S32K144 EVB资料整理
完整的S32K144的学习汇总如下: https://github.com/GreyZhang/g_s32k144_driver 开启S32K144的探索旅程,首先熟悉一下手里的开发板,搜集一下资料。 这是官网找到的一部分介绍信息,看了一下还是中文的。我有点怀疑我的理解力或者是NXP的工作人员的严谨程度。其实在同一页网页上,这个S32K144的内核介绍了两...2020-02-09 22:00:20784
0
-
原创 219_S32K144 MCU信搜集
完整的S32K144的学习汇总如下: https://github.com/GreyZhang/g_s32k144_driver S32K系列是我很久之前就关注的NXP的MCU,车规级别且考虑了功能安全的设计。之前计划了很久去学习一下,但是真正上手去做的学习工作很少。这段时间正好跟我自己的工作轨道有一点重合,找出之前买的开发板来学习一下。 首先,搜集一下大概的...2020-02-09 19:52:351100
0
-
原创 156_S32DS for ARM空工程增加SDK
手头有一个S32K144的开发板,近段时间也开始折腾起来了。不管是哪个板子,只要是S32K系列,这个经验应该都是通用的。 如果使用SDK,其实直接再创建工程的时候就选择SDK应该是最简单的。如果没有选择的话,也是可以后续增补的。增补方法也很简单: 工程属性中选择SDK,之后出现如下界面: 在这里可以追加选择SDK...2019-10-17 09:32:27186
0
-
原创 148_STM32CubeIDE自动创建FreeRTOS Task
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 其实,手写代码自然是很多功能全都可以实现。但是摸索中发现STM32CubeIDE的开箱即用理念真的做的不错。诸如FreeRTOS,不仅不需要移植,而且在IDE中增加了Task的创建管理。用了一下,确实是比自己手写简单多了,简单的几个参数信...2019-10-04 14:15:061786
0
-
原创 149_基于FreeRTOS实现RTC的时间输出
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 这是一个前几天就想整理的一份例程笔记,但是由于自己对FreeRTOS的了解不多,遇到了一点小障碍。FreeRTOS中集成了RTC的代码之后总是会进入异常中断,后来发现其实是堆栈分配的原因。 这里把之前的这个例程补充一下...2019-10-04 14:45:54549
0
-
原创 150_STM32F407按键识别
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 这个例程是我看了别人做的例程代码之后消化吸收按照自己的思路写的,主要的区别在于我的开发基于FreeRTOS,而我看到的例程仅仅是简单的演示功能而已。 按键识别,一个主要的概念在我现在接触的汽车电子中是常用的的debance...2019-10-04 16:51:42257
0
-
原创 151_STM32F407蜂鸣器驱动
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 今天整理一下蜂鸣器的驱动。 其实,蜂鸣器的驱动是很简单的,本质上就是一个PWM波的驱动。我看了一下说明,输入的驱动波形一般是2~5KHZ。然而,我砍了下别人的Demo,做了一个周期600ms的PWM也能够驱动蜂鸣器。...2019-10-05 21:31:32474
0
-
原创 152_STM32F407窗口看门狗
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 之前只用过简单的看门狗,窗口看门狗简单看过一次没有看明白,这一次算是补课了。窗口看门狗的机理其实是很简单的,所谓的窗口其实是一个计数器的区间范围。这个计数器是一个自动递减的计数器,窗口则限定了喂狗的数值上限和下限。不在此范围内进行喂狗,或...2019-10-06 12:15:16140
0
-
原创 153_STM32F407独立看门狗
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 独立看门狗比窗口看门狗应该简单多了,这也是我之前用过的看门狗功能。这个只要在规定的时间内能够喂狗就不会出现复位。 使用CubeIDE生成这个驱动真是太简单了,过程略去。只需要自己周期性调用喂狗函数即可。我实现的接口如下...2019-10-06 12:44:55199
0
-
原创 154_STM32F407 FreeRTOS修改tick时钟源
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 在PPC平台的时候,任务调度或者OS的TB一般选择一个PIT作为触发源,时间会比较准确。ARM平台有一个专门的SysTick,似乎是专门用来做这个的,而且我在其他的ARM芯片上做开发的时候发现官方的例程也是基于这个。使用STM32F407...2019-10-06 14:10:05416
0
-
原创 145_STM32F407_FreeRTOS中串口打印出现OS卡死问题解决
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 移植了一个OS,开始运行还可以,发现加了printf之后打印不了几次就出现调度卡死的现象。我没有直接找到解决的方法,至少在我的开发环境中没有找到。不过最近正好在用两个两个芯片也用了两个开发环境,在另一个开发环境中也遇到了类似的问题。另外的...2019-09-28 21:27:20539
0
-
原创 144_STM32F407_FreeRTOS简单运行
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 我选择的IDE中有一个开箱即用的FreeRTOS,用起来还是很简单的。只要选择相应的功能即可,之前有一点老版本的FreeRTOS的经验,上手也比较容易。 集成的版本是10.X的版本了,没有查看是否是封装的问题,直接看到...2019-09-26 21:18:11438
0
-
原创 143_STM32F407_简单的周期性任务调度
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 前面做了一个RTC的例程,在main函数的while循环中通过计数器累加做了一个简单的延时间隔。但是从打印的效果看,不是很精准。接下来实现一个稍微精准一点的任务调度。 其实,像这么少的任务量,直接跑个中断ISR也就可以...2019-09-25 22:35:07304
0
-
原创 Keil ARM编译器命令行编译中实现头文件依赖的自动推导
接触了几个编译器之后发现编译器基本上都有依赖文件的自动推导功能,最初掌握这个功能是在使用gcc的时候。后来发现其他的编译器基本上也有这个功能而且基本上都与gcc有着一样的语法。 今天简单试探了一下Keil编译器,没有查什么文档,纯粹是按照之前的老路子输入猜测的命令试了一下,还真是存在! 我在一个文件夹放了一个C文件一个头文件,C文件中包含了头文件2017-09-11 19:04:131218
0
-
原创 Keil创建ARM芯片程序工程
近期接触了ARM芯片,学习的条件从软硬件上来说都不具备。等待公司解决这种问题是很难的,在这方面我基本上放弃了对公司的最后一点幻想。我觉得,如果想要掌握什么技能或者去接触一点比较有意思的东西,还是得考自己去投入、努力。通常,类似的学习基础环境在淘宝上都能够解决。 买了开发板,又找来了Keil试用版本。接下来基本上就可以开始不断挖掘知识金矿了!从最简单的开始,创建一个简单的工2017-09-03 00:28:221243
0
-
原创 Keil ARM开发 error L6236E错误解决
顺利创建了第一个Keil工程却发现不能完成链接,出现了一个下面这样的报错:.\Objects\demo_simple.sct(7): error: L6236E: No section matches selector - no section to be FIRST/LAST.通过反复尝试发现,出现这个问题的原因是缺少了启动代码。只需要在pack管理中增加启动代码即可。具体解决方2017-09-03 00:39:518534
2
-
原创 Win10安装ST-Link驱动
从今天起,算是正是开启了ARM探索之路了。首先准备一下自己需要的PC环境,根据手头这个小玩意儿调试器的要求安装一下驱动。 1,驱动包下载后,解压如下:2,执行dpinst_amd64.exe启动安装 说明:从驱动包看,驱动应该支持32位和64位的系统。我个人的电脑是64位的,先尝试安装一下64位软件试试。3,安装2017-09-03 10:40:149554
4
-
原创 串口下载代码CH340驱动安装
串口调试是我一直没有掌握的一项技术,最早接触的时候是在大学。虽说那时候买了单片机的板子,但是也没有真正去学习过什么。后来工作中汽车电子开发基本上也没有用到串口调试,这次正好趁着入手了ARM板子学习一下。 首先安装一下CH340的驱动。1,找到驱动包之后,其实安装包中的可执行文件就一个。这样处理起来应该最简单了,因为没有其他的选择!直接运行SETUP.EXE2017-09-03 11:27:485406
5
-
原创 116_ARM开发板烧写工具STLink使用
首先做了一个最简单的测试,直接上来就使用,直接能够用我我最期待的状态。安装驱动的过程中还是出了问题: 找到相应的安装包直接安装,安装包如下: 我自己的电脑是64bit,选择安装了amd64,提示信息如下: 看上去似乎是安装成功了。查看一下设备管理器如下: 之后,keil环境中选择...2019-05-26 14:03:16368
0
-
原创 136_STM32F407开发环境搭建
整个学习的系列整理参考Github:https://github.com/GreyZhang/g_stmf407 目前网络的学习教程似乎基本上都是基于MDK Keil或者IAR搭建开发环境,这两个开发工具很好,但是都有一致的特点:对于学习者来说价格昂贵,不值得自己为了学习而掏这么一大笔银子。而使用盗版,一是自己的良知上的问题,二是自己怎么着也是触碰了一个法律以及道德的红线。我...2019-09-22 11:56:251012
0
-
原创 137_STLink驱动安装以及调试器使用测试
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 在综述中我写了,调试器只要具有烧写以及简单的变量显示灯功能基本上就可以用于学习了。诸如断点、追踪等等一系列的功能在我看来都是高级功能。我觉得程序员做软件调试最需要的其实是一个printf。 调试器我选择了STLink,...2019-09-22 14:40:18199
1
-
原创 138_STM32F407_hello world
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 简单翻阅了一下这个IDE的文档,我找到了标准输出的IO可以在IDE的console中支持的说明。 不过,测试中的printf并不能工作。然而,我找到了一个IDE中称之为现场表达式的功能,可以实时显示变量的变化。我觉...2019-09-22 15:29:58161
0
-
原创 139_STM32F407_LED闪烁实现
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 这一次尝试实现一个LED的闪烁,其实很多工程师会把这个叫做嵌入式版本的hello world。也有人说:“给我一颗LED我就可以调试所有的嵌入式系统”。这个功能虽简单,但是确实一个以小见大的功能,最常用的一个地方便是用这个现实一个二值信号...2019-09-22 16:47:16608
0
-
原创 140_STM32F407_周期性定时器中断实现
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 我选择的IDE对于基础功能来说,基本上是一个开箱即用的环境。不过,我没有找到文档性的说明,好在代码本身的注释就是一个很好的文档说明。 开始之前,我想实现的是一个1ms的周期性中断。看了一下这个芯片的设计,似乎设计之初就...2019-09-22 21:27:39840
0
-
原创 141_STM32F407_prntf与hello world
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 嵌入式里面的printf函数很多时候是通过串口来实现的,我串口功能接触的少,但是这个功能应该说是早点开发出来有好处,毕竟也是一个很好的调试手段。 查了一下资料,实现printf函数需要自己实现一个putc的功能。我参考...2019-09-24 22:08:36112
0
-
原创 142_STM32F407_RTC
整个STMF407系列的学习汇总链接如下:https://github.com/GreyZhang/g_stmf407 看了一下手头的资料,发现STM32F407是有一个RTC的,通过这个可以方便地进行时间时间的处理。本想先整理一下这个功能,后来发现没有一个很好的显示手段,于是先做了一个基于串口的printf函数出来。 接下来看看RTC...2019-09-25 21:33:40360
0
-
原创 串口给STM32阿波罗开发板下载程序
串口驱动安装好的状态下,把开发板通过USB线连到电脑上就会出现一个模拟串口。从截图看,我的电脑上出现的是COM4。 大致的硬件连接注意点如下: 一是画出来的跳线帽都要按照图中的进行连接,还有一个重要的一点就是按下右上角那边画出来的电源按钮。按下按钮之后,右下角的灯会亮。此时,板子通过串口进行供电,也可以进行程序的下载。2017-09-04 00:21:421646
0