单片机AD-DA转换

发布者:sedsedq最新更新时间:2018-06-25 来源: eefocus关键字:单片机  AD-DA转换 手机看文章 扫描二维码
随时随地手机看文章
  1. #include   

  2. #include "../iic/iic.h"  

  3.   

  4. unsigned char AD_read()  

  5. {  

  6.     unsigned char temp;  

  7.   

  8.     iic_start();  

  9.       

  10.     iic_send_byte(0x90);  

  11.     if(0 == ack)  

  12.     {  

  13.         return ERR;  

  14.     }  

  15.       

  16.     iic_send_byte(0x40);    //设置通道和工作方式  

  17.     if(0 == ack)  

  18.     {  

  19.         return ERR;  

  20.     }  

  21.       

  22.     iic_start();  

  23.     iic_send_byte(0x90 + 1);  

  24.     if(0 == ack)  

  25.     {  

  26.         return ERR;  

  27.     }  

  28.       

  29.     temp = iic_receive_byte();  

  30.     iic_noack();  

  31.     iic_stop();  

  32.       

  33.     return temp;  

  34. }  

  35.   

  36. unsigned char DA_write(unsigned char num)  

  37. {  

  38.     iic_start();  

  39.       

  40.     iic_send_byte(0x90);  

  41.     if(0 == ack)  

  42.     {  

  43.         return ERR;  

  44.     }  

  45.       

  46.     iic_send_byte(0x40);  

  47.     if(0 == ack)  

  48.     {  

  49.         return ERR;  

  50.     }  

  51.       

  52.     iic_send_byte(num);  

  53.     if(0 == ack)  

  54.     {  

  55.         return ERR;  

  56.     }  

  57.       

  58.     iic_stop();  

  59.       

  60.     return SUCC;  

  61. }  


关键字:单片机  AD-DA转换 引用地址:单片机AD-DA转换

上一篇:51单片机lcd代码
下一篇:基于51单片机矩阵键盘程序

推荐阅读最新更新时间:2024-03-16 16:06

基于单片机及VC++的步进电机控制系统设计
  1 引言   步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下, 电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给 电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周 期性的误差而无累积误差,使得在速度、位置等控制领域,用步进电机来控制变的非常的简 单 。本文设计了一种基于AT89S52 单片机和VC++的步进电机控制系统,可以实现对步进 电机的基本控制及状态实时显示。   2 系统组成   使用、控制步进电机必须由环形脉冲源、功率放大电路等部分组成控制系统,脉冲信号 一般由单片机或CPU产生,一般脉冲信号的占空比为0.3-0.4左右
