📄 main.c
字号:
#include "def.h"
#include "vk33.h"
//在各种方式中,main.c函数和vk32.h是通用的def.h在spi和parallel方式是通用的
//uart模式下多了两个批量读写fifo的函数;底层函数是不一样的
void delay (unsigned int delaydata)
{
unsigned int tempdata=delaydata;
while(tempdata)
{
tempdata=tempdata-1;
}
}
void Init_led(void)
{
unsigned int tempdata=0x0ffff;
CH4_LED = 0;
CH3_LED = 0;
CH2_LED = 0;
CH1_LED = 0;
PAR_LED = 0;
SPI_LED = 0;
UART_LED = 0;
IIC_LED =0;
while(tempdata)
{
tempdata=tempdata-1;
}
CH4_LED = 1;
CH3_LED = 1;
CH2_LED = 1;
CH1_LED = 1;
PAR_LED = 1;
SPI_LED = 1;
UART_LED = 1;
IIC_LED = 1;
tempdata=0x0ffff;
while(tempdata)
{
tempdata=tempdata-1;
}
CH4_LED = 0;
CH3_LED = 0;
CH2_LED = 0;
CH1_LED = 0;
PAR_LED = 0;
SPI_LED = 0;
UART_LED = 0;
IIC_LED =0;
tempdata=0x0ffff;
while(tempdata)
{
tempdata=tempdata-1;
}
CH4_LED = 1;
CH3_LED = 1;
CH2_LED = 1;
CH1_LED = 1;
PAR_LED = 1;
SPI_LED = 1;
UART_LED = 1;
IIC_LED = 1;
tempdata=0x0ffff;
while(tempdata)
{
tempdata=tempdata-1;
}
CH4_LED = 0;
CH3_LED = 0;
CH2_LED = 0;
CH1_LED = 0;
PAR_LED = 0;
SPI_LED = 0;
UART_LED = 0;
IIC_LED = 0;
tempdata=0x0ffff;
while(tempdata)
{
tempdata=tempdata-1;
}
}
main()
{
static unsigned char dat1,dat2,dat3,dat4,m,n;
unsigned int tmp=0xfff;
unsigned char err_fla=0,err_flb=0,err_flc=0,err_fld=0;
n=0;
m=0;
//初试化MCU
config();
//初试化LED
Init_led();
//初始化VK;
config_vkxx();
//主串口测试;亮起UART-LED
CH4_LED = 1;
CH3_LED = 1;
CH2_LED = 1;
CH1_LED = 1;
PAR_LED = 1;
SPI_LED = 1;
UART_LED = 0;
IIC_LED = 1;
while(1)
{
//写出数据分别到4个子UART
write_reg(1,SFDR,m);
write_reg(2,SFDR,m);
write_reg(3,SFDR,m);
write_reg(4,SFDR,m);
//延迟后读取FIFO数据
delay(0x8ff);
delay(0x8ff);
dat1=read_reg(1,SFDR);
dat2=read_reg(2,SFDR);
dat3=read_reg(3,SFDR);
dat4=read_reg(4,SFDR);
//delay(0x8ff);
//delay(0x8ff);
//比较读回的数据是否为发出的数据后设置LED的状态。
if(dat1==m)
CH1_LED =0;
else
err_fla =1;
if(dat2==m)
CH2_LED =0;
else
err_flb =1;
if(dat3==m)
CH3_LED =0;
else
err_flc =1;
if(dat4==m)
CH4_LED =0;
else
err_fld =1;
//*********************************************
//如果有一次不等将熄灭灯
if(err_fla==1)
CH1_LED =1;
if(err_flb==1)
CH2_LED =1;
if(err_flc==1)
CH3_LED =1;
if(err_fld==1)
CH4_LED =1;
m=m+1;
if(m==255)
m=0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -