技术文章

HOLTEK 半导体问题解答集

      


问:在49C50的掩膜选项中有PA0/1 option以及NMOS/CMOS of PA0 to3的选项当PA0/1选择为BZ/BZB Output时NMOS/CMOS of PA0 to 3 只有CMOS 项没有NMOS项是否是仿真系统的软件问题此时PA2/3 可否掩膜选为NMOS?

答:49 的PA0 至PA3 的NMOS/CMOS 掩膜选项是唯壹的不能位选择不是因为仿真系统的软件问题所以当掩膜选择PA0/1作为BZ 输出时PA2 和PA3 只能是COMS 的架构?

问:49R50 芯片的PFD管脚是不是产生波形的分频脚如果是是否能产生38kHz 的频率如何解决
答:PFD 是可编程频率输出的引脚通过对定时/计数器的计时时间的编程可以使其产生38kHz 的频率详细资料可看ApplicationNotes 里面有49PFD 的应用说明编号为HA0039s?

问:我们必须将大部分变量的地址(RAM)固定以进行操作例如ADSEQU 79H
不知道会给编译造成什么样的影响我们必须将大部分变量的地址(RAM)固定以进行操作例如
ADS EQU 79H不知道会给编译造成什么样的影响
答:变量地址固定是可以的但是要注意的是,若在数据段用DB 定义了变量一般情况下发展系统会从RAM 的60H 以HT49R50来说地址开始放相应的变量所以会有可能造成如下情况
var1 equ [70h]
data .section 'data'
var_1 db ?
总共用DB 定义了超过15 个变量
var_16 db ?
上述例程中的变量定义会使var1 和var_16 指向同一地址即对var1 进行修改的同时也对var_16 修改了因为它们在RAM中是同一地址.

问:为什么在49 系列中有时HALT指令需要下三次才有效
答:49 系列HALT 的唤醒方式中有一种方式为中断唤醒在中断唤醒中实际上只要中断申请位由0至1跳变无论该中断是否被置能则会唤醒HALT
所以当时钟来源选择为RTC/WDT 时实时时钟和Time Base 此时会产生溢出置位TBF 和RTF即使中断未被置能它们的中断申请位产生跳变唤醒了HALT 所以造成HALT 需要下三次才不会停下来
Clock_source
WDT
HALT
系统时钟
ENABLE/DISABLE
1 条有效
RTC 内部的WDT
1 ENABLE/DISABLE
2 Time Base 的分频RTC 软件分频
2 条有效
1 ENABLE/DISABLE
2 Time Base 的分频RTC 软件分频
3 条有效

问:整体程序rom 分配主程序0000---0400h
定义表0fb0---0ff0h
其他子程序0410---0fc0h
当定义的表放在主程序中时即如下
main .section at 0000h 'code'
org 20h
start:
call sub1
call sub2
org 0fb0h
table: dc 1234h,4567h,7890h,....
end
其子程序如下:
sub1code .section at 0410h 'code'
sub1:
ret
;-----------------------------------
sub2code .section at 04b0h 'code'
sub2:
ret
;----------------------------------
以下还有子程序都放在0410h---0fc0h 之间
编译器对以上格式提示有"交迭"错误?如何解决?
具体如下
ERROR(L2001) TWO SECTION ARE OVERAPPED
'main'SECTION....
'SUB1'SECTION...
如果将每个子程序中的"at ****h"改为缺省值,即不写"at ****h",则编译器对以上格式提示有"rom 不够用"?如
何解决?
具体如下
ERROR(1038) MEMORY ALLOCATION FAILS FOR SECTION
'SUB1'IN THE FILE C \.....
TOTAL 1 ERROR(S) TOTAL 0 WARING(S)
答:因为表格与主程序是属于一个MAIN 程序段的所以系统编译时不会将这个SECTION分开而在其他子程
序的SECTION 中指定了地址后系统会提示两个SECTION 是交错的若不定义指定地址的话则系统编译时
会将程序放在主程序SECTION 之外的的区域内但是因为主程序段从0000H~0FB0H 所以系统不会占用这之间
的ROM 因为这个区域已经划分给了MAIN 了所以系统会报出ROM 空间不够的错误
所以若希望TABLE 在主程序TOTAL0.ASM 里可以这样写
file name: total0.asm
describe
---------------------------
include ht49c50.inc
main .section at 0h code
table .section at 0fb0h code
dc
dc
也就是说将表格再作为一个段就可以解决了
因为使用ORG 分配地址它是相对于SECTION 的偏移地址即若程序如下
main .section at 0100h code
org 20h
label
此时的label 的实际地址是0120H 而不是20H 所以会有出现这样的一种情况设置SECTION 起始地址为0H而在这个SECTION 中使用了ORG 指令指定地址假设为0F00H 而从0000H~0F00H 程序只占用了ROM 20H 行ROM实际还剩余很多空间可系统编译时不会使用这些未使用的空间因为这个空间属于一个SECTION 的

