3367|13

7815

帖子

57

TA的资源

裸片初长成(中级)

楼主
 

【碉堡了水军团】基本程序的情形 [复制链接]

      不太会起,这里简单解释一下。所谓“基本程序”,是由我来弄一个基本的例程,所谓程序框架,也最终由这个体现,它将包含和完成大多数软件的“基础设施”。
      到需要一步一步开发,才能更具体的了解 需要的功能,所以我现在只是做我已经想到的(和来得及完成的)部分,其他的接下来接着做,并且希望各位多多提意见。我才知道更多的需求,以尽快加入。

      当前,我只是重新整理了一个相当于空壳的程序,我把HAL(也就是stm32库的新形式cube下的 ST库)封装成库,这样我们以后再创建程序就无需再考虑任何和程序底层有关的一些设置和宏之类的选择。(我在头文件中增加了一两个宏,官方下的库稍有不同,以避免一些对IDE的依赖。)

      前几天我电脑中毒,我重新还原了系统,git的设置之类的东西都没了,所以我得花点时间,先把这些东西搞起来,以后才可以共享代码。——当然,我也可以选择现在简单发个压缩包,但因为今晚我估计没太多办法把这个 基础例程 做好,所以暂时不发出来。
      我用的是我自己惯常使用的方式组织代码,也许和你们平时自己的方式有点不同,我希望,可以听到多些讨论,如果这个方式还不错,请大家先跟着我的方式走。

       贴说说我第一步的计划和当前进展情况。


此帖出自stm32/stm8论坛

最新回复

点赞,,点赞。。。。。  详情 回复 发表于 2015-10-27 13:13

赞赏

1

查看全部赞赏

点赞 关注(1)
个人签名

强者为尊,弱者,死无葬身之地

 

回复
举报

7815

帖子

57

TA的资源

裸片初长成(中级)

沙发
 
因为这个板子板载的资源本来就比较多,这个项目涉及的内容也多,考虑到我现在只是整体先把握整个程序的组织方式。
所以后续的东西太具体的我先不管。
那这个时候所谓的程序框架,我个人觉得,最重要的其实就是三个部分:
1.多任务机制;
2.全局性的存储模块;
3.人机界面。

之前的帖子里我提过,多任务机制我就用freertos的多任务机制来完成。
因为它已经足够了,而且简单——甚至不怎么需要移植,freertos提供了大量的例程,其中就直接包括这个板子的,而且还是用iar的例子。

目前遇到的情况是,在开始进一步把freertos加到程序里的时候,我需要首先有一两个简单可用的东西,来让我验证多任务已经正常跑了起来,正常情况下来,
LED和串口打印是最简单的。
但不巧的是,我查了一下这个板子的pdf图,它上面没有LED(那个LD2,看图可知,它只是个电源指示灯)。
——刚重新仔细看了看,其实板子上有挺多LED,但是它们大多都是USB等的其他外设的指示灯,明天我看看怎么找个合适的来先当着个普通LED用着先。
假如没有合适的,我只能考虑先将emwin跑起来先,反正这个也最后的用上的。

此帖出自stm32/stm8论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

板凳
 
最后特别要提一下的是 这个 全局存储模块。
这里简单解释一下它的意思。

因为这个程序里会涉及多个需要永久性存储的数据(比如 温度(传感器读到的)值 等)
它们需要长期永久性读写。
它的用途很明显也很直接,那就是可以让每个任务好好的读写这些内容,最大程度降低模块间本不需要的耦合。

考虑到它们的数据相对简单,所以打算采取 数据id+数据内容+一些必要的标志位等组成数据项。

关于这个,我之前在做的时候也没有找到合适的现成模块,而我自己在做的一个针对这个而做的模块虽然比较简单,但我还没完成。

我看到大家都会下意识推荐fatfs
但不知是我不了解fatfs(我确实没用过这个东西),还是怎么,我总觉得,单纯有了文件这个东西,还不足以解决上述这种数据项存储的需求,所以,可能还是要按照我原来的做法,做一个自己的 数据存储模块,或者你们对fatfs比较了解,有啥具体的建议?
此帖出自stm32/stm8论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 

回复

384

帖子

0

TA的资源

一粒金砂(高级)

4
 
沙发瞅瞅热闹。。。
此帖出自stm32/stm8论坛
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

5
 
前排围观
此帖出自stm32/stm8论坛
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

1891

帖子

2

TA的资源

纯净的硅(中级)

6
 
强势围观。。。
此帖出自stm32/stm8论坛
 
个人签名
分享铸就美好未来。。。




 
 

回复

6423

帖子

17

TA的资源

版主

7
 
对于电脑能中毒的表示呵呵了
此帖出自stm32/stm8论坛
 
个人签名training
 
 

回复

6040

帖子

202

TA的资源

版主

8
 
教主外出旅行,还不忘琢磨程序,赞一个!
此帖出自stm32/stm8论坛
 
 
 

回复

3416

帖子

0

TA的资源

纯净的硅(高级)

9
 
此贴已水
鉴定完毕
此帖出自stm32/stm8论坛
 
个人签名

So TM what......?

 

 

回复

34

帖子

1

TA的资源

一粒金砂(中级)

10
 
MARK
此帖出自stm32/stm8论坛
 
 
 

回复

3238

帖子

5

TA的资源

五彩晶圆(中级)

11
 
支持一个
此帖出自stm32/stm8论坛
 
个人签名淘宝:https://viiot.taobao.com/Q群243090717
多年专业物联网行业经验,个人承接各类物联网外包项目
 
 

回复

1891

帖子

2

TA的资源

纯净的硅(中级)

12
 
点赞,,点赞。。。。。
此帖出自stm32/stm8论坛
 
个人签名
分享铸就美好未来。。。




 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

13
 
昨晚,把freertos的多任务跑起了,用的是例程里的源码,也是v821的。
之所以这么折腾一番,一个是为了完全了解如何设置,选用什么源文件可以实现功能,而不是莫名其妙的全用它原来的设置,到时候遇到要设置或者裁剪时遇到麻烦。
另一个是我觉得它的组织方式层次太复杂,而本不需要如此。

今晚回去把github折腾好,再写必要的解释文档,然后上传,各位兄弟就可以开始用了。

至于下一步我本来是想搞emwin的,但考虑到water已经在搞,我搞就是重复,所以我可能先考虑存储部分啥的。具体再说
此帖出自stm32/stm8论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

14
 
github上不到,开始以为是网络问题。
听柱哥他们说,似乎最近都上不到,被墙了还是怎么回事。
今晚白整理了这个文档,还差最后做远程推送这一部分的步骤。

所以眼下会考虑先放下github远程推送来分这个程序。

而是选择其它方式。

所以现在考虑的是如何写简单的解释说明文档 和 剩余的一些关于 freertos任务的 细节的说明。
此帖出自stm32/stm8论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表