久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1968|回復: 1
打印 上一主題 下一主題
收起左側

51單片機小白改進下郭天祥老師的adc0804轉換例子

[復制鏈接]
跳轉到指定樓層
樓主
ID:890771 發表于 2021-3-18 11:40 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
學的這個專業,但是沒怎么好好學,現在工作了才又撿起來,真是挺慚愧的,浪費自己的時間。最近在學習郭天祥老師的51單片機過程中,發現了郭老師寫的有些AD轉換例子還有改進的空間,論壇內也沒有相關帖子,就打算上傳下讓后來學習的人參考。

這個例子很簡單,項目是:利用adc0804進行模數轉換,當擰動實驗板上的ad旁邊的電位器re2時,在數碼管的前三位以十進制的方式動態顯示出ad轉換后的數字量,數值在0-255變化; 如果用郭老師的程序寫出來,會發現在學習板上只能顯示上電的初始值,或者顯示128,需要改進a的值,我試了下,必須改到大概8000往上才能實時刷新顯示,而且動態顯示的數碼管肉眼可見的刷新率低,具體原因是因為轉換時間不夠,這個轉換時間大概有80ms左右?我不知道為什么會這么高,但是程序上運行來看,確實,如有錯誤,希望大佬指正,下面是我改進后的程序,能夠實時顯示,而且清晰,如果輸出會有一兩個個數的抖動,那是因為它的原理決定。

單片機源程序如下:
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
sbit duan=P2^6;
sbit wei=P2^7;
sbit wr=P3^6;
sbit rd=P3^7;
uchar bai,shi,ge,num;
uint a,a1,a2,a3;
void set();
void dsplay(uchar,uchar,uchar);
void delayms(uint x)
{
        uint i,j;
        for(i=x;i>0;i--)
                for(j=110;j>0;j--);
}
void main()
{
        set();
        while(1)
        {
                wr=1;
                _nop_();
                wr=0;
                _nop_();
                wr=1;
                for(a=30;a>0;a--)
                {
                        dsplay(a1,a2,a3);
                }
                P1=0xff;
                rd=1;
                _nop_();
                rd=0;
                _nop_();
                num=P1;
                rd=1;
                a1=num/100;
                a2=num%100/10;
                a3=num%10;

        }
}
void set()
{
        wei=1;
        P0=0x7f;
        wei=0;
        a1=a2=a3=0;
}
void dsplay(uchar a1,uchar a2,uchar a3)
{
        wei=1;
        P0=0x7e;
        wei=0;
        P0=0x00;
        duan=1;
        P0=table[a1];
        duan=0;
        P0=0xff;
        delayms(1);

        wei=1;
        P0=0x7d;
        wei=0;
        P0=0x00;
        duan=1;
        P0=table[a2];
        duan=0;
        P0=0xff;
        delayms(1);        

        wei=1;
        P0=0x7b;
        wei=0;
        P0=0x00;
        duan=1;
        P0=table[a3];
        duan=0;
        P0=0xff;
        delayms(1);
}

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:299519 發表于 2021-3-24 16:17 | 只看該作者
市場上很多51板,都比他家的好。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美阿v| 久久综合久久综合久久综合 | 国产成人精品福利 | 成人高清在线 | 成人av播放 | 国产精品久久a | 精品欧美一区二区三区免费观看 | 成人精品一区 | 一级黄色片网址 | 久久国产精品免费一区二区三区 | 偷拍亚洲色图 | 欧美乱操 | 婷婷色婷婷 | 视频二区 | 一级毛片高清 | 精品亚洲永久免费精品 | 男人天堂色 | 欧美日韩精品免费 | 欧洲尺码日本国产精品 | 97色综合 | 久久午夜视频 | 国产精品久久 | 欧美一级片中文字幕 | 日韩欧美久久精品 | 欧美一区二区三 | 欧美黄 片免费观看 | 欧美视频第三页 | 午夜精品一区二区三区在线视频 | 2018天天干天天操 | 亚洲高清中文字幕 | 91av导航| 黄色三级免费网站 | 欧美日本一区 | 在线视频91 | 国产欧美日韩一区 | 欧产日产国产精品99 | 欧美aⅴ片 | 成人水多啪啪片 | 精品在线播放 | 香蕉一区二区 | 日韩三级在线 |