⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text1930.#1

📁 得用c8051f930按键点亮相应的LED。
💻 #1
字号:
#include<C8051F930_defs.h>

void delay(unsigned char i);
void SYSCLK_Init (void);
void PORT_Init (void);
sbit LED = P1^6;

void main(void)
{
//unsigned char a,b;

P1MDOUT |= 0xff;
//P0DRV=0x0f;                          // enable P1.6 (LED) as push-pull output
VDM0CN = 0xde;                       // disable watchdog timer
VDM0CN = 0xad;
SYSCLK_Init ();                     // initialize oscillator
PORT_Init ();                       // initialize crossbar and GPIO
//SFR_PCA0CN =0x00;
//PCA0CPH4=0x00;
//WDTON=0x00;
  while(1){
  P1=0xff;
  delay(1000);
  P1=0x00;
  }
}

void delay(unsigned char i)
{
 unsigned char j;
 while(i--)
 {
  for(j=125;j>0;j--); 
 }
}

void SYSCLK_Init (void)
{
   int i;                              // delay counter

   OSCXCN = 0x67;                      // start external oscillator with
                                       // 18.432MHz crystal

   for (i=0; i < 256; i++) ;           // Wait for crystal osc. to start

   while (!(OSCXCN & 0x80)) ;          // Wait for crystal osc. to settle

   OSCICN = 0x88;                      // select external oscillator as SYSCLK
                                       // source and enable missing clock
                                       // detector
}

void PORT_Init (void)
{
   XBR0    = 0x04;                     // Enable UART0
   XBR1    = 0x40;
   XBR2    = 0x40;                     // Enable crossbar and weak pull-ups
   P0MDOUT |= 0x01;                     // enable TX0 as a push-pull output
   P1MDOUT |= 0x40;                     // enable P1.6 (LED) as push-pull output
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -