ToB企服应用市场:ToB评测及商务社交产业平台

标题: 鸿蒙OSHI3861开发板SPI使用 [打印本页]

作者: 鼠扑    时间: 2022-6-24 05:05
标题: 鸿蒙OSHI3861开发板SPI使用
HI3861 SPI控制WS2812使用记录
   WiFi连接类开发文档
环境搭建可以参考这个
当然也可以参考小熊派的教程
  
  1. static void spi_init(void)//SPI初始化
  2. {
  3.     char spi_send_buff[2400]={0};
  4.     int ret;
  5.     WifiIotSpiCfgBasicInfo param={0};
  6.     WifiIotSpiCfgInitParam initParam={0};
  7.     initParam.isSlave=0;//主设备
  8.     initParam.pad=0;//不理解
  9.     param.cpha=WIFI_IOT_SPI_CFG_CLOCK_CPOL_0;              //CPOL=0,CPHA=0 时钟信号idle状态为低电平,第一个时钟边沿采样数据,CPOL=0,CPHA=1 时钟信号idle状态为低电平,第二个时钟边沿采样数据。
  10.     param.cpol=WIFI_IOT_SPI_CFG_CLOCK_CPHA_1;              //CPOL=1,CPHA=0 时钟信号idle状态为高电平,第一个时钟边沿采样数据,CPOL=1,CPHA=1 时钟信号idle状态为高电平,第二个时钟边沿采样数据。
  11.     param.dataWidth=WIFI_IOT_SPI_CFG_DATA_WIDTH_E_8BIT;    //传送数据的大小
  12.     param.endian=WIFI_IOT_SPI_CFG_ENDIAN_LITTLE;           // 数据传输是大端模式还是小端模式,这里选择小端模式
  13.     param.framMode=WIFI_IOT_SPI_CFG_FRAM_MODE_MOTOROLA;    //通信协议
  14.     param.freq=7*1000000;                                  //7M   
  15.     param.pad=0;//不理解
  16.    
  17.     ret=SpiInit(WIFI_IOT_SPI_ID_0,initParam,&param);//SPI初始化
  18.     if(ret)
  19.     {
  20.         printf("SPI初始化失败%c!!\r\n",spi_send_buff[0]);
  21.     }
  22.     ret = SpiSetLoopBackMode(WIFI_IOT_SPI_ID_0,0);//关闭回环测试
  23.     if(ret)
  24.     {
  25.         printf("SPI初始化失败!!\r\n");
  26.     }
  27.     ret = SpiSetDmaMode(WIFI_IOT_SPI_ID_0,1);//使能DMA传输
  28.     if(ret)
  29.     {
  30.         printf("DMA初始化失败!!\r\n");
  31.     }   
  32.     GpioInit();
  33.     IoSetFunc(WIFI_IOT_IO_NAME_GPIO_9,WIFI_IOT_IO_FUNC_GPIO_9_SPI0_TXD);
  34.     GpioSetDir(WIFI_IOT_IO_NAME_GPIO_9,WIFI_IOT_GPIO_DIR_OUT);
  35.     SpiSetIrqMode(WIFI_IOT_SPI_ID_0,0);//不启用中断
  36.    
  37. }
复制代码
点亮一个LED代码,因为WS2812发送的是GRB,这里处理了一下处理成了RGB
[code]void ws2812_light_one(uint32_t send_data){    uint8_t i=0;    char color_buff[24]={0};    for ( i = 0; i < 24; i++)    {        if (send_data&0x800000)        {            if(i8&&i




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4