我的主程序如下,求指导!万分感谢!!!
int main(void)
{
u8 datatemp[1];
u8 nu=0,num=0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
BEEP_Init();
LED_Init();
KEY_Init();
USART1_Init(115200);
GPIO_ResetBits(GPIOE,GPIO_Pin_5);
LCD_Init();
AT24CXX_Init();
GPIO_ResetBits(GPIOE,GPIO_Pin_5);
LCD_ShowString(30,130,200,16,16,"KEY0:Read"); //显示提示信息
//对24C02测试
while(AT24CXX_Check())
{
Usart1_PutString(CheckNotOK,strlen(CheckNotOK));
}
Usart1_PutString(CheckIsOK,strlen(CheckIsOK));
while(1)
{
u8 key;
u16 i;
if(USART_GetFlagStatus(USART1,USART_FLAG_RXNE)==SET)
{
u8 Text,Text_len;
USART_ClearFlag(USART1,USART_FLAG_RXNE);
Text=USART_ReceiveData(USART1)+num;
Text_len=sizeof(Text);
AT24CXX_Write(num,&Text,Text_len);
if(num>254)
num=0;
else
num++;
Usart1_PutString(WriteResult,strlen(WriteResult));
}
key=KEY_Scan(0);
if(key==KEY0_PRES)//KEY1按下,读取字符串并显示
{
LCD_ShowString(30,170,200,16,16,"Start Read 24C02.... ");
AT24CXX_Read(nu,datatemp,1);
LCD_ShowString(30,170,200,16,16,"The Data Readed Is: ");//提示传送完成
LCD_ShowString(30,190,200,16,16,datatemp);//显示读到的字符串
if(nu>255)
nu=0;
else
nu++;
}
i++;
delay_ms(10);
if(i==20)
{
GPIO_WriteBit(GPIOB,GPIO_Pin_5,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_5)));
i=0;
}
}
}
|