资源简介
freeRTOS,hal库,stm32f4,硬件SPI和模拟spi方式,与通信rn8209,实际运用过。
代码片段和文件信息
/*********************************************************************************
File info : rn8209d.c
Mark :
*********************************************************************************/
/********************************************************************************
Head files
*********************************************************************************/
#include “data.h“
#include “type.h“
#include “time.h“
#include “math.h“
#include “stdlib.h“
#include “stdio.h“
#include “string.h“
#include “rn8209d_reg.h“
#include “cal.h“
#include “rn8209.h“
#include “debug.h“
#include “bcd.h“
//#include “freq_com.h“
#include “control.h“
//===============================================================================
//===============================================================================
extern SPI_HandleTypeDef hspi2;
//#define NOP() {int i; for (i = 0; i < 5; i++);}
//#define Delay2us() {int i; for (i = 0; i < 50; i++);}
#define delay_us(x) {int i; for (i = 0; i < x; i++);}
#define RN8209_CS(x) HAL_GPIO_WritePin(SPI2_NSS_GPIO_Port SPI2_NSS_Pin x)//PB12
#define RN8209_RST(x) HAL_GPIO_WritePin(RN8302B_RESET_GPIO_Port RN8302B_RESET_Pin x)//PC0
//#define RN8209_CLK(x) HAL_GPIO_WritePin(GPIOB GPIO_PIN_9/*10*/ x)//PB9//PB10
//#define RN8209_MOSI(x) HAL_GPIO_WritePin(GPIOC GPIO_PIN_14/*3*/ x)//P14//PC3
#define phase_A 0
#define phase_B 1
//===============================================================================
//===============================================================================
//typedef enum {ERROR = 0 SUCCESS = !ERROR} ErrorStatus;
//===============================================================================
//===============================================================================
read_from_rn8209_type rn8209;
//calibrate_type calibrate;
//默认换算系数
#define rn8209_Cst_Kia 41938
#define rn8209_Cst_Kib 44529
#define rn8209_Cst_Ku 8711
static rt_data_type out_data;
rt_data_type rtdata;
U64 VoltPowerFactorOutputCurrentFreqF_PowerN_PowerS_PowerAngleF_EnergyN_Energy;
//===============================================================================
rt_data_type *get_tn_rtdata_ptr( int tn )
{
return &out_data;
}
double acos(double x);
/* SPI2 init function */
void MX_SPI2_rn8209(void)
{
if (HAL_SPI_DeInit(&hspi2) != HAL_OK)
{
_Error_Handler(__FILE__ __LINE__);
}
hspi2.Instance = SPI2;
hspi2.Init.Mode = SPI_MODE_MASTER;
hspi2.Init.Direction = SPI_DIRECTION_2LINES;//
hspi2.Init.DataSize = SPI_DATASIZE_8BIT;
hspi2.Init.CLKPolarity = SPI_POLARITY_LOW;
hspi2.Init.CLKPhase = SPI_PHASE_2EDGE;//
hspi2.Init.NSS = SPI_NSS_SOFT;
hspi2.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;//
hspi2.Init.FirstBit = SPI_FIRSTBIT_MSB;
hspi2.Init.TIMode = SPI_TIMODE_DISABLE;
hspi2.Init.CRCCalcu
- 上一篇:计算机网络习题及参考答案
- 下一篇:基于51单片机的人体心率采集
相关资源
- Hspice工艺库文件
- halcon license 2020..11halcon证书license
- 建PSPICE仿真模型库[中文教程]
- HAL库版本,硬件SPI驱动74HC595
- stm32f10x相关库文件 (包含: stm32f10x
- SPICE语法基础详细学习资料
- 树莓派串口通信
- FlashTool STM32F103ZET6通过USB串口烧写
- OV13850相关代码
- S5PV210 spi驱动 TJC3224T022_011X 屏幕
- 如何在TMCL软件中通过SPI快速配置TMC
- 0.35umCOM工艺Hspice库文件
- meituan_spider.rar
- SPI驱动之南瑞NRSEC3000加密芯片驱动开
- VC+halcon,显示图片,缩放拖动
- dspic单片机电机控制
- SPI通信的Verilog实现 附详细说明
- LM386 SPICE模型 兼容Multisim
- W5500 TCP/IP SPI发送控制
- ADXL375驱动程序4线SPI通信方式
- 常用低速接口verilog代码Uart/SPI/I2C等
- multisim用AD736 的spice模型
- STM32 模拟SPI 一主多从
- ADS1118 驱动程序
- msp430f5438a操作nrf24l01
- spice 018um库文件
- stm32+MAX7219数码管模块显示程序 spi接口
- nrf51822 spi
- pspice的rcc开关电源仿真
- 基于fpga的spi和i2c接口电路转化电路
评论
共有 条评论