找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3400|回复: 6
收起左侧

单片机数字电压表程序求解

[复制链接]
ID:100141 发表于 2015-12-23 15:30 | 显示全部楼层 |阅读模式
求单片机数字电压表程序

IMG_20151223_121730.jpg
回复

使用道具 举报

ID:99624 发表于 2015-12-23 15:36 | 显示全部楼层
给你个程序参考一下:http://www.51hei.com/bbs/dpj-33255-1.html
回复

使用道具 举报

ID:57037 发表于 2015-12-24 14:22 | 显示全部楼层
把1602调好了、再采集到ADC的值/最大采样值*5
回复

使用道具 举报

ID:79544 发表于 2015-12-24 22:06 | 显示全部楼层
论坛里这样的程序很多,多找找,遇到不明白在请教多好,还能学到东西。
回复

使用道具 举报

ID:127555 发表于 2016-6-22 17:15 | 显示全部楼层
连线就是那个黑线什么意思?
回复

使用道具 举报

ID:165510 发表于 2017-2-20 15:50 | 显示全部楼层
第一个图片是哪本书?
回复

使用道具 举报

ID:155507 发表于 2017-2-21 15:01 | 显示全部楼层
  1. #include<reg52.h>
  2. #include"intrins.h"
  3. #define uchar unsigned char
  4. #define uint unsigned int

  5. sbit OE =P2^7;
  6. sbit EOC=P2^6;
  7. sbit START=P2^5;
  8. sbit CLK=P2^4;
  9. sbit CS0=P2^0;
  10. sbit CS1=P2^1;
  11. sbit CS2=P2^2;
  12. sbit CS3=P2^3;
  13. uint adval,volt;
  14. uchar tab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};

  15. void delayms(uint ms)
  16. {
  17.   uchar j;
  18.   while(ms--)
  19.   {
  20.     for(j=0;j<120;j++);
  21.   }
  22. }
  23. void ADC_read()
  24. {       
  25.   START=0;
  26.   START=1;
  27.   START=0;
  28.   while(EOC==0);
  29.   OE=1;
  30.   adval=P1;
  31.   OE=0;
  32. }
  33. void volt_result()
  34. {
  35.   volt=adval*1.96;

  36. }
  37. void disp_volt(uint date)
  38. {
  39.   CS0=1;CS1=0;CS2=0;CS3=0;
  40.   P0=~((~tab[date/100])|0x80);
  41.   delayms(1);
  42.   P0=0xFF;
  43.   CS0=0;CS1=1;CS2=0;CS3=0;
  44.   P0=tab[date%100/10];
  45.   delayms(1);
  46.   P0=0xFF;
  47.   CS0=0;CS1=0;CS2=1;CS3=0;
  48.   P0=tab[date%10];
  49.   delayms(1);
  50.   P0=0xFF;
  51.   CS0=0;CS1=0;CS2=0;CS3=1;
  52.   P0=tab[date%100];
  53.   delayms(1);
  54.   P0=0xFF;
  55. }
  56. void t0()interrupt 1
  57. {
  58.   CLK=~CLK;
  59. }
  60. void t0_init()
  61. {
  62.   TMOD=0x02;
  63.   TH0=0x14;
  64.   TL0=0x00;
  65.   TR0=1;
  66.   ET0=1;
  67.   EA=1;
  68. }
  69. void main(void)
  70. {
  71.   t0_init();
  72.   while(1)
  73.   {
  74.     ADC_read();
  75.     volt_result();
  76.     disp_volt(volt);

  77.   }
  78. }


复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表