登录|立即注册|使用QQ帐号登录
论坛 > 51单片机
发帖|
看7505|回4|收藏
楼主 ID:135253 只看他
2017-6-24 21:06
主要过程:
     1 P0口输出数字信号,由logicstate模拟实时输出;
     2 DAC0832接收P0的数字信号,将其转化为模拟信号输出,由741转化为电压;
    3   ADC0832接收模拟信号,再将其转化为数字信号,由此信号驱动LCD1602;
    4  LCD1602一方面显示输入的数字信号,另一方面显示DAC0832转化的模拟电压大小!
运行图
0.png

单片机源程序如下:

代码:


  1. #include<reg51.h>       //包含单片机寄存器的头文件
  2. #include<absacc.h>     //包含对片外存储器地址进行操作的头文件
  3. #include<intrins.h>
  4. #include "1602.C"
  5. #include "1602_Display.C"
  6. #include "ADC0832.C"



  7. sbit CS1=P2^7;          //将CS位定义为P2.7引脚
  8. sbit WR12=P3^6;        //将WR12位定义为P3.6引脚


  9. void main(void)
  10. {
  11.         unsigned int Output;    //储存A/D转换后的值
  12.        
  13.         Lcd_Initiate();         //将液晶初始化
  14.         delaynms(5);           //延时5ms给硬件一点反应时间
  15.         display_explain();       
  16.         display_symbol();
  17.        
  18.         CS1=0;    //输出低电平以选中DAC0832
  19.         WR12=0;  //输出低电平以选中DAC0832
  20.         while(1)
  21.         {       
  22.                 XBYTE[0x7fff]=P0;          //将数据i送入片外地址07FFFH ,实际上就是通过P0口将数据送入DAC0832
  23.                 delaynms(5);
  24.                 display_input(P0);         //显示输入数据
  25.                 delaynms(5);
  26.                
  27. ……………………

  28. …………限于本文篇幅 余下代码请从51黑下载附件…………

所有资料51hei提供下载:
1 P0输入数字信号 DAC0832 ADC0832 LCD1602.zip (30.3 KB)
(下载次数: 239, 2017-6-24 20:59 上传)

下载积分: 黑币 -5







沙发 ID:209954 只看他
2017-6-25 17:39
感谢楼主分享。。
板凳 ID:440818 只看他
2018-12-29 21:07
楼主,我想问一下这个文件包里面1602_Display.C文件的函数原型怎么写
地板 ID:561156 只看他
2019-6-13 22:40
感谢楼主,我想问下楼主,这里面的代码是不是缺了点东西啊,我用keil跑的时候有很多语法错误,
5# ID:615919 只看他
2019-9-24 21:58
楼主牛逼

51黑电子论坛

Powered by Discuz! X3.1

首页|标准版|触屏版|电脑版