设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
如何看待HAL层
返回列表
发新帖
如何看待HAL层
[复制链接]
11
|
5
|
2021-1-27 05:13:31
|
显示全部楼层
|
阅读模式
例如,有个设备是IIC通讯,需要IO模拟IIC,可以定义hal_iic_init(),hal_iic_start(),然后设备驱动调用这些接口,如果这样,驱动层在HAL层之上,应用层不会调用HAL层,只会调用驱动层。
可如果设备是片上外设,比如ADC,如果定义hal_adc_init(),这时应用层直接调用HAL层,还是把ADC初始化放在驱动层,可如果放在驱动层,它就是一个初始化函数,感觉没什么意义。
分 -->
回复
使用道具
举报
千问
|
2021-1-27 05:13:31
|
显示全部楼层
就在此记录一下对软件分层的思考吧。
采用面向对象的思想,不管是片上外设还是其他设备,每一个都看作是独立的设备,比如片上ADC1,ADC2这是两个设备,每个设备都有自己的驱动程序,因为这里以设备为中心,故将驱动层改为设备层,有的设备需要片上外设支持,比如IO操作,所以设备层里有个HAL层,对于片上外设,就没有HAL层。
强调一下,这里HAL层属于设备层,是设备驱动程序的一部分,移植的时候,修改HAL层即可。
回复
使用道具
举报
千问
|
2021-1-27 05:13:31
|
显示全部楼层
软件框架设计中,又遇到个问题:设备层和应用层如何数据交互?
回复
使用道具
举报
千问
|
2021-1-27 05:13:31
|
显示全部楼层
虽然数据来源于设备,但需要什么样的数据,如何处理数据却取决于应用层,不同的应用可能需要不同的数据,所以将所有的数据定义放在应用层。
数据交互以函数返回值方式或者形参的方式进行,形参可以是值传递或地址传递,具体选择哪一种,实践中再考虑。
主要原则:只在应用层定义数据。
回复
使用道具
举报
千问
|
2021-1-27 05:13:31
|
显示全部楼层
嵌入式系统的软件分层是有针对性的,基于裸机的编程和调度器(freertos,ucos等)还有专用的VxWorks、linux、wince的分层不会完全一致
一般来说,像控制软件大部分无界面,没有太多移植性要求,不要过度封装,例如将电压采集拆分成adc操作和输出电压计算两部分。
也许你会说,可以有片上ADC和SPI/IIC的ADC,但此时可以直接重写电压采集对应的文件。因为通常嵌入式系统软件规模不大,否则干脆像VxWorks或linux等系统直接写个驱动程序,还能实现动态加载。
回复
使用道具
举报
千问
|
2021-1-27 05:13:31
|
显示全部楼层
首先感谢楼上的评论,希望大家多多提点意见,个人总有想不到的地方,众人拾柴火焰高。
楼上说分层基于操作系统,这符合传统的操作系统原理,因为最基本的原则,操作系统管理硬件,提供接口。不过我这里不打算以操作系统为核心,而是打算以设备为核心,原因有二,一是因为嵌入式主要还是要和各种硬件打交道,二是设备相对独立,天生可裁剪。而操作系统的功能,只保留任务调度和管理,而且是以服务的方式提供,还有信号量、消息队列、定时器等,以及各类软件功能,比如FIFO、CRC、PID等都以独立的服务方式提供。
关于重写这一点,说说我的真实经验吧,因为就像楼上说的,基本上不同的项目,程序我都是重新写过,说实话,是不大,写起来也不难。可这样每个程序都各具特色,就算相同的功能,实现也不一样,当然复制粘贴的除外,如果真的重写,今年和去年的想法还是会有点区别的。这也是我想设计一个程序框架的主要原因,因为如果都用一个框架,就算想法变了,可以算作框架的升级,这是一个持续的过程,不像在每个程序里的变动,杂乱无法延续。
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行
1
一天,我正要去上课。 突然,有人在背后喊我,声音远远的。我扭过头看去,是一个农民模样的人,但我却不认
2
2011安徽文科409能上哪所财政专科院校?急
3
心喘不过气是怎么回事
4
什么升起成语
5
怎么查丹东市2011年高二文科成绩榜
6
人寿保险应该怎样买,买哪家的比较好?
7
癫痫病忌服用什么药
8
宇宙是怎么形成的?
9
心包填塞的临床表现
10
马上上高中的儿子参加集训营即将结束,老师让家长给孩子送花,我该给儿子送什么花?送多少呢?谢谢指教!
11
隆鑫福悦lx110_36的优点和缺点,这个车怎么样?
12
世界三大美食王国是哪三个?
13
包裹号:138172895CS邮到哪了?
14
求和这个 你路过我最倾城的时光 名子情侣的,有莫契的。
15
冰裂釉 深蓝色 茶杯大口杯,淘宝上直径大多都是7.5的,请问有没有9公分的杯子可以买?
16
(2/2)的、想学有关外语方面的专业、商务英语、师范类、国际贸易与经济这些专业、请学长学姐们帮忙给点...
17
双色球第2011082期开什么?
18
力求火影忍者的QQ群,谢谢!
19
索爱U5i网络设置问题
20
第一次人流了对第二次怀孕有影响吗?
21
吃抗生素不能预防新型冠状病毒感染
22
心包摩擦音与胸膜摩擦音如何鉴别
23
中南大学商学院研究生的奖学金助学金制度?
24
礼泉去铜川咋乘车?
25
请问佐助的QQ群是多少?
26
女的脸上长斑说明什么
27
先天性心脏病手术后要注意什么
28
没时间去健身房,在家原地跑步有用吗
29
从青岛市南区到胶南市黄山镇小王家庄坐什么车
30
浙江省文科449能上浙江省哪里
31
患上宫颈炎有哪些症状吗?
32
???我有个网友,平时聊得还不错,有天我跟他说我生病(需开刀的),然后一连几天他都在农场里打包花...
33
北京哪有卖龙与虎中逢坂大河的Q版手办?
34
妻子乙肝表面抗原阴性,乙肝表面抗体阳性,乙肝E抗原阴性,乙肝E抗体阳性,乙肝核心抗体阴性。我大三阳...
35
子宫肌瘤合并有子宫内膜息肉怎么办
36
下支架后注意什么
37
预测未来的未来人是真的假的?
38
40岁打几价宫颈癌疫苗
39
内蒙古医学院可以改专业吗
40
抗生素一旦耐药终身耐药吗
41
濮阳哪里有卖比萨的
42
肝内胆管癌的早期症状
43
???惊的感觉,但我我不把话说绝我不喜欢他。我的部分网友都知道我生病了也没像他这样天天送花…我该...
44
什么牌子的纸尿裤好啊?
45
流产后能喝红酒吗
46
麦洛洛的资料,越详细越好
47
什么运动能预防输卵管堵塞
48
为什么走路心脏疼
49
为什么早饭后心跳加快心慌
50
为什么心脏不会得癌症
51
正常男人一次性生活大概多长时间
52
为什么跑步心脏刺痛
53
为什么每次量血压都不一样
54
为什么两个胳膊血压不一样
55
抗生素耐药是一辈子吗
56
盐酸异丙嗪注射治疗痔疮
57
为什么会出现心肌缺血的症状
58
请问一下从山西的阳泉到了山东的枣庄的铁路公里数是多少?
59
晚上心绞痛是什么原因
60
???稀有的那种),目前为止我都没向他表示感谢,我朋友说他是故意借此送花让我对他有好感,我想知道...
61
淄博周村区有没有剑桥商务英语培训地点,培训机构,规模,时间,费用,联系方式是什么?卓越剑桥如何,...
62
孕期得了霉菌感染用什么药
63
不小心受孕了怎么办
64
新买的蓝牙耳机为什么和手机配对不上?一直显示没有搜索到
65
我是内蒙古的理科考生,今年考了358,以这个分数报内蒙古师范大学的三本能被录取吗?
66
枚举类型有什么用?怎么用?谢谢
67
完全性右束支传导阻滞要注意什么
68
吃葡萄能减肥,吃葡萄干能减肥吗?
69
请问行货中兴N880有wifi吗?谢谢
70
谁知道哪个手机所用的QQ能和LG-KP500完全匹配
71
诺基亚5130XM最新报价
72
江西公务员考试教材和国家公务员考试教材有什么不同吗?
73
dnf男弹药PK加点高手说下心德
74
请问结交陌生人时,怎样了解陌生人的兴趣和他在哪些地方需要帮助?
75
我是柏子村附近村的村民,我想在柏子村买套房子,问:下—部柏子村搬迁,我能和柏子村的村民分房或补贴一样吗?
76
由日本漫画制作的动画有什么?
77
如果档案被自己不喜欢的学校调走了!可以打电话让学校把自己的档案退回来吗?
78
下雨没拿散怎么办。
79
脊灰灭活疫苗是打大腿吗
80
Can you feel my word 歌词
81
我5月3号来的月经,5月13号结婚,结果5月26号又来了!一直到6月13号才干净,医生说是刚结婚的原因,请...
82
怎么洗衣服上的油漆,介绍简单的方法
83
我3g无线上网卡没流量了,不想去营业厅,怎么办?是移动的,还有许多的话费,有没有可能用短信营业厅或...
84
对于大学生集储蓄和购物一体的银行卡和网银各是哪一种?农行如何?
85
痔疮打针后肛门水肿多久能消
86
辽宁大学的录取通知书什么时候下发?
87
假性宫缩频繁的原因是什么
88
孕妇吃什么降低葡萄糖
89
江苏文科294分BB能上南京铁道职业技术学院什么专业?
90
深圳西部还招聘公交司机吗?麻烦帮我了解一下,谢谢。
91
突然心慌是预示什么吗
92
请问人在美国用国内的手机号码发短信到国内多少钱
93
我的扣扣被盗了 该怎么办?
94
越来越喜欢女生了怎么办?
95
家的N次方会不会没续集啦?就这么悲剧啦?我看着心里泛酸,求解脱啊。
96
电信如何冲Q币
97
西安到东京都有直航航班不?
98
请问:江西哪些学校会降二本录取分数线
99
深圳游戏机赌博谁来管.拿一万元上分一个钟输干净.打110也无用
100
子宫肌瘤导致不孕有哪些情况