- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于STM32的嵌入式系统原理与设计第四篇章.ppt
基于STM32的嵌入式系统原理与设计第四章工程项目实例
主讲教师:
EMAL:
博客:/u/2630123921
交流论坛:/bp
开发板和教程:
PPT原作者:卢有亮
有修改请发修改稿到论坛以更有利于其他人教学!
要点
需求分析
工程设计
软件开发
设计题
第四章 工程项目实例
学到的知识要转化为成果,就要开发工程项目。
将学到的知识应用于实际,才能转化为价值。在工程项目中克服困难解决问题,才能将知识转化为能力。
本书的工程实例应用于实际的多电源检测系统工程。由于基于STM32的μC/OS和μC/GUI部分在亮点嵌入式后续的书籍中,因此,本章完成不需要μC/OS和μC/GUI的从机部分,主机部分需要μC/OS和μC/GUI,在后续书籍中给出。
本章引领读者,如何去分析和开始做一个工程。
既然是工程,就要从需求分析开始。
4.1 需求分析4.1.1 需求
MDK KEIL
需求,是用户想要达到的目标。目标没搞清楚,技术再先进也达不到理想的结果。因此,项目的开发都是从需求开始的。
1.用户是“上帝”,但不一定是专家。需求没搞清楚需要返工的时候,多批评自己而不是责怪用户。
2.与用户友好沟通,多接触多学习。
3.立下字据让用户签字确认。项目的开发应以协议或合同为准,可以满足用户额外的部分需求,有的时候用户看到产品才觉得需要做需求的改进。
4.1 需求分析4.1.1 需求
MDK KEIL
该工程项目的被测控设备如下表:
1.电源A:
被检测信号:电压,电流,过流
控制信号: 开关
2.电源B:
被检测信号:电压,电流,过流
控制信号: 开关
3.电源C:
被检测信号:电压,电流,过流
控制信号: 开关
4.电源D:
被检测信号:电压
控制信号: 开关,发射
5.功率设备:
被检测信号:电压(表示功率)
控制信号:数字量5根,根据功率查表进行设置。
4.1 需求分析4.1.1 需求
MDK KEIL
需要以图形的方式在480X272的屏幕上显示各电源电压电流值,需要以触摸的方式按键控制各电源及功率设备的开关,需要输入功率值以5根数字信号控制功率设备。
功率设备与电源之间需要隔离。
4.1 需求分析4.1.2 分析
MDK KEIL
需要检测7路模拟电压,由于功率设备和电源之间去要隔离,因此需要采用主从机的模式,主机和从机之间需进行高压隔离。
主机应具备带触摸液晶屏,需要的接口如下:
1. 1路RS232接口,通过隔离电路与从机通过RS232相连,发送命令和接收数据。
2. 1路模拟输入,检测功率信号。
3.10根GPIO输出,其中5根设置功率,4根设置4个电源的开关,1根用来设置电源4的发射。
4.2 工程设计4.2.2 硬件端口设计(分配)
从第2章的硬件设计来看,亮点STM32开发板的功能完全满足了项目的需要,有独立的模拟和数字接口,因此使用该开发板就可以实现项目的需要,对应的问题转化为分配具体的管脚功能。有多路的串口,因为串口1已经转为USB接口输出,工程中采用串口4就可以满足项目的需要。
亮点STM32开发板的模拟接口(附录A,P234 表A-4)还提供了4路的GPIO,因此不需要采用其他接口了。
端口功能分配见P224表4-1
4.2 工程设计4.2.3 从机软件设计
采集7路模拟量,并将其值通过串口发送给主机
在主循环中实现即可。注意对7路模拟量都需要通过一个积分滤波的方式进行滤波,然后周期性的发送给主机。考虑采用DMA方式采集AD数据,
设计软件流程图4-2
4.2 工程设计4.2.3 从机软件设计
发送数据格式(简单协议)
4.3 软件开发4.3.1 宏和变量定义
为方便系统修改,增强系统的可读性,定义了AD采集次数和AD通道数,过流信号的管脚和通道等宏,这些定义在bp_config.h中。
4.3 软件开发4.3.1 宏和变量定义
全局变量在主程序main.c中定义,定义了一个二维数据AD_Value用来存储每个通道一次DMA采集缓存的采集数据,一维数组After_filter用来存放滤波后的数据。
4.3 软件开发4.3.2 主程序编程
初始化变量,时钟使能,初始化串口,初始化ADC和DMA,启动DMA
4.3 软件开发4.3.2 主程序编程
启动AD转换,延时等待转换完成后暂停转换,这时缓冲区中为采集到的数据。调用函数对缓冲区的采集数据进行处理,将滤波后的数值存储到全局数组CJDY中
4.3 软件开发4.3.2 主程序编程
主循环下半部分,读
您可能关注的文档
最近下载
- 2024年银行考试-授信业务资格笔试参考题库含答案.docx
- 2023-2024学年重庆市高二上册数学期末试卷1(人教版).docx VIP
- 园林景观施工技术交底记录大全.docx
- 期末周末作业题(含解析)2024-2025学年人教新目标(Go for it)版英语八年级上册.docx VIP
- 2024山西省农商银行招聘1340人笔试模拟试题及答案解析.docx
- 人教版2024-2025学年度第一学期七年级期末数学试卷.docx
- 可信数据空间建设及应用参考指南1.0.docx
- 2024江苏高考政治真题(原卷版).docx
- 三年级数学上册专项练习(拔高题)北师大版.pdf
- Rhino5.0&KeyShot产品设计实例教程(第2版).ppt VIP
文档评论(0)