RN8209 RN8302 spi驱动和校表程序STM32

这篇具有很好参考价值的文章主要介绍了RN8209 RN8302 spi驱动和校表程序STM32。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

/***************************************
* FILENAME: rn8209.c
* PURPOSE:  RN8209 Metering Chip Driver
* COPYRIGHT: (c) 2019-2020 by e-Design Co., Ltd.
* DATE: 2020-06-11
* VERSION: 1.0
***************************************/

#include "rn8209.h"

// 定义一些宏,用于控制芯片的引脚操作
#define PinWrite_RN8209CS1(x) (x ? (HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_SET)) : (HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_RESET)))
#define PinMode_MISO2(x) (x ? (GPIOB->MODER |= GPIO_MODER_MODER14_0) : (GPIOB->MODER &= ~GPIO_MODER_MODER14_0))
#define PinPullUp_MISO2(x) (x ? (GPIOB->PUPDR |= GPIO_PUPDR_PUPDR14_0) : (GPIOB->PUPDR &= ~GPIO_PUPDR_PUPDR14_0))
#define PinWrite_MISO2(x) (x ? (HAL_GPIO_WritePin(GPIOB, GPIO_PIN_14, GPIO_PIN_SET)) : (HAL_GPIO_WritePin(GPIOB, GPIO_PIN_14, GPIO_PIN_RESET)))
#define PinRead_MISO2() (HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_14))

// 向RN8209芯片写入一个字节的数据
static void fnSpi2_WriteByte(u8 Dat)
{
   
  HAL_SPI_Transmit(&hspi2, &Dat, 1, 1000);
}

// 从RN8209芯片读取一个字节的数据
static u8 fnSpi2_ReadByte(void)
{
   
  u8 Dat;
  HAL_SPI_Receive(&hspi2, &Dat, 1, 1000);
  return Dat;
}

// 向RN8209芯片写入数据
void fnRn8209_Write(u16 Dst, u8 *Src, u16 DatLen, u16 Repeat)
{
   
  u16 i;
  PinMode_MISO2(0);  // 设置MISO引脚为输出模式
  PinPullUp_MISO2(0)

文章来源地址https://www.toymoban.com/news/detail-822388.html

到了这里,关于RN8209 RN8302 spi驱动和校表程序STM32的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [HAL]STM32 SPI+DMA驱动WS2812

    该程序是纯手敲,非Cube生成!所有代码均注释。 源码在文章后面获取 Keyword: 单线通讯、归零码、Reset、RGB顺序 RGB一共有24bit位 -相当于驱动一个灯要24bit位 -驱动若干个灯要24* n bit位,通过Reset码决定数据终止(保持) 24bit位应该如何发送? 可见: 表示低电平需要 T0H和T0L的配

    2024年02月09日
    浏览(49)
  • STM32的硬件SPI驱动AD7124的方法

    AD7124是一款适合高精度测量应用的低功耗、低噪声、完整模拟前端。该器件内置一个低噪声24位Σ-Δ型模数转换器(ADC),可配置来提供8个差分输入或15个单端或伪差分输入。片内低噪声级确保ADC中可直接输入小信号。可用于温度测量、压力测量、工业过程控制、仪器仪表和只能

    2024年02月07日
    浏览(74)
  • STM32_SPI总线驱动OLED详细原理讲解

    目录 13.1.1 SPI总线介绍 SPI(Serial Peripheral interface):是由Motorola公司开发的串行外围设备接口,是一种高速的,全双工,同步的通信总线。主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器等器件。 UART:异步串行全双工 SPI:同步串行全双工

    2024年01月20日
    浏览(40)
  • RN 项目异常问题整理

    常见问题 无法找到 CardStackStyleInterpolator StackViewStyleInterpolator 这个方法集来代替 CardStackStyleInterpolator的,这个方法集的路径也需要注意一下,在2.12.1版本之前, 该文件在react-navigation/src/views/StackView/中,在更高版本中,该文件已经移到了react-navigation-stack/dist/views/StackView/中 安装

    2024年02月11日
    浏览(42)
  • Mac RN环境搭建

    目录 IOS Android 吐槽:RN ios android原生环境搭建有时候是真恶心,电脑环境不一样配置也有差异。 前提:我已经安装官网的文档配置了ios环境 执行 报错  然后自己百度有一条说需要执行 执行完之后说是没有权限,执行失败。因为Mac自带的Ruby有权限限制,加sudo也不行。 继续百

    2024年02月13日
    浏览(24)
  • RN(React Native)

     RN是React的原生组件库 网址:React Native 中文网 · 使用React来编写原生应用的框架 一、 ReactNative开发环境的搭建   在本机搭建RN项目开发运行环境  —— 3GB+  ①安装必需的编译软件:Node.js + JDK  ②安装Android原生App开发软件 —— Android Studio  ③使用Android开发软件下载编译必

    2024年02月07日
    浏览(43)
  • 基础篇010.3 STM32驱动RC522 RFID模块之三:STM32软件模拟SPI驱动RC522

    目录   1. 实验硬件及原理图 2. 利用STM32CubeMX创建MDK工程 2.1 STM32CubeMX工程创建 2.2 配置调试方式 2.3 配置时钟电路 2.4 配置时钟 2.5 配置GPIO 2.6 配置串口 2.7 项目配置 3. MDK工程驱动代码调试 3.1 按键、LED程序 3.2 SPI软件模拟程序 3.3 RC522驱动程序 3.4 UART串口printf,scanf函数串口重定

    2024年04月17日
    浏览(52)
  • stm32 AD7606 芯片驱动 hal库 spi通讯

             这两天用来个ad7606 的芯片,结果硬件出来个问题,花了不少时间看这个芯片手册,干脆分享一下。         OS0 OS1 OS2         这个三个引脚用于配置芯片的采样频率,只要不设置为111即可正常采样; CONVSTA CONVSTB 这两个引脚用于启动芯片采集转换,默认高电平,

    2024年04月26日
    浏览(38)
  • STM32F103硬件SPI驱动ADS1256

    最近实验室有几个项目都需要用到高分辨率AD转换,于是就开始了ADS1256的开发。 新手,焊得丑,见谅(能用就行) 二: 本以为很容易就能做完,结果被采样速率的问题困扰了很久。 代码如下,使用2.5V基准源进行测试,结果在读ADS时经常出现读出0xFFFFFF的情况,只能忍住悲伤

    2024年02月12日
    浏览(71)
  • STM32初学入门笔记(5):使用STM32CubeMX通过SPI,IIC驱动OLED屏幕

    随着时代的进步,OLED显示屏成为了继LCD显示屏之后的新一代显示屏技术,OLED具有可视角高,功耗低,厚度薄,耐冲击、振动能力强,像素响应时间低等优点,在嵌入式开发中,OLED显示器也是一个主要的部分,制作OLED显示模块的驱动也是学习STM32路上的重要一部分,本篇将从

    2024年02月04日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包