📄 main.c
字号:
/*****************************************************************
程序说明
本程序的主要功能对支持SPI通信的AT45DB011B芯片的进行存取的演示性操作;
AT45DB011B的基本函数可以在SPI.c文件中看到,里面也已经做了比较详细的说明。
由于本程序只是演示性质的,所以是通过串口调试工具模拟来实现的,具体的存取操作可以
开辟一个缓冲,然后在SPI.c中的文件中的各函数修改成用指针传送的形参,然后在子函数中
使用循环发送/接收数据,这样的存储效率相对要高许多,由于时间关系,本程序未采取这样的
方式,实验者可以试图尝试修改程序来实现。
接线说明:
将JP10的9,10端用短路帽接上。
JP9的1,2端接上时,对芯片复位
JP9的3,4端接上时,芯片写保护状态
实验演示命令为:
当发送A后紧跟一个字节的数据,实现的操作是把该字节存到AT45DB011B中;
当发送BB后,返回的是刚才所写入的数据;
author : zdq@hdu
date :2007.12.23
any question please contact :zdq823@gmail.com
*************************************************************************/
#include<aduc834.h>
#include"..\headers\SPI.h"
#include"..\headers\Send.h"
Uchar UART_BUF[2];
Uchar UART_Counter ;
bit UART_Rec_Over;
void main()
{
Uchar Temp_Data;
SPI_Init();
Send_Init();
while(1)
{
if(UART_Rec_Over&&UART_BUF[0] == 'A')
{
UART_Rec_Over = 0;
AT45_Mainmemory_Write(0x100,0x23,UART_BUF[1]);
}
else if(UART_Rec_Over&&UART_BUF[0] == 'B')
{
UART_Rec_Over = 0;
Temp_Data = AT45_Mainmemory_Read(0x100,0x23);
Send_Byte(Temp_Data);
}
}
}
/*
void delay_us(uint time)
{
for (;time>0;time--);
}
void delay_ms(uint time)
{
while (time>1)
{
delay_us(439);
time--;
}
} */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -