IAR FOR NEC工程选项设置时是否需要些特别的设置
用的78F0513,用的Applilet生成向导生成一段初始化代码,时钟使用内部8M的。就想点亮板上的一个LED也点不起来。程序如下:
#defineMEMORY_IMS_SET 0xC8
#defineMEMORY_IXS_SET 0x0C
void main( void )
{
// UCHAR i;
SystemInit();
POWER_LED_ON;
while( 1 )
{
}
}
void SystemInit( void )
{
/* Clock generator initiate */
Clock_Init();
IMS = MEMORY_IMS_SET;
IXS = MEMORY_IXS_SET;
/* Port initiate */
PORT_Init();
}
void Clock_Init( void )
{
ClrIORBit(MCM, 0x05); /* High-Ring-OSC operate for CPU */
SetIORBit(MCM, 0x01); /* peripheral hardware clock:frh */
ClrIORBit(OSCCTL, 0x10);
SetIORBit(MOC, 0x80); /* stop X1 clock */
PCC = CG_CPU_CLOCKSEL;
}
LED接在P41上,初始化成输出(PM4=0XFC)
但灯都不亮,不知道什么原因
是否工程文件的选项有些设置需要更改的?我基本上用的默认设置。 保护字等没有配置 第一次使用NEC,其他人都是用的PM,不想用那玩意。因为接下来ARM什么的也想用IAR
IMS = MEMORY_IMS_SET;
IXS = MEMORY_IXS_SET;
这个不是保护字吗?保护字应该怎么写。 #pragma constseg=OPTBYTE
__root unsigned char
ucOptionBytes={0x00,0x00,0x00,0x00,0x00};
#pragma constseg=default
增加了这些。还是不行。 这样试试
#pragma location = "OPTBYTE"
__root const unsigned char option_bytes[]={0x00,0x00,0x00,0x00,0x00}; 还是不行。 谁有没有例程啊,发个来看一下。我的是
IAR Assembler for NEC 78K0 and 78K0S
V4.40A (4.40.1.3) 已经可以了,按照上面这些就行了
问题出在我没有把MINI-CUBE2拔下来,拔下来程序就运行起来了。 还有一个问题,QB-Programmer在烧写程序的时候,如果IAR有重新编绎,需要重新打开文件。 QB-Programmer是这样的,最好编译好了后,重新打开hex文件
页:
[1]