⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 spce061单片机的一些程序!C语言和汇编语言都有
💻 C
字号:
//======================================================================
//	The information contained herein is the exclusive property of
//	Sunnnorth Technology Co. And shall not be distributed, reproduced,
//	or disclosed in whole in part without prior written permission.
//	(C) COPYRIGHT 2003 SUNNORTH TECHNOLOGY CO.
//	ALL RIGHTS RESERVED
//	The entire notice above must be reproduced on all authorized copies.
//=======================================================================

//=======================================================================
//  工程名称:	SPR4096_SRAM
//  功能描述:   测试SPR4096 的SRAM读写
//  涉及的库:	CMacro1016.lib
//  组成文件:	main.c
//				4096.asm
//     			SPCE061A.INC
//				SPCE061A.H	
//	硬件连接:	CF->IOB11
//              SDA->IOB1
//              SCK->IOB0
//	维护记录:  2003-8-13	V1.0
//				2005-10-25	规范化
//=======================================================================
//=======================================================================
//	文件名称:	main.c
//	功能描述:	SPR4096 作SRAM读写操作
//	维护记录:	2003-8-13	V1.0
//				2005-10-25	规范化
//=======================================================================

extern	void				SP_SIOInitial(void);
extern	void				SP_SIOSendAWord(unsigned long int ulAddr,unsigned int uiData);
extern	void				SP_SIOSendAByte(unsigned long int ulAddr,unsigned int uiData);
extern	unsigned	int		SP_SIOReadAWord(unsigned long int ulAddr);
extern	unsigned	int		SP_SIOReadAByte(unsigned long int ulAddr);

#define	M_SECTOR	0									//第几个扇区(只能选零,因为4096的SRAM只有一页)
#include	"SPCE061A.H"
//========================================================================
//	语法格式:	int main(void)
//	实现功能:	主程序
//	参数:		无
//	返回值:	无
//========================================================================
int main(void)
{
	unsigned	long	int	ulStartAddr;
	unsigned	int		uiData;
	uiData=0;
	SP_SIOInitial();									//系统初始化
	
	*P_IOA_Dir = 0xffff;
	*P_IOA_Attrib = 0xffff;
	*P_IOA_Data = 0xffff;
	
	uiData = *P_IOB_Dir;								// IOB11:高电平,选择SRAM
	uiData |= 0x0800;									// 
	*P_IOB_Dir = uiData;
	uiData = *P_IOB_Attrib;								// 
	uiData |= 0x0800;									// 
	*P_IOB_Attrib = uiData;
	uiData = *P_IOB_Buffer;								//
	uiData |= 0x0800;									//
	*P_IOB_Data = uiData;
	
	ulStartAddr=0x800*(M_SECTOR);					

	SP_SIOSendAWord(ulStartAddr,0x1234);				//往4096的第M_SECTOR个扇区的首地址写入一个Word的数据

	*P_IOA_Data = 0x000f;								//点亮与IOA0~IOA3相连的LED

	uiData=SP_SIOReadAWord(ulStartAddr);				//从4096的第M_SECTOR个扇区的首地址读出一个Word的数据

	if(uiData!=0x1234)
		*P_IOA_Data = 0x0000;							//熄灭与IOA0~IOA7相连的LED
	else
		*P_IOA_Data = 0x00ff;							//点亮与IOA0~IOA7相连的LED

	while(1)
	{
	 	*P_Watchdog_Clear=0x1;
	}
	
}

	
		
	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -