?? initial.c
字號(hào):
/****************************************Copyright (c)**************************************************
**
** 開 發(fā) 部
**
** 文 件 名: initial.c
** 最后修改日期: 2006-1-23 13:47
** 描 述: 初始化程序
** 版 本: V1.0
** 主 控 芯 片:M16 晶振頻率:7.3728MHZ,
**********************************************************************************************************/
#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 = 0x2D; //setup
TCNT1L = 0x11;
OCR1AH = 0xD2;
OCR1AL = 0xEF;
OCR1BH = 0xD2;
OCR1BL = 0xEF;
ICR1H = 0xD2;
ICR1L = 0xEF;
TCCR1A = 0x00;
TCCR1B = 0x05; //start Timer
}
/**********************************************************************
functionName:void uart0Init(void)
description:串口初始化函數(shù)
desired baud rate: UBRRL決定
UBRRL = 3; //115200
UBRRL = 7; //57600
UBRRL = 23; //19200
UBRRL = 47; //9600
char size: 8 bit
parity: Disabled
**********************************************************************/
void uart0Init(void)
{
UCSRB = 0x00; //disable while setting baud rate
UCSRA = 0x02;
UCSRC = 0x86;
UBRRL = BAUD115200; //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=0xFF;
DDRB=0x00;
PORTC=0xFF;
DDRC=0x00;
PORTD=0xFF;
DDRD=0x00;
}
/**********************************************************************
functionName:void allInit(void)
description:初始化所有的器件以及變量
**********************************************************************/
void allInit(void)
{
//開始初始化工作
CLI(); //關(guān)閉中斷源
globalParaInit(); //變量初始化
portInit(); //M16 IO初始化
uart0Init(); //串口初始化函數(shù)
timer1_init();
MCUCR = 0x00;
GICR = 0x00;
TIMSK = 0x00;
//SEI(); //中斷使能
//完成所有的初始化工作
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -