STM8 PCF8591 AD/DA转换子程序

发布者:变形金刚最新更新时间:2020-06-28 来源: eefocus关键字:STM8  PCF8591  DA转换 手机看文章 扫描二维码
随时随地手机看文章

软件设计

/*********************************************************************

目 的: 建立PCF8591操作库

目标系统: 基于STM8单片机 

应用软件: Cosmic CxSTM8 

*********************************************************************/


#include


#define MODE0 0x00

#define MODE1 0x10

#define MODE2 0x20

#define MODE3 0x30

#define CHNL0 0

#define CHNL1 1

#define CHNL2 2

#define CHNL3 3


#define DAouputEn 0x40


#define WD_DADR 0x90

#define RD_DADR 0x91


void PCF8591_WriteAByte(u8 dat)

{

      I2C_Start();

      I2C_SendDAdr(WD_DADR);

      I2C_SendDat(dat);

      I2C_stop();

}


u8 PCF8591_ReadAByte(void)

{

      u8 dat;

      I2C_Start();

      I2C_NAck();

      I2C_SendDAdr(RD_DADR);

      dat=I2C_RcvDat();

      I2C_stop();

      I2C_Ack();

      return dat;

}


void PCF8591_getAD(u8 mode,u8 chan,u8 *ADC)

{

      PCF8591_WriteAByte(mode|chan);

      ADC[0]=PCF8591_ReadAByte();

}


关键字:STM8  PCF8591  DA转换 引用地址:STM8 PCF8591 AD/DA转换子程序

上一篇:STM8 SPI驱动LCD12864
下一篇:STM8 PCF8563时钟芯片子程序

推荐阅读最新更新时间:2024-11-13 22:05

STM8 IO口的位操作
很多新手在不用STM库函数的情况下,不知道如何多STM8的I/O口进行按位操作,下面把我刚开始用STM8的经验跟大家分享一下! p style= color: rgb(51, 51, 51); font-family: Tahoma, SimSun, Verdana, Arial; font-size: 12px; line-height: normal; span style= background-color: white; /*----------------------------------------------------------------------------*/ //IO bits define
[单片机]
基于AD9911频率源的设计与实现
内容摘要 设计了一种由单片机PIC18LF4520控制DDS芯片AD9911的频率源电路。阐述了单片机控制DDS的软硬件实现方法,以及AD9911内部寄存器的配置要点。系统设计外围电路简单,可方便地实现对频率源电路输出频率、相位和工作模式的控制,输出信号频率范围为25~75 MHz。实验结果表明,该频率源具有输出频率精确、频率分辨率高和相位噪声低等特点,符合通信系统对频率源的设计要求。 频率源是通信、雷达、仪器、空间电子设备和电视等电子系统的核心,其性能直接影响电子系统的性能指标。捷变频、低相位噪声、宽频带以及高频率分辨率是频率合成器的研究热点,直接数字频率合成(DDS)正是在这种背景下发展起来的。DDS具有以下优势:在完
[单片机]
基于<font color='red'>AD</font>9911频率源的设计与实现
STM8 中关于PWM1 和 PWM2的区别
STM8中PWM1和PWM2模式是时钟输出PWM波形控制的一个必选参数,使用库函数原型如下: void TIMx_OC2Init(TIM2_OCMode_TypeDef TIM2_OCMode, TIM2_OutputState_TypeDef TIM2_OutputState, uint16_t TIM2_Pulse, TIM2_OCPolarity_TypeDef TIM2_OCPolarity) 函数中的第一个参数TIM2_OCMode_TypeDef就是指定当前的 PWM波形模式是PWM1或PWM2,关于这两者的区别通俗点讲就是: PWM1中空控
[单片机]
关于Stm8库函数使用需要格外注意的地方
最近在调一个无线项目,用的是STM8003系列的单片机。调用读IO口的库函数 if(SET == GPIO_ReadInputPin(RF_DAT_GPIO_PORT ,RF_DAT_GPIO_PIN)) { //高电平操作 } else { //低电平操作 } 结果死活读不了高电平,但是使用 if(GPIO_ReadInputPin(RF_DAT_GPIO_PORT ,RF_DAT_GPIO_PIN)) { //高电平操作 } else { //低电平操作 } 却可以正确读入引脚电平 如是对这个库函数进行了跟踪发现IO口为高电平时,其返回的值不是SET而是0x64。再看SET定义为enum类型。 typedef en
[单片机]
基于ADI AD522集成16位单元方案设置DAC四参数测量
ADI公司的AD5522是高集成度四通道参数单元测量单元(PMU),包括四个参数的单个通道。单通道单元(PPMU)通道包括五个16位,电压输出DAC,可设置驱动电压输入、钳位输入和比较器输入(高输入和低)的输入输入范围。提供范围为驱动和测量电流范围A±5μ80 mA。四范围使用范围±5μ80 mA。检测传感器;双通道还可以使用片外检测检测提供一个高达±80 mA的高电流输出范围。超过±80 mA的电流需要外部放大器。50 MHz的接口可工作在快速更新模式。在83 MHz时,每一个支持低压信号(LVDS)提供接口协议。为通道比较输出,用于通过/不通过测试和特性补件。控制控制器允许用户轻松地更改或驱动条件,DAC和所用设备选电流范围.
[测试测量]
基于ADI <font color='red'>AD</font>522集成16位单元方案设置DAC四参数测量
3合一套件 stm8 学习笔记之css
ST 3合一开发板stm8学习之 CSS 一 程序简介: 该工程主要涉及到gpio和rcc,tim部分,工程实现的功能是系统时钟内部和外部的切换已验证系统时钟的的安全性,当外部时钟失效时 会自动切换到内部时钟运行 时钟特征: 1 强大的控制器,更容易得到高性能的同时保证功率最低 2 可独立管理的时钟源,都带有分频器 没有倍频 可以得到更高精度的时钟 3 可靠的无障碍时钟切换机制。程序运行中可以切换时钟源 4 抗干扰时钟配置寄存器,大部分时钟寄存器有一个互补寄存器,如果不匹配就会产生复位(系统自动完成) 时钟源: 1—24m外部晶振 外部时钟信号 最高24m //以上为HSE 16m高速内部rc振荡器 // HSI 128k低
[单片机]
AD7768/AD7768-4 24位ADC的解决方案
如今,几乎每种个人电子设备都已经集成了音频功能。无论在繁忙的城市街道还是乡村地区,都可以看到不同年纪的人们边听音乐边做日常事务。最近五年来,音频设备的绝对数量已跃升为天文数字。一般消费者能接触到的媒体源比以前要广泛得多,用以观看和播放内容的设备种类也更加多样。这种数字媒体大爆炸是全球范围内手机、平板电脑、笔记本电脑和蓝牙扬声器的使用日益增长的结果。很多人家里都有这些设备,或至少其中的几种。 当今消费者对高保真音频传输已经习以为常。音响系统中有静电噪音和干扰失真的时代已经一去不复返。同时,音频播放还有转移到云端的趋势。现在有许多流媒体服务都在竞相争夺听众,它们全都提供高保真音乐,而价格只是收藏CD的一个零头。这就意味着,我们每个
[嵌入式]
<font color='red'>AD</font>7768/<font color='red'>AD</font>7768-4 24位ADC的解决方案
在模拟电路中如何计算AD 采集数据的线性
在对AD采集的数据进行分析时,我们会发现在某些电路中,AD采集到的数据总是和实际的数据有一定的误差,而且这个误差是不确定的,在某段电压时误差较小,但是到某段时误差有很大,就感觉我们的AD 不具有线性,其实不然。 因为电路在采集时,首先可能是电路中一些干扰,还有就是AD的线性不是 y = a*x 这中线性关系,而是有一个过0点,例如 y = a*x - b 的这中线性关系。所以我们一定要确定AD 采集数据的线性关系,这杨才能尽量减少AD采集时的误差。 而且在批量生产时,相同的硬件,不同的产品。AD采集数据时实际值和显示值之间的线性关系也可能不同,所以我们在对产品调试的时候不能忽视这个问题,可能导致你的程序不能具有通用性。 同样的
[单片机]
在模拟电路中如何计算<font color='red'>AD</font> 采集数据的线性
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved