共2条
1/1 1 跳转至页
ARM 为什么连ARM基础与实践上面的示例程序都跑不起来
问
今天想看看示例程序的运行效果,于是把实例文件夹从光盘拷贝到硬盘上,去掉了只读属性。用ADS打开,编译,成功之后,调出AXD进行调试。我觉得按理说都是周工提供的现成的东西,我什么都没有动。应该是可以运行的,但是测试了GPIO的4个小程序都跑不起来,开发版上的蜂鸣器倒是响个不停,到底是为什么啊。我参考了一下光盘离地快速入门,什么也没有,该设置的也设置了。
这是为什么那? 答 1: 耐心一些!再耐心一些!
我刚拿到开发板的时候也是这样!
冷静的找一下原因,比别人告诉你为什么收获要更多的!
答 2: 试试看,这个是我测试用生日歌曲#include "config.h"
volatile uint8 SongFreN;
volatile uint8 PWMi;
const uint8 PWMSong[]=
{
0x82,0x01,0x81,0x94,0x84,
0xB4,0xA4,0x04,
0x82,0x01,0x81,0x94,0x84,
0xC4,0xB4,0x04,
0x82,0x01,0x81,0xF4,0xD4,
0xB4,0xA4,0x94,
0xE2,0x01,0xE1,0xD4,0xB4,
0xC4,0xB4,0x04,
0x82,0x01,0x81,0x94,0x84,
0xB4,0xA4,0x04,
0x82,0x01,0x81,0x94,0x84,
0xC4,0xB4,0x04,
0x82,0x01,0x81,0xF4,0xD4,
0xB4,0xA4,0x94,
0xE2,0x01,0xE1,0xD4,0xB4,
0xC4,0xB4,0x04,
00};//歌曲编码,前4位音频,后4位延时
const uint16 PWMFrequ[]={
0x6E34,0x6231,0x5692,0x5299,0x499C,0x4188,0x3DDC,0x371F,
0x3113,0x2BB7,0x2957,0x24C3,0x20C9,0x1EEE,0x1B8F
};//音频选择,即PWM0的周期
__inline IRQEnable(void)
{
uint8 temp;
__asm
{
MRS temp,CPSR
BIC temp,temp,0x80
MSR CPSR_c,temp
}
}
void __irq IRQ_TIME0(void)
{
uint8 temp;
switch(SongFreN)
{
case 0x40:
SongFreN=0x30;
break;
case 0x30:
SongFreN=0x20;
break;
case 0x20:
SongFreN=0x10;
break;
case 0x10:
PWMi++;
if(PWMSong[PWMi]==0)
PWMi=0;
SongFreN=PWMSong[PWMi]<<4;
temp=PWMSong[PWMi]>>4;
if(temp==0)
PWMMR2=PWMMR0=0x50C8*(SongFreN>>4);
else
{
PWMMR0=PWMFrequ[temp-1];
PWMMR2=PWMMR0>>1;
}
PWMLER=1|(1<<2);
break;
}
T0IR=0x01;
VICVectAddr=0x00;
}
void Time0Init(void)
{
T0PR=99;
T0MR0=0x50C8;
SongFreN=PWMSong[0]<<4;
PWMi=0;
T0MCR=1|(1<<1);
VICIntSelect=0x00;
VICVectAddr0=(int32)IRQ_TIME0;
VICVectCntl0=0x20|4;
VICIntEnable=(1<<4);
}
void PWMInit(void)
{
PWMPR=0;
PWMMR0=PWMFrequ[0];
PWMMR2=PWMMR0>>1;
PWMMCR=1<<1;
PWMPCR=1<<10;
PWMLER=1|(1<<2);
PINSEL0=0x8000;
}
void SongStart(void)
{
T0TCR=3;
T0TCR=1;
PWMTCR=1|(1<<3);
}
int main(void)
{
IRQEnable();
Time0Init();
PWMInit();
SongStart();
while(1);
return 0;
} 答 3: 有意思!楼上的,你这个程序是用在啥板子上的啊? 答 4: 搞定了 答 5: 哪位有2104的光盘上的实验程序哪位有2104的光盘上的实验程序,我的光盘丢了,哪位大虾能不能给俺传一份啊,俺的Email:ljzhw@sohu.com.
这是为什么那? 答 1: 耐心一些!再耐心一些!
我刚拿到开发板的时候也是这样!
冷静的找一下原因,比别人告诉你为什么收获要更多的!
答 2: 试试看,这个是我测试用生日歌曲#include "config.h"
volatile uint8 SongFreN;
volatile uint8 PWMi;
const uint8 PWMSong[]=
{
0x82,0x01,0x81,0x94,0x84,
0xB4,0xA4,0x04,
0x82,0x01,0x81,0x94,0x84,
0xC4,0xB4,0x04,
0x82,0x01,0x81,0xF4,0xD4,
0xB4,0xA4,0x94,
0xE2,0x01,0xE1,0xD4,0xB4,
0xC4,0xB4,0x04,
0x82,0x01,0x81,0x94,0x84,
0xB4,0xA4,0x04,
0x82,0x01,0x81,0x94,0x84,
0xC4,0xB4,0x04,
0x82,0x01,0x81,0xF4,0xD4,
0xB4,0xA4,0x94,
0xE2,0x01,0xE1,0xD4,0xB4,
0xC4,0xB4,0x04,
00};//歌曲编码,前4位音频,后4位延时
const uint16 PWMFrequ[]={
0x6E34,0x6231,0x5692,0x5299,0x499C,0x4188,0x3DDC,0x371F,
0x3113,0x2BB7,0x2957,0x24C3,0x20C9,0x1EEE,0x1B8F
};//音频选择,即PWM0的周期
__inline IRQEnable(void)
{
uint8 temp;
__asm
{
MRS temp,CPSR
BIC temp,temp,0x80
MSR CPSR_c,temp
}
}
void __irq IRQ_TIME0(void)
{
uint8 temp;
switch(SongFreN)
{
case 0x40:
SongFreN=0x30;
break;
case 0x30:
SongFreN=0x20;
break;
case 0x20:
SongFreN=0x10;
break;
case 0x10:
PWMi++;
if(PWMSong[PWMi]==0)
PWMi=0;
SongFreN=PWMSong[PWMi]<<4;
temp=PWMSong[PWMi]>>4;
if(temp==0)
PWMMR2=PWMMR0=0x50C8*(SongFreN>>4);
else
{
PWMMR0=PWMFrequ[temp-1];
PWMMR2=PWMMR0>>1;
}
PWMLER=1|(1<<2);
break;
}
T0IR=0x01;
VICVectAddr=0x00;
}
void Time0Init(void)
{
T0PR=99;
T0MR0=0x50C8;
SongFreN=PWMSong[0]<<4;
PWMi=0;
T0MCR=1|(1<<1);
VICIntSelect=0x00;
VICVectAddr0=(int32)IRQ_TIME0;
VICVectCntl0=0x20|4;
VICIntEnable=(1<<4);
}
void PWMInit(void)
{
PWMPR=0;
PWMMR0=PWMFrequ[0];
PWMMR2=PWMMR0>>1;
PWMMCR=1<<1;
PWMPCR=1<<10;
PWMLER=1|(1<<2);
PINSEL0=0x8000;
}
void SongStart(void)
{
T0TCR=3;
T0TCR=1;
PWMTCR=1|(1<<3);
}
int main(void)
{
IRQEnable();
Time0Init();
PWMInit();
SongStart();
while(1);
return 0;
} 答 3: 有意思!楼上的,你这个程序是用在啥板子上的啊? 答 4: 搞定了 答 5: 哪位有2104的光盘上的实验程序哪位有2104的光盘上的实验程序,我的光盘丢了,哪位大虾能不能给俺传一份啊,俺的Email:ljzhw@sohu.com.
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |
| TCS3472S传感器及其色彩检测被打赏¥19元 | |
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
我要赚赏金
