initdev.c
来自「LPC2129实现从SPI通讯和两个串口定时器中断」· C语言 代码 · 共 100 行
C
100 行
#include "InitDev.h"
#include "UART1.H"
#include "IRQ_Timer0.h"
#include "comm.h"
#include "I2cInt.h"
/****************************************************************************
* 名称:InitDev(void)
* 功能:初台化硬件
* 入口参数:无
* 出口参数:返回值为1时表示初化成功,为0表除参数出错
****************************************************************************/
void InitIRQ(void)
{
VICIntSelect = 0x00000000;
VICIntEnClr = 0xffffffff;
/* 设置UART0中断允许 VICIntEnable=0x00000250; */
VICVectAddr1 = (int)IRQ_UART0; // 设置UART0向量地址
VICVectCntl1= 0x26; // UART0中断通道分配到IRQ slot1
VICIntEnable |= (1<<6); // 使能UART0中断
/**/
/* 设置UART1中断允许
VICVectAddr3 = (int)IRQ_Timer0; // 设置UART0向量地址
VICVectCntl3 = 0x24; // UART1中断通道分配到IRQ slot 0,即优先级最高 0
VICIntEnable |= (1<<4); // 使能UART0中断*/
VICVectCntl2 = 0x29; // I2C通道分配到IRQ slot 2,
VICVectAddr2 = (int32)IRQ_I2C; // 设置I2C中断向量地址
VICIntEnable = 0x0200; // 使能I2C中断
/* 设置定时器0中断IRQ */
/* VICVectCntl3 = 0x24; // 定时器0中断通道分配最高优先级(向量控制器0)
VICVectAddr3 = (uint32)IRQ_Timer0; // 设置中断服务程序地址向量
VICIntEnable = 0x00000010; // 使能定时器0中断
*/
}
/****************************************************************************
* 名称:InitU1IRQ(void)
* 功能:初台化硬件
* 入口参数:无
* 出口参数:返回值为1时表示初化成功,为0表除参数出错
****************************************************************************/
void InitU1IRQ()
{
/* 设置UART1中断允许 */
VICVectAddr3 = (int)IRQ_UART1; // 设置UART1向量地址
VICVectCntl3 = 0x00000027; // UART1中断通道分配到IRQ slot3
VICIntEnable |= (1<<7); // 使能UART0中断
}
/****************************************************************************
* 名称:InitDev(void)
* 功能:初台化硬件
* 入口参数:无
* 出口参数:无
****************************************************************************/
void InitDev(void)
{
PINSEL0 = 0x00000000; //初始化
PINSEL1 = 0x00000000;
IO0DIR = 0x00400000;
/* IO1DIR = 0x00000000; */
/*初始化串口通讯*/
UART1_Init(19200);
/*初始化所有中断地址*/
InitComm ( );
/* ADS1256_Init(); */
InitTimer0();
/*初始化所有中断地址 */
InitIRQ();
I2C_Init(400000);
}
void Led_on()
{
IO0DIR|=0x00200000;
IO0SET|=0x00200000;
}
void Led_off()
{
IO0DIR|=0x00200000;
IO0CLR|=0x00200000;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?