|
Q:FortisIDE新建一个工程后,会发现在WorkSpace窗口中有很多不同类型的文件,请问都是什么文件?
A:工程包括创建一个特定程序所要的各种信息。新建立的工程应包含8种文件:*.spj、*.rc、*.set、*.env*、*.asm、prog.lik、*.cmd、*.inc。 一个工程建成后,FortisIDE自动将这8种文件添加到工程内。
1、 *.spj, *.rc, *.set, *.env (与工程文件同名):系统文件,后缀为.spj的文件为工程文件,用户打开一个工程时打开'*.spj'文件即可。
2、 *.asm:汇编语言程序文件。
3、 Prog.lik:链接器根据它来决定如何链接目标文件,用FortisIDE打开该文件,可以直接对文件的内容进行修改。
4、 *.cmd (与工程文件同名):根据它来决定如何向仿真芯片中下载二进制文件(.tsk/.bin),即决定ICE/仿真板上的文件映象。
5、 *.inc:头文件,在其中对每一个I/O端口和硬件寄存器进行了定义;它必须被包含在源代码内。
Q:什么是库函数?如何将其加载进工程中?
A:库函数即.lib文件,是一个函数的集合。库里存放着每个函数的名称、目标代码和链接过程所需的复位位信息等内容。如果用户程序中用到了库的某个函数,则需要将其加载到工程中,在链接时,链接器会把相应的函数代码直接嵌入到用户程序的可执行文件中。
库的加载方法:打开Project->Setting->Link,便会出现Setting对话框,然后将该库的lib文件加进去。如下图。

Q:利用FortisIDE进行开发的基本流程是什么?
A:Fortis IDE需要配合在线仿真编程器才可以进行仿真,一般的开发流程如下:
· 创建工程
· 设置工程
· 管理工程
· 编译工程
· 运行工程
· 调试工程
Q:FortisIDE是否有程序跟踪功能,在哪里?怎么查看?
A:FortisIDE有程序跟踪功能,具体设置如下:
①、在Project->Setting->Device中将PC Track Enabel选项选中;
②、全速编译
③、运行您所要跟踪的程序,全速运行之后然后点击Break
④、点击工具栏中的"T"按钮即可
Q:当在FortisIDE中新建工程后,自动生成了一个Main.asm文件,请问该文件的作用是什么?如何使用?
A:Main.asm文件是系统自动产生的汇编语言程序文件,已经将程序中必须的语句写完整了,其中"PAGE0" 用于零页变量的定义;"DATA"用于非零页变量的定义;"CODE"段用于写程序,"VECTOR"用于定义中断的入口地址。用户直接在V_Reset后写程序即可。
;****************************************
;* *
;*Power on Reset Process - Main Program *
;* *
;****************************************
.PUBLIC V_Reset ;
V_Reset:
Q:资料上说PB2保留是什么意思呀?
A:保留的意思是对这一位操作没有意义。
Q:FortisIDE-V1.6.5.1支持C语言编程吗?
A:目前FortisIDE-V1.6.5.1版本不支持C语言编程。
Q:为什么我进行10ms定时的时候,定时的时间都不准,而且更改其中的高位预值对定时的时间都没有影响?程序如下:
lda #01000000b
sta P_TMR0_1_Ctrl0
lda #00110000b
sta P_TMR0_1_Ctrl1
lda #16
sta P_TMR1_Preload
lda #216
sta P_TMR1_PreloadHi
lda #FFh
sta P_INT_Flag1
set P_INT_Ctrl1,1
cli |
; Set time1 is 16 bit counter
; Set Timer1 clock source is Fsys/8
;\
;+ Set 10ms
;+ Fsys(8MHz)/8/(40x250)=100Hz
;/
; Clear INT request flag of time1
; Set time1 overflow interrupt
; Enable INT |
A:对于16位的定时器,必须要先写入预值的高位P_TMR1_PreloadHi,再写入预值的低位
P_TMR1_Preload,这样的定时设置应该是正确的。如果顺序更改了,会出现你遇见的类似的问题。
Q:Q-Writer中当按下"Statistic Window"中的"Reset"按钮后,会复位哪些内容?
A:此时系统将弹出一个信息提示框,提示"所有内容将被清除,是否继续?",要求用户确认是否清除Target.以外的所有内容。
Q:首次启动Q-Writer,如果未选择芯片型号便打开工程开始烧写,会出现什么现象?
A:系统将会显示警告信息,并自动弹出"Select Device"窗口供选择芯片型号。
Q:如果芯片内容为空,在Q-Writer中对其加密会出现什么现象?
A:系统会自动弹出对话框"Your IC is blank, Securing prohibited!"警告信息,不允许对空白芯片进行加密。
Q:当多颗芯片被烧写时,Q-Writer会出现警告信息"这个序列号码可能已被使用过!"是什么原因?
A:序列号码在"Auto Increment"模式下会自动进行递增或递减。当序列号码的值递增或递减产生溢出后,可能会产生与以前相同的序列号,如果户继续执行烧录动作,那么多个芯片就可能会被烧入相同的序列号码。
Q:如何使用Q-Writer配置芯片烧写,即在使用Q-Writer进行烧写的基本流程是什么?
A:使用Q-Writer进行芯片编程的基本流程如下图:
Q:在烧写过程中,芯片如何放入在线仿真编程器的烧写座中?
A:将芯片的凹口处与烧写座的凹口处对齐,即将芯片的1脚放在左上脚的方向放入在线仿真编程器的烧写座中。如图所示
Q:当烧写芯片被加密后,是否全部信息都不可以读出?
A:加密后,SPMC65系列单片机仅允许读出芯片中的部分内容,即芯片配置选项,用户信息以及芯片存储器中最后16个字节(即0xFFF0~0xFFFF)中的信息。其它地址的内容均显示为0x00。
|