求助合泰系列单片机高手

[复制链接]
8511|20
 楼主| l568745811 发表于 2013-7-4 19:43 | 显示全部楼层 |阅读模式
最近在使用合泰系列单片机,由于成本问题使用的单片机全部分bank(rom和ram),在使用时非常不方便,求高手赐教比较好解决方法?
soso 发表于 2013-7-4 20:01 | 显示全部楼层
不知道,你知道
ayb_ice 发表于 2013-7-5 07:58 | 显示全部楼层
低端货就这样,
用C编程,编译器帮你搞定这些
dirtwillfly 发表于 2013-7-5 08:46 | 显示全部楼层
低端的单片机不都这样吗?
 楼主| l568745811 发表于 2013-7-5 09:34 | 显示全部楼层
ayb_ice 发表于 2013-7-5 07:58
低端货就这样,
用C编程,编译器帮你搞定这些

用c的话,rom远远不够使用,这个用着太悲催了
 楼主| l568745811 发表于 2013-7-5 09:35 | 显示全部楼层
dirtwillfly 发表于 2013-7-5 08:46
低端的单片机不都这样吗?

低端的便宜啊,苦了我了!:'(
dirtwillfly 发表于 2013-7-5 09:42 | 显示全部楼层
l568745811 发表于 2013-7-5 09:35
低端的便宜啊,苦了我了!

低端的产品就有他的这种特点,很多低端的单片机甚至还不支持C语言,只能用汇编,更惨
gx_huang 发表于 2013-7-5 12:33 | 显示全部楼层
如果你的程序比较小,就不用切换了。
如果程序大,只有手工切换BANK了。
如果程序很大,建议不要用这些芯片,会短命的。
如果你的产品批量不大,也不要用,否则开发维护的费用太大不合算的。
yanwen217 发表于 2013-7-5 13:19 | 显示全部楼层
用JMP、CALL、TABRDL/TABRDC指令时就要先指定BANK,否则程序就跑飞了;P
系统写下来要很小心才行
wang5637 发表于 2013-7-5 13:20 | 显示全部楼层
用国产廉价的51 吧  至少keil 可以解决C 编译器的问题  同时硬件没有分页  STM8S 也不错 最低 1.5  比台湾的贵多少?
gx_huang 发表于 2013-7-5 13:51 | 显示全部楼层
HOLTEK好处也是有的,低功耗场合还可以的。
用在RF遥控器的编码和学习解码,还不错。
gx_huang 发表于 2013-7-5 13:52 | 显示全部楼层
HOLTEK好处也是有的,低功耗场合还可以的。
用在RF遥控器的编码和学习解码,还不错。
 楼主| l568745811 发表于 2013-7-5 22:02 | 显示全部楼层
gx_huang 发表于 2013-7-5 12:33
如果你的程序比较小,就不用切换了。
如果程序大,只有手工切换BANK了。
如果程序很大,建议不要用这些芯片 ...

首先是程序比较rom bank不够用,需要使用算法那当然ram bank也就不够用了,产品批量还算是比较大的,有要求低功耗,所以肯定要选这种芯片,短命也是我短命,老板又不管这些!:'(
 楼主| l568745811 发表于 2013-7-5 22:03 | 显示全部楼层
wang5637 发表于 2013-7-5 13:20
用国产廉价的51 吧  至少keil 可以解决C 编译器的问题  同时硬件没有分页  STM8S 也不错 最低 1.5  比台湾 ...

用holtek的晶圆好像不到一元吧,批量很大,又要低功耗,我怎么这么悲催啊!
 楼主| l568745811 发表于 2013-7-5 22:06 | 显示全部楼层
gx_huang 发表于 2013-7-5 13:52
HOLTEK好处也是有的,低功耗场合还可以的。
用在RF遥控器的编码和学习解码,还不错。 ...

看您的回复应该是比较了解holtek的芯片的,请教一下有什么好的切换ram bank的方法没有(ram bank0太小,其他bank又不好用)。
gx_huang 发表于 2013-7-6 10:50 | 显示全部楼层
呵呵,我不了解合泰呀,只用过低端的芯片,也不需要BANK切换。
 楼主| l568745811 发表于 2013-7-6 12:20 | 显示全部楼层
我怎么值么命苦呢:@
andytianone 发表于 2013-7-17 17:48 | 显示全部楼层
用合泰的单片机,技术支持很到位的呀。我认识几个合泰的FAE,可以联系我我帮你引荐下。
老鱼探戈 发表于 2013-7-17 22:11 | 显示全部楼层
本帖最后由 老鱼探戈 于 2013-7-17 22:14 编辑

如果不能换MCU的话,试试下面的:
1、优化程序(ROM)
2、标志位用BIT型不用BYTE型,能用BYTE型不用INT和LONG型;不用结构体,不用指针(RAM)
3、在无影响的情况下,分时复用全局变量(RAM)
4、尽量少用查表(ROM)
5、函数嵌套级别尽量小,尽量不带参数和不返回变量(ROM AND ROM)
6、用汇编,不用C(ROM)

如果BANK1的RAM实在不够用,只能去切换BANK。其实也没什么,只要知道哪些变量是定义在BANK1或BANK0,用的是和切回来即可。

暂时只想到这些。。。

以上回答仅供参考,不负连带责任! 哈哈~
pomen 发表于 2015-4-22 13:58 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

43

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部