迪文科技论坛

 找回密码
 立即注册
搜索
查看: 4045|回复: 10

OS代码太多会导致屏幕出错吗?

[复制链接]

7

主题

23

回帖

104

积分

注册会员

Rank: 2

积分
104
发表于 2019-8-3 21:05:57 | 显示全部楼层 |阅读模式
我这个屏幕需要实现的功能太多,所以代码写的很长,子函数调用的比较多(特别是掉电数据自动保存部分,因为有好几个变量数据录入)。但是输入到屏幕之后发现只有部分功能是按照代码里写的做到的,请问下应该怎么办呢?
回复

使用道具 举报

0

主题

73

回帖

3159

积分

论坛元老

Rank: 8Rank: 8

积分
3159
发表于 2019-8-4 22:46:38 | 显示全部楼层
楼主,可以通过加载LIB程序库文件,空间是超级大的。

T5目前有2种主流方法将OS程序空间扩大,如下:
a.加载加密了的LIB程序库文件,在OS主程序里可以不停的更换需要调用的多个LIB文件(LIB库程序的方法不能中断)。
b.加载不加密的OS文件(可以用LIB到NOR FLASH,速度比用字库加载到NAND FLASH的快)。
用OS的CONFIG指令的03或04模式实现,02模式无效不能用请注意。
回复

使用道具 举报

0

主题

6

回帖

89

积分

注册会员

Rank: 2

积分
89
发表于 2019-8-4 22:46:43 | 显示全部楼层
看楼主发在DGUS II这里,应该时T5系列的。
T5 OS默认程序空间为32KB(DGUS 1的是256KB,但是不支持加载程序库),感觉比DGUS 1小了,实际上通过加载LIB程序库文件,可以认为T5 OS程序空间是超级大的。
当然LIB程序库会占用部分数据库空间,建议LIB命名靠后一点。
回复

使用道具 举报

82

主题

153

回帖

2793

积分

超级版主

Rank: 8Rank: 8

积分
2793
发表于 2019-8-5 09:31:35 | 显示全部楼层
本帖最后由 神秘の宅叔 于 2019-8-5 09:49 编辑

os代码只要逻辑运行都正确,和代码量没有关系,用户最大代码空间是28KB(7168行代码),不超过就没有关系,一般这个大小都够用,根本无需扩展,
如果自己的工程逻辑比较多,建议分页面下执行代码也是非常不错的一种写法。
此外os代码是高速执行,在特殊的操作,例如读写数据库,(甚至切换页面的操作)一般是要加上下面的循环等待读写操作清零后才能正常运行,
   LOOP1:                            ;判断数据库读操作是否完成
     LDWR   R0,0008H
     MOVXR  R10,1,1
     IJNE   R10,0,LOOP1
回复

使用道具 举报

7

主题

23

回帖

104

积分

注册会员

Rank: 2

积分
104
 楼主| 发表于 2019-8-5 10:24:09 | 显示全部楼层
神秘の宅叔 发表于 2019-8-5 09:31
os代码只要逻辑运行都正确,和代码量没有关系,用户最大代码空间是28KB(7168行代码),不超过就没有关系, ...

好的,谢谢
回复

使用道具 举报

5

主题

3

回帖

84

积分

注册会员

Rank: 2

积分
84
发表于 2020-1-8 16:37:46 来自手机 | 显示全部楼层
神秘の宅叔 发表于 2019-8-5 09:31
os代码只要逻辑运行都正确,和代码量没有关系,用户最大代码空间是28KB(7168行代码),不超过就没有关系, ...

怎么分页面执行
回复

使用道具 举报

0

主题

96

回帖

1488

积分

金牌会员

吃圆滴 吃扁滴

Rank: 6Rank: 6

积分
1488
QQ
发表于 2020-1-8 16:56:14 | 显示全部楼层
OS是一直运行的,如果是工程分页面执行,那么就需要读取页面寄存器,来做判断即可。
越努力越幸运!
回复

使用道具 举报

5

主题

14

回帖

1076

积分

金牌会员

Rank: 6Rank: 6

积分
1076
发表于 2020-1-9 08:24:22 | 显示全部楼层
LIB程序库文件怎样制作
回复

使用道具 举报

0

主题

42

回帖

703

积分

高级会员

Rank: 4

积分
703
发表于 2020-1-9 10:11:14 | 显示全部楼层
回复

使用道具 举报

5

主题

3

回帖

84

积分

注册会员

Rank: 2

积分
84
发表于 2020-1-9 10:50:38 | 显示全部楼层
wenzhendong 发表于 2020-1-8 16:56
OS是一直运行的,如果是工程分页面执行,那么就需要读取页面寄存器,来做判断即可。 ...

C语言怎么写吗
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2026-4-14 23:14 , Processed in 0.032972 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表