搜索
bottom↓
回复: 55

Protues 8.10 SP0 New Crack

  [复制链接]

出0入0汤圆

发表于 2020-9-7 10:43:21 | 显示全部楼层
谢谢楼主  谢谢提供软件,学习一下

出0入0汤圆

发表于 2021-1-22 08:41:21 | 显示全部楼层
谢谢分享   Proteus更新真快  最新Proteus Professional 8.11 SP1

出0入0汤圆

发表于 2021-1-23 16:19:05 | 显示全部楼层
不知道楼上 的是什么情况
  彭伟  编著 《单片机C语言程序设计实训100例 >> ---基于8051+Proteus仿真(第2版)》
         28 ADC0809模数转换与显示
   


  1. //-----------------------------------------------------------------
  2. //        名称: ADC0809模数转换与显示
  3. //-----------------------------------------------------------------
  4. //        说明: ADC0809采样通道3输入的模拟量,转换后的结果显示在数码管上.
  5. //                               
  6. //-----------------------------------------------------------------
  7. #include <reg51.h>
  8. #define INT8U unsigned char
  9. #define INT16U        unsigned int
  10. //共阳数码管段码定义
  11. INT8U code SEG_CODE[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90 };
  12. //ADC0809引脚定义
  13. sbit OE        = P1^0;                        //输出使能
  14. sbit EOC = P1^1;                //转换结束
  15. sbit ST        = P1^2;                        //启动转换
  16. sbit CLK = P1^3;                //采样时钟
  17. //-----------------------------------------------------------------
  18. // 延时子程序
  19. //-----------------------------------------------------------------
  20. void delay_ms(INT16U x)
  21. {
  22.         INT8U t; while(x--) for(t = 0; t < 120; t++);
  23. }

  24. //-----------------------------------------------------------------
  25. // 显示转换结果
  26. //-----------------------------------------------------------------
  27. void Display_Result(INT8U AD)
  28. {       
  29.    int v;
  30.          //根据四舍五入法计算电压值(放大100倍以使分解)
  31.    v = AD * 500.0 * 2 / 511.0;
  32.    //或根据舍尾取整法计算电压值(放大100倍以使分解)
  33.    //v = AD * 500.0 / 256.0;
  34.    P2 = 1 << 2;  P0 = SEG_CODE[v % 10];         delay_ms(5);
  35.          P2 = 1 << 1;  P0 = SEG_CODE[v % 100 / 10];   delay_ms(5);
  36.          P2 = 1 << 0;  P0 = SEG_CODE[v / 100] & 0x7F; delay_ms(5);
  37. }

  38. //-----------------------------------------------------------------
  39. // 主程序
  40. //-----------------------------------------------------------------
  41. void main()
  42. {
  43.    TMOD = 0x02;             // TIMER0工作于模式2(8位自动重装模式)
  44.    TL0 = -250;              //定时初值(工作寄存器)
  45.    TH0 = -250;              //在TL0溢出时,TH0的值自动重新装入TL0
  46.    IE = 0x82;               //允许TIMER0溢出中断
  47.    TR0 = 1;                 //启动定时器
  48.    P1 = 0x3F;               //选择ADC0809的通道3(0011)
  49.                       //高四位设通道地址为0011(3),低4位为CLK,ST,EOC,OE/CE
  50.    while(1)
  51.          {
  52.        ST = 0;  ST = 1;  ST = 0;       //启动转换
  53.        while(EOC == 0);                //等待转换结束
  54.        OE = 1;                         //允许输出
  55.        Display_Result(P3);             //显示A/D转换结果
  56.        OE = 0;                         //关闭输出
  57.          }
  58. }

  59. //-----------------------------------------------------------------
  60. // T0定时器中断给ADC0809提供时钟信号
  61. //-----------------------------------------------------------------
  62. void Timer0_INT() interrupt 1
  63. {
  64.    CLK = !CLK;               //ADC0809采样时钟信号
  65. }
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 15:34

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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