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

📄 common.bak

📁 2008年山东省大学生电子设计大赛 c题 多功能电子计价秤 单片机用的 c8051f005
💻 BAK
字号:
#include "include.h"


void sys_init()
{
	WDTCN=0XDE;					//关看门狗
	WDTCN=0XAD;
//	OSCICN=0x07;				//内部16M时钟
	OSCXCN=0X67;				//使用外部20MHz晶振作为时钟
//	for(i=0;i<256;i++);			//等待振荡器启动
	while(!(OSCXCN&0X80));		//等待晶振工作稳定
	OSCICN|=0x08;				//使用外部时钟源作为系统时钟
	OSCICN=0X08;				//禁内部振荡器

	XBR0=0X04;					//
	XBR1=0X00;					//INT0连接到端口
	XBR2=0X40;					//交叉开关允许
	PRT0CF=0xFF;				//设置为推挽输出
	PRT1CF=0xFF;				//
	PRT2CF=0xFf;				//
	PRT3CF=0xFF;				//
	
}

void delayus()
{
	_nop_();
	_nop_();
	_nop_();
	_nop_();
	_nop_();
	_nop_();
	_nop_();
}

void delay_ms(uint count)
{
	uint ii,jj;
	for(ii=0;ii<count;ii++)
	{
		for(jj=0;jj<2300;jj++)
		{
			_nop_();
		}
	}
}

void delay_us(uint count)
{
	for(;count>0;count--)
	{
		_nop_();
		_nop_();
		_nop_();
		_nop_();
		_nop_();
		_nop_();
		_nop_();
		_nop_();
	}
}

void delay(uint i)
{
	for(;i>0;i--);
}


uint qm(uchar n)
{
	uint y=1;
	for(;n>0;n--)
		y*=2;
	return y;
}


void uart_init(void)
{
   SCON = 0x50;                                   //模式1,8位UART,允许RX
   TMOD = 0x20;                                    // 定时器1,模式2,8位重装
   TH1 = -(24576000/9600/16)+1;                    //按波特率设置定时器1重装载值
   TR1 = 1;                                        //启动定时器1
   CKCON|= 0x10;                                 // 定时器1使用系统时钟为时基
   PCON|= 0x80;                                   //SMOD0 = 1
   TI = 1;                                        //表示TX0就绪
}

⌨️ 快捷键说明

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