[单片机]
基于<font color='red'>单片机</font>及VC++的步进电机控制系统设计
51系列单片机常用外围器件
74系列常用器件 常用与门及与非门器件  MM54HC08/MM74HC08  MM54HC11/MM74HC11  MM54HC00/MM74HC00   常用或门及或非门器件  MM54HC32/MM74HC32  MM54HC02/MM74HC02  常用与或门及与或非门器件  MM54HC58/MM74HC58  MM54HC51/MM74HC51  常用总线驱动及收发器件  54LS244/DM74LS244  DM54LS245/DM74LS245  常用计数器  DM74LS90/DM74LS93  DM54LS193/DM74LS193  SN54HC590A/SN74HC590A  常用编码译码器件 
[单片机]
单片机成长之路(51基础篇) - 010 51单片机的中断系统
一. 有关中断的概念 1. 仔细研什么叫中断?   举例:同学正在教室写作业,忽然被人叫出去,回来后,继续写作业这就是生活中的“中断”的现象,就是正常的工作过程被外部的事件打断了。 二. 引入计算机中断的概念。   中断的作用:     处理断电保存,解决快速CPU与慢速外设之间的矛盾等。对MCS-51单片机的中断系统用一句话讲叫:“五源中断,两级管理”中断请求源(五源中断)   五个中断源: 外部中断0(/INT0)   0003H T0溢出中断   000BH 外部中断1(/INT1)   0013H T1溢出中断   001BH 串口中断 入口地址     0023H   有了中断请
[单片机]
<font color='red'>单片机</font>成长之路(51基础篇) - 010 51<font color='red'>单片机</font>的中断系统
如何用Atmega 16单片机驱动字符型液晶显示芯片
研究了一下,如何用ATmega 16单片机,来驱动字符型液晶显示芯片,现把研究心得写出来: 我手里的这个RT1601液晶显示模块,使用的是S6A0069显示芯片。 各个引脚简单说明一下: 控制和数据引脚配置如下: ------------------------------- PORTD_0 -RS PORTD_1 - R/W PORTD_2 - E PORTA - DATA BUS ------------------------------ LCD.h 1#ifndef_LCD_H_ 2#define_LCD_H_ 3/****************************
[单片机]
如何用Atmega 16<font color='red'>单片机</font>驱动字符型液晶显示芯片
两种无线数字调制解调器的设计对比
  CMX469A和MSM7512B分别为CML公司和OKI公司生产的单片调制解调器芯片,本文分别采用这两种芯片,设计实现了应用于无线安防监控等领域的数字调制解调器,并对两种方案做了对比分析。 图1 CMX469A与单片机接口连接关系 图2 MSM7512B与单片机接口连接关系 基于CMX469A的数字MODEM的设计与实现 硬件设计   CMX469A和单片机的外部接口电路比较简单,可通过单片机AT89C2051方便设置CMX469A的各功能引脚。CMX469A与单片机AT89C2051的接口关系如图1所示。 在工作过程中,首先通过单片机的P1口设置CMX469A的传输速率,引脚设置及其所对应的传输速率如表1所示。设定
[网络通信]
PIC单片机型号命名规则
PIC XX XXX XXX (X) -XX X /XX 1 2 3 4 5 6 7 8   1.前缀: PIC MICROCHIP 公司产品代号,特别地:dsPIC为集成DSP功能的新型PIC单片机   2.系列号:10、12、16、18、24、30、33、32,其中   PIC10、PIC12、PIC16、PIC18为8位单片机   PIC24、dsPIC30、dsPIC33为16位单片机   PIC32为32位单片机   3.器件型号(类型):   C CMOS 电路   CR CMOS ROM   LC 小功率CMOS 电路   LCS 小功率保护   AA 1.8V   L
[单片机]
关于MCS-51单片机实现PWM的方法
关于MCS-51单片机实现PWM的方法 PWM 是 脉冲宽度调制 的意思。 PWM 实际上是在单片机的某个引脚输出一系列的矩形波,其周期一般是固定的;而其高电平、低电平所占用的时间,是可以受控调整的。高电平、低电平所占用的时间之比,称为占空比,其值为0~1之间。PWM 的应用很广,简单的说,它可以控制灯光的亮度、可以控制直流电机的转速,甚至还可以输出语音信号。 新型的单片机,往往都含有硬件的 PWM 模块,编写程序就很简单;而老式的MCS-51系列,就不具备这个条件。 其实,在没有 PWM 硬件的单片机上实现 PWM,也并不难,只需一个定时器,令其工作在中断方式即可。下面以网上的一个题目为例,说明实现 PWM 方法。 题目链接:ht
[单片机]
飞思卡尔16位汽车微控制器年出货量突破1亿
行业领先的S12 MCU系列产品集成了可扩展的闪存、高性能协处理器和FlexRay技术 德克萨斯州奥斯汀–2007年4月10日 –作为汽车行业的领先半导体供应商,飞思卡尔半导体公司现在正以每年超过1亿件的出货量销售其流行的S12 16位汽车微控制器(MCU)。在达到这一具有里程碑意义的出货量的同时,公司还保证极低的产品缺陷率为每百万件产品中不超过一件。S12产品的生产和销售将在2007年持续快速增长。 飞思卡尔S12与S12X MCU系列产品的设计着眼于在多种汽车电子平台上实现可扩展性、硬件和软件的重复使用。这些平台包括车身、底盘与安全系统。作为目前汽车市场上使用最普遍的16位架构,S12系列可以提供广泛的性能与内存选择(芯片
[焦点新闻]
热门资源推荐
热门放大器推荐
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

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