问:烧录器TOTP48R_F *多支持40 管脚DIP封装芯片烧写这种烧录器可以烧写80 脚PQFP 封装的49R50 吗如何烧写
答:烧录器问题要烧写80 脚的PQFP 需要一转接板转接板有两种一种是100 脚一种是80 脚的请根据的需要与销售联系

问:在49 仿真器I/O 接口卡上的OSC1 和OSC2引脚接晶振是否可提供系统频率
答:49 仿真器上I/O 接口卡上的OSC1 和OSC2两个引脚是没有定义的所以即使在这两个引脚上接晶振也无法提供系统所需的振荡频率RTC 的晶振输入OSC3与OSC4已经在仿真器里接了32.768 kHz 的晶振所以在仿真时不必再外接32768Hz的晶振了,系统的时钟频率可有两种选择一种是选择仿真器内部提供的时钟一种是选择外部时钟这是在Mask Option中SysFreq的Internal 选项选择
1 若选择内部时钟Internal 则仿真时系统时钟来源由仿真器提供不必再外接器件
若选择外部时钟的话时钟来源就必须从I/O 卡上输入这种情况又分为两种一种选时钟来源为石英振荡
则I/O 接口卡的跳线插座JP1接1 2 脚然后在接口卡上X1 的两个引脚接所需的晶振一种时钟来源为RC 振
荡则跳线JP1 接2 3 脚并通过调节可变电阻VR1 来调整RC 振荡的输出频率I/O 卡上的晶振提供的是系
统频率不是RTC 频率

问:仿真软件中没有49R50的掩膜操作选项芯片资料是不是可以用49R50a 或49C50 来代替
答:仿真软件中是没有49R50的母体选项应使用49C50 的母体其实49R50 是49C50的OTP 版所以选择49C50的母体可进行仿真但不能选择49R50A

问:49R50 中PA0/BZ PA1/BZB PA3/PFDPB0/INT0B PB1/INT1B PB2/TMR0 PB3/TMR1这些为复用管脚而49 系列仿真器的I/O 接口卡上有BZBZB 等管脚那么在接口卡上应引出哪些管脚才是正确的
答:使用49 仿真器时若使用到I/O 接口卡的复用管脚应使用I/O 接口卡上的PA PB 以及PC 脚使用I/O 接口卡上的BZBZB PFD 等引脚是没有用的

问:49 仿真器I/O 接口卡上的BZ BZB PFDINT0B INT1B TMR0 TMR1 引脚如何定义
答:49 仿真器I/O 接口卡上的TMR0 TMR1 和INTB这些引脚是没有任何定义的所以不要使用卡上的这些引脚来作为外部记数等的输入口

问:9R50 芯片的VLCD 的输入参考值是多少
答:关于VLCD 电压值的选择这不是由我们的芯片决定的是视您的LCD Panel 的要求而定的

问:49R50 芯片只有6层堆栈在多次中断调用后产生堆栈不够用的解决方法
答:当堆栈已满而此时又发生的中断请求则这个中断的请求标志会被记录下来该中断服务仍被禁止一旦堆栈指针SP 发生了递减由于RET或RETI 则会响应此未被服务的中断这个功能就可确保堆栈不会溢出使得编程者更加方便地使用该结构同样地如果堆栈已满而随后又执行了CALL指令此时会发生堆栈溢出并且**个返回地址将会丢失只有*近六个返回地址会被保存
基于以上原因我们并不提倡采用中断嵌套的方式因为有可能有一些重要的中断需要立即响应

问:HT49R50 抗电磁干扰的性能如何是否有测试结果
答:HT49R50 的电磁干扰性能与PCB 板和所开发的应用系统本身设计有很大的关系已有客户利用HT49R50 完成
在高噪声环境下使用的产品如使用在车上及电表等产品经过测试其抗干扰性能均可以达到要求

问:HT49R50的LCD Panel 的驱动电压为5V那么VLCD 的取值为多少LCD 有两种分压方式R 方式和C 方式有何区别
答:VLCD 的取值是根据LCD Panel 的驱动电压以及所选的分压定的当选择R 方式分压或者1/2 bias C方式分压时VLCD 等于LCD Panel 的驱动电压当为1/3 bias C 方式分压时3/2 VLCD = LCD Panel的驱动电压,由此可得驱动电压为3V 时VLCD 选2V 驱动电压为5V 时VLCD 选3.3V 对于LCD 的两种分压方式R 方式较C方式的耗电量要大但选用R 方式不需要外接其他元件C 方式省电但需要外接2 3 个电容使生产的成本提高

 

深圳市立业微电子有限公司    地址:深圳市宝安区西乡前进二路桃源居三区1栋3楼    邮编:518001
电话:0755-27452985(非上班时间所有电话关机)    传真:0755-27451955