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

📄 initial.c

📁 avr单片机atmage16驱动小灯的一些例程 并且包括一些收发数据的程序利用usb口
💻 C
字号:
/****************************************Copyright (c)****************************
文件  名:		initial.c
修改日期:		2006-1-23 13:47
描述:			初始化程序
版本:			V1.0
主控芯片:		M16  晶振频率:3.6864MHZ, 
********************************************************************************/
#include <iom16v.h>
#include <macros.h>
#include "define.h"
#include "extern.h"
#include "function.h"
#include "command.h"


/**********************************************************************
functionName:void paraInit(void)
description:变量初始化
**********************************************************************/
void globalParaInit(void)
{
	statusMachine = ST_START;
	paramControllerInit=0x00;
	prgMode=0;

}
//TIMER1 initialize - prescale:1024
// WGM: 0) Normal, TOP=0xFFFF
// desired value: 15Sec
// actual value: 15.000Sec (0.0%)
void timer1_init(void)
{
 TCCR1B = 0x00; //stop
 TCNT1H = 0x73; //setup
 TCNT1L = 0x5F;
 TCCR1A = 0x00;
 TCCR1B = 0x05; //start Timer
}

/**********************************************************************
functionName:void uart0Init(void)
description:串口初始化函数
desired baud rate: UBRRL决定
UBRRL = 1; //115200
UBRRL = 3; //57600
UBRRL = 11; //19200
UBRRL = 23; //9600
char size: 8 bit
parity: Disabled
**********************************************************************/
void uart0Init(void)
{
 	UCSRB = 0x00; 		//disable while setting baud rate
 	UCSRA = 0x00;
 	UCSRC = 0x86;
	UBRRL = 1; 	//set baud rate lo
 	UBRRH = 0x00; 		//set baud rate hi
// 	UCSRB = 0x98;		//使用中断
	UCSRB = 0x18;
	
}



/**********************************************************************
functionName:void portInit(void)
description:M16 IO初始化
**********************************************************************/
void portInit(void)
{
 	PORTA=0xFF;
 	DDRA=0x00;
 	PORTB=0xAA;
 	DDRB=0xFF;
 	PORTC=0xFF;
 	DDRC=0x00;
 	PORTD=0xFF;
 	DDRD=0x00;
}

/**********************************************************************
functionName:void allInit(void)
description:初始化所有的器件以及变量
**********************************************************************/
void allInit(void)
{
 	//开始初始化工作
 	CLI(); 				//关闭中断源 
 	globalParaInit();		//变量初始化
 	portInit();			//M16 IO初始化
	uart0Init();			//串口初始化函数
	timer1_init();
	MCUCR = 0x00;
 	GICR  = 0x00;
 	TIMSK = 0x00; 			
 	//SEI(); 				//中断使能
 	//完成所有的初始化工作
}

⌨️ 快捷键说明

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