spi.c

来自「使用picc开发的使用spi总线控制AD和DA芯片的源程序」· C语言 代码 · 共 81 行

C
81
字号
//   SPI MICROWIRE INTERFACE HANDLER
//   COPYRIGHT PROPERTY OF ALPHADATA DESIGNS LIMITED (c) 1999

//   published by permission of Alphadata designs on
//   Hi-Tech C website, http://www.workingtex.com/htpic. Thanks!

//   P4/0 : OUTPUT : DATA OUT
//   P4/1 : OUTPUT : CLOCK
//   P4/2 : OUTPUT : CHIP SELECT ATOD
//   P4/3 : OUTPUT : CHIP SELECT DTOA
//   P4/7 : INPUT  : DATA IN
//
//------------------------------------------------------
// Version History
//------------------------------------------------------
// Issue 1.0 : 21/12/1999 : First Officially Released
//------------------------------------------------------

#include "h8genlib.h"
#include "ioh8314.h"

extern byte p4dr;

// Select device
void spi_dac_select(void)
{
  p4dr = p4dr & 0b11110111;
  P4DR = p4dr;
}

// Deselect device
void spi_dac_deselect(void)
{
	p4dr = p4dr | 0b00001000;
	P4DR = p4dr;
}

// Select device
void spi_adc_select(void)
{
  p4dr = p4dr & 0b11111011;
  P4DR = p4dr;
}

// Deselect device
void spi_adc_deselect(void)
{
	p4dr = p4dr | 0b00000100;
	P4DR = p4dr;
}

// Set clock high
void spi_hiclock(void)
{
	p4dr = p4dr | 0b00000010;
  P4DR = p4dr;
}

// Set clock low
void spi_loclock(void)
{
  p4dr = p4dr & 0b11111101;
  P4DR = p4dr;
}

// Set Data high
void spi_hidata(void)
{
  p4dr = p4dr | 0b00000001;
  P4DR = p4dr;
}

// Set data low
void spi_lodata(void)
{
	p4dr = p4dr & 0b11111110;
	P4DR = p4dr;
}

// end

⌨️ 快捷键说明

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