嵌入式系统设计第二次课+stm32cudemx安装
4,20 第二次课
wc,我还是不适合上课,老师在讲操作系统的相关概念等介绍,我想还是尝试下跑一个freertos吧。
开搞!
上课内容
等等,老师讲的Xworks好像挺有用
共享内存或者通过网络来实现通信,不同系统之间的功能模块可以直接用,在一个cpu上,运行多个系统。需要做的就是模块时间的通信。
嵌入式操作系统
堆栈指针,在初始化的时候要指定一个代码初始地址
系统可以通过远程升级或者本地升级
引导之后需要做一些初始化设置,信号量等,然后可以根据优先级执行多任务等,以及抢断操作。(这也是为什么实现实时)。
分类
硬件选型,可以根据带不带浮点运算,支不支持网络运算,有没有AD,有没有SPI。需不需要os
设计规格说明书,就是硬件和软件的选材等。
功能性需求:模拟信号,数字信号等输入输出,操作方式(触碰,按键),是不是便携式。
非功能性,低功耗,便携式.
考虑成本。
逐步细化
前期的时候细节都需要去考虑!!!
最好在前期的项目上再进行!!!
主流的总线:
搞freertos
参考STM32CubeMX介绍、下载与安装
在这里先根据STM32CubeMX,首先需要安装java
这里已经装了
软件下载地址
解压以后竟然后一个.linux的文件。还可以在linux下使用,以后可以考虑看看。
通过管理员方式安装
这里可以去JAVA下载,安装时提示卸载以前的版本。
配置
HAL库
参考【STM32】STM32 CubeMx使用教程一–安装教程
什么是HAL固件库?
STM32 HAL固件库是Hardware Abstraction Layer的缩写,中文名称是:硬件抽象层。HAL库是ST公司为STM32的MCU最新推出的抽象层嵌入式软件,为更方便的实现跨STM32产品的最大可移植性。HAL库的推出,可以说ST也慢慢的抛弃了原来的标准固件库,这也使得很多老用户不满。但是HAL库推出的同时,也加入了很多第三方的中间件,有RTOS,USB,TCP / IP和图形等等。
和标准库对比起来,STM32的HAL库更加的抽象,ST最终的目的是要实现在STM32系列MCU之间无缝移植,甚至在其他MCU也能实现快速移植。
并且从16年开始,ST公司就逐渐停止了对标准固件库的更新,转而倾向于HAL固件库和 Low-layer底层库的更新,停止标准库更新,也就表示了以后使用STM32CubeMX配置HAL/LL库是主流配置环境;
我选择在线安装hal库
基本的配置就配置好了。