|
第一篇:找LED程序.环境用KEIL.
/**********************************************
File Name: led flash
Revision: 01.00
Corporation:
Microcontroller Corporation:Atmel
Microcontroller name:AT91SAM7S64
Compiler: C51 for Keil3(V8.05 armV3.01)
Author: chen1986sl
E-mail: chen1986sl@126.com
Date : 2009.15.03
*********************************************/
//实验板:MP0006B
//连线:
//PA0-PA3:输出
#include "AT91SAM7S256.h" // AT91SAM7S64处理器的寄存器头文件
#define Led0Port (1<<0) // PA0 定义LED0 和端口PA0相连
#define Led1Port (1<<1) // PA1 定义LED1 和端口PA1相连
#define Led2Port (1<<2) // PA2 定义LED2 和端口PA2相连
#define Led3Port (1<<3) // PA3 定义LED3 和端口PA3相连
void Delay(void) //延时函数
{
unsigned int i;
for(i=0;i<1000*1000;i++)
{
;
}
}
int main(void)
{
*AT91C_PIOA_PER=Led0Port|Led1Port|Led2Port|Led3Port; //使能LED对应的管脚的IO功能
*AT91C_PIOA_OER=Led0Port|Led1Port|Led2Port|Led3Port; //使能LED对应的管脚的输出功能
while(1)
{
*AT91C_PIOA_CODR=Led0Port|Led1Port|Led2Port|Led3Port; // Led0123 口全为0 LED全亮
Delay();
*AT91C_PIOA_SODR=Led0Port; //LED0=1 灭掉
Delay();
*AT91C_PIOA_SODR=Led1Port;
Delay();
*AT91C_PIOA_SODR=Led2Port;
Delay();
*AT91C_PIOA_SODR=Led3Port;
Delay();
}
}
网上搜到的程序,说是直接编译就能运行,可是发现JTAG下载到里面以后灯不闪,查百度,晶体不起振才知,AT91开机晶体不起振,需要设定,现在先不设定,内部为32768HZ,把延时改一下,变成如下程序:
/**********************************************
File Name: led flash
Revision: 01.00
Corporation:
Microcontroller Corporation:Atmel
Microcontroller name:AT91SAM7S64
Compiler: C51 for Keil3(V8.05 armV3.01)
Author: chen1986sl
E-mail: chen1986sl@126.com
Date : 2009.15.03
*********************************************/
//实验板:MP0006B
//连线:
//PA0-PA3:输出
#include "AT91SAM7S256.h" // AT91SAM7S64处理器的寄存器头文件
#define Led0Port (1<<0) // PA0 定义LED0 和端口PA0相连
#define Led1Port (1<<1) // PA1 定义LED1 和端口PA1相连
#define Led2Port (1<<2) // PA2 定义LED2 和端口PA2相连
#define Led3Port (1<<3) // PA3 定义LED3 和端口PA3相连
void Delay(void) //延时函数
{
unsigned int i;
for(i=0;i<1000*1;i++)
{
;
}
}
int main(void)
{
*AT91C_PIOA_PER=Led0Port|Led1Port|Led2Port|Led3Port; //使能LED对应的管脚的IO功能
*AT91C_PIOA_OER=Led0Port|Led1Port|Led2Port|Led3Port; //使能LED对应的管脚的输出功能
while(1)
{
*AT91C_PIOA_CODR=Led0Port|Led1Port|Led2Port|Led3Port; // Led0123 口全为0 LED全亮
Delay();
*AT91C_PIOA_SODR=Led0Port; //LED0=1 灭掉
Delay();
*AT91C_PIOA_SODR=Led1Port;
Delay();
*AT91C_PIOA_SODR=Led2Port;
Delay();
*AT91C_PIOA_SODR=Led3Port;
Delay();
}
}
好,PA0灯闪了. |
阿莫论坛20周年了!感谢大家的支持与爱护!!
如果想吃一顿饺子,就得从冰箱里取出肉,剁馅儿,倒面粉、揉面、醒面,擀成皮儿,下锅……
一整个繁琐流程,就是为了出锅时那一嘴滚烫流油的热饺子。
如果这个过程,禁不住饿,零食下肚了,饺子出锅时也就不香了……《非诚勿扰3》
|