|
楼主 |
发表于 2010-4-1 15:18:42
|
显示全部楼层
单灯闪烁可以了,正如2楼所说,忘了关闭看门狗了
程序很简单,贴上来,大家帮忙挑挑毛病吧
/////////////////////////////////////
// Generated Initialization File //
/////////////////////////////////////
#include "C8051F340.h"
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
void Delay_us(uint);
void Delay_ms(uint);
void Delay_s(uint);
sbit led = P1^0;
// Peripheral specific initialization functions,
// Called from the Init_Device() function
void Port_IO_Init()
{
// P0.0 - Unassigned, Open-Drain, Digital
// P0.1 - Unassigned, Open-Drain, Digital
// P0.2 - Unassigned, Open-Drain, Digital
// P0.3 - Unassigned, Open-Drain, Digital
// P0.4 - Unassigned, Open-Drain, Digital
// P0.5 - Unassigned, Open-Drain, Digital
// P0.6 - Unassigned, Open-Drain, Digital
// P0.7 - Unassigned, Open-Drain, Digital
// P1.0 - Unassigned, Push-Pull, Digital
// P1.1 - Unassigned, Push-Pull, Digital
// P1.2 - Unassigned, Push-Pull, Digital
// P1.3 - Unassigned, Push-Pull, Digital
// P1.4 - Unassigned, Push-Pull, Digital
// P1.5 - Unassigned, Push-Pull, Digital
// P1.6 - Unassigned, Push-Pull, Digital
// P1.7 - Unassigned, Push-Pull, Digital
// P2.0 - Unassigned, Open-Drain, Digital
// P2.1 - Unassigned, Open-Drain, Digital
// P2.2 - Unassigned, Open-Drain, Digital
// P2.3 - Unassigned, Open-Drain, Digital
// P2.4 - Unassigned, Open-Drain, Digital
// P2.5 - Unassigned, Open-Drain, Digital
// P2.6 - Unassigned, Open-Drain, Digital
// P2.7 - Unassigned, Open-Drain, Digital
// P3.0 - Unassigned, Open-Drain, Digital
// P3.1 - Unassigned, Open-Drain, Digital
// P3.2 - Unassigned, Open-Drain, Digital
// P3.3 - Unassigned, Open-Drain, Digital
// P3.4 - Unassigned, Open-Drain, Digital
// P3.5 - Unassigned, Open-Drain, Digital
// P3.6 - Unassigned, Open-Drain, Digital
// P3.7 - Unassigned, Open-Drain, Digital
P1MDOUT = 0xFF;
XBR1 = 0x40;
}
void Oscillator_Init()
{
OSCICN = 0x83;
}
// Initialization function for device,
// Call Init_Device() from your main program
void Init_Device(void)
{
PCA0MD &= ~0x40;
Port_IO_Init();
Oscillator_Init();
}
void main()
{
Init_Device();
while(1)
{
led=0;
Delay_s(1);
led=1;
Delay_s(1);
}
}
/***********************************************************************************
* Function: Delay_us;
*
* Description: 延时程序, 延时时间范围: 0~65535us;
*
* Input: times, 延时时间变量;
*
* Output: none;
*
* Return: none;
*
* Note: 延时时间最大是65535us;
************************************************************************************/
void Delay_us(unsigned int times)
{
unsigned int i;
for (i=0; i<times; i++)
{
_nop_(); // 调用NOP,延时1us
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}
}
/***********************************************************************************
* Function: Delay_ms;
*
* Description: 延时程序, 延时时间范围: 0~65535ms;
*
* Input: times, 延时时间变量;
*
* Output: none;
*
* Return: none;
*
* Note: 延时时间最大是65535ms;
************************************************************************************/
void Delay_ms(unsigned int times)
{
unsigned int i;
for (i=0; i<times; i++)
Delay_us(1000); // 调用延时函数,延时1ms
}
/***********************************************************************************
* Function: Delay_s;
*
* Description: 延时程序, 延时时间范围: 0~65535s;
*
* Input: times, 延时时间变量;
*
* Output: none;
*
* Return: none;
*
* Note: 延时时间最大是65535s;
************************************************************************************/
void Delay_s(unsigned int times)
{
unsigned int i;
for (i=0; i<times; i++)
Delay_ms(1000); // 调用延时函数,延时1s
} |
|