专栏中心

EEPW首页 > 专栏 > CC1110 SPI 程序

CC1110 SPI 程序

发布人:0750long 时间:2009-07-15 来源:工程师 发布文章
CC1110 SPI 程序

 

CC1110 SPI 口程序icon

电路连接如下图:


SSN:P04    SCK:P05
MOSI:P03    MISO:PO2

和硬件SPI口有关的配置为P口的功能,
SPI口所在位置,SPI口的波特率,时钟
极性SPOL,时钟相伴CPHA,中断,当然还
有主从设备等设置.如果是和别的设备
传数的话,还应该注意高/低位先传的
问题。文字上就说这么多,再贴一段
程序:

/***********************************************************/
//将芯片初始化到主/从模式
void INIT_SPI(void)
{
  IO_FUNC_PORT_PIN(0,2,IO_FUNC_PERIPH);
  IO_FUNC_PORT_PIN(0,3,IO_FUNC_PERIPH);
  //IO_FUNC_PORT_PIN(0,4,IO_FUNC_PERIPH);
  IO_FUNC_PORT_PIN(0,5,IO_FUNC_PERIPH);

  IO_PER_LOC_SPI0_AT_PORT0_PIN2345();     //串口0,位置1
#ifdef SPI_MASTER_MODE
  SPI_SETUP(0,57600,MY_SPI_M_OPTIONS);    //SPI0,57600,
  IO_FUNC_PORT_PIN(0,4,IO_FUNC_GIO);
  IO_DIR_PORT_PIN(0,4,IO_OUT);
  P0_4 = 0;
#else
  SPI_SETUP(0,57600,MY_SPI_S_OPTIONS);
  IO_FUNC_PORT_PIN(0,4,IO_FUNC_PERIPH);
#endif
  INT_ENABLE(INUM_URX0,INT_ON);
  INT_ENABLE(INUM_UTX0,INT_ON);
  INT_GLOBAL_ENABLE(INT_ON);
}

 

/**********************************************************************/
//主模式发一字节
void SPI0_M_SEND_BYTE(BYTE data)
{
  while(USART0_BUSY());
  U0DBUF = data;
  while(!USART0_BYTE_TRANSMITTED());
  U0CSR &= ~0x02;
}

void SPI0_S_SEND_BYTE(BYTE data)
{
  while(USART0_BUSY());
  U0DBUF = data;
}

 

================================

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

CHIPCON低功耗无线通讯IC介绍

视频 2009-10-19

为什么没有美国的帮助,中国仍然无法制造先进芯片

2025-08-08

解读100%芯片税! 大者生存 受灾户出列

EDA/PCB 2025-08-08

人工智能热潮中CoWoS 产能利用率仅为 60%,供应链处于戒备状态

Configuring PLDS with Flash Memory

构建节能AI加速器的硬件策略有哪些?

利尔达有源RFID平台资源

从固定到灵活:为什么可重构电池组在现代电动汽车中很重要

安检工作中,传感能力如何得到改善?

心电仪研讨专场

视频 2009-10-19

「刨根」台积电! 美知名分析师不要晶圆厂 要一半工程师

EDA/PCB 2025-08-08

有哪些工具可用于优化边缘 AI 性能?

智能计算 2025-08-08

单片集成 GaN 功率 IC 如何提高功率密度并减少元件数量?

430血压仪解决方案

视频 2009-10-19

什么是有源RFID

视频 2009-10-19

如何在米尔RK3576开发板上板端编译OpenCV并搭建应用

更多 培训课堂
更多 焦点
更多 视频

技术专区