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

📄 ch375.c

📁 ARM做的MP3播放器(LPC2148+VS1003+CH375+OLED)有频谱,用了操作系统uCOS-II(共享全部源码)
💻 C
字号:
#include <stdio.h>

#include "..\ARM\lpc214x.h"
#include "..\ARM\lpc214x_ex.h"
#include "ch375.h"

void mDelay1_2uS( )  /* 至少延时1.2uS,根据单片机主频调整 */
{
	nop();
	nop();
	nop();
	nop();
	nop();
	nop();
}


void CH375_PORT_INIT( )  /* 由于使用通用I/O模块并口读写时序,所以进行初始化 */
{
#if LIB_CFG_INT_EN == 0
	FIO0DIR &= 0xFFFFFFFF & (~(unsigned long)CH375_INT);  /* 设置8位并口和INT#为输入 */
#endif
	FIO0SET |= CH375_CS | CH375_WR | CH375_RD;  /* 设置CS,WR,RD默认为高电平 */
	FIO0DIR |= CH375_A0 | CH375_CS | CH375_WR | CH375_RD;  /* 设置CS,WR,RD,A0为输出 */
}


void xWriteCH375Cmd( unsigned char mCmd )		/* 外部定义的被CH375程序库调用的子程序,向CH375写命令 */
{
	mDelay1_2uS( );  /* 至少延时1uS */
	CH375DataOut();
	CH375_DATA_PORT = mCmd;
	SetCH375WriteCmd();
	nop(); /* 该操作无意义,仅作延时,CH375要求读写脉冲宽度大于100nS */
	UnSetCH375Write();
	mDelay1_2uS( ); mDelay1_2uS( );  /* 至少延时2uS */
}

void xWriteCH375Data( unsigned char mData )		/* 外部定义的被CH375程序库调用的子程序,向CH375写数据 */
{
	CH375DataOut();
	CH375_DATA_PORT = mData;
	SetCH375WriteData();
	nop();	/* 该操作无意义,仅作延时,CH375要求读写脉冲宽度大于100nS */
	UnSetCH375Write();
	mDelay1_2uS( );  /* 至少延时1.2uS */
}

unsigned char xReadCH375Data( void )			/* 外部定义的被CH375程序库调用的子程序,从CH375读数据 */
{
	unsigned char	mData;
	mDelay1_2uS( );  /* 至少延时1.2uS */
	CH375DataIn();
	SetCH375ReadData();
	nop();	/* 该操作无意义,仅作延时,CH375要求读写脉冲宽度大于100nS */
	mData = CH375_DATA_PORT;
	UnSetCH375Read();
	return( mData );
}




⌨️ 快捷键说明

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