完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
网上大家都在讨论和学习,但是对于架构这个基本问题却没几个人讨论。个人认为
有个好的架构是写好代码的基础,可以使后期的调式工作事半功倍!! 1、 架构组成:我的程序代码分为四种结构 a) 顺序执行代码 定义:按照顺序逐行执行的代码 优点:是思路简单,代码可靠不易***扰。 缺点:占用资源 用途:只用来各种变量、函数的定义,硬件的初始化程序 位置:main.c的开始一直到main函数的while函数之前 b) 空闲执行代码 定义:在CPU空闲的时候才执行的代码 优点:不占用资源 缺点:执行的实时性不能保证 用途:非实时任务,调试信息输出,不重要的状态指示 位置:main.c的main函数的while函数内部 c) 中断执行代码 定义:由软硬件事件打断整个程序而执行的代码 优点:可以保证实时性,各种中断可以安排优先顺序 缺点:关系相对复杂,互相之间容易干扰 用途:触发性的代码,比如接收数据,响应外部设备,按钮的相应 位置:STM32f10x_it.c内部 d) 循环执行代码 定义:按照时间周期执行的代码 优点:定期自动执行 缺点:实时性不好 用途:需要周期执行的任务,状态检查及相关信息输出,数据记录 位置:stm32f10x_it.c的SystickHandler内部 e) DMA自动代码 定义:不需要主程序干预,外设自动执行 优点:自动刷新数据,不占用CPU资源 缺点:不能控制 用途:数据通信存储,AD转换 位置:不需要 2、架构执行顺序图 相关链接: |
|
相关推荐
2 个讨论
|
|
ULink2 和keil4 连接显示 SWD通讯失败,硬件在另一台电脑上是可以连接成功的,有没有大佬能帮忙解答一下的
1663 浏览 0 评论
2235 浏览 1 评论
1004 浏览 0 评论
1026 浏览 0 评论
QuarkPi-CA2 RK3588S卡片电脑:6.0Tops NPU+8K视频编解码+接口丰富,高性能嵌入式开发!
2167 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12932 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-4-23 11:41 , Processed in 0.601640 second(s), Total 50, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191