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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

關于單片機實驗仿真的問題

[復制鏈接]
跳轉到指定樓層
樓主

這個仿真實驗代碼調試了很久也沒有做出來,大佬能否提供一些具體思路

626573587c0cca2bc26a55a94a90d808.png (225.79 KB, 下載次數: 0)

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

使用道具 舉報

沙發
ID:161164 發表于 2024-11-24 09:14 | 只看該作者
有問題請描述問題,預計表現,實際表現,提供代碼,報錯信息
回復

使用道具 舉報

板凳
ID:420836 發表于 2024-11-24 09:28 | 只看該作者
您有可供驗證的測試代碼嗎?
回復

使用道具 舉報

地板
ID:1137320 發表于 2024-11-24 10:57 | 只看該作者
#include <reg51.h>

sbit CLK= P3^1;
sbit EOC = P3^0;
sbit CS = P2^7;
sbit WRR = P3^6;
sbit RDD = P3^7;

unsigned char code SegmentTable[] =
{
    0xC0, // 0
    0xf9, // 1
    0xa4, // 2
    0xb0, // 3
    0x99, // 4
    0x92, // 5
    0x82, // 6
    0xf8, // 7
    0x80, // 8
    0x90  // 9
};
void delay(unsigned int ms)
{
    unsigned int i, j;
    for (i = 0; i < ms; i++) {
        for (j = 0; j < 120; j++);  // 調整 120 的值以改變延時長度
    }
}

void Timer0_Init() {
    TMOD = 0x01;     // 定時器0,模式1(16位定時模式)
    TH0 = 0xFC;      // 設置初值高位
    TL0 = 0x18;      // 設置初值低位
    ET0 = 1;         // 允許定時器0中斷
    EA = 1;          // 開啟總中斷
    TR0 = 1;         // 啟動定時器0
}

void Timer0_ISR() interrupt 1 {
    TH0 = 0xFC;      // 重置初值高位
    TL0 = 0x18;      // 重置初值低位
    P3 ^= 0x02;   // 翻轉P3.1電平(高->低或低->高)
}

void ADC_START()
{   
         CS = 0;
         WRR = 0;
         delay(1);    // 穩定信號
         CS = 0;   
     WRR = 1;    //與非讓START為低電平,不觸發
         delay(1);  
}

unsigned char ADC_GET()
{
        while (EOC == 0); // 等待 EOC = 1,表示轉換完成
        delay(5);
        RDD = 0;
        CS = 0;
        delay(5);
        return P0;       // 返回采樣結果
}

void main()
{
        unsigned int Result;
        unsigned char digits[3];
        unsigned char i;
        unsigned char position[]={0x02,0x04,0x08};

    Timer0_Init();   // 初始化定時器
    CS = 1;   
    WRR = 1;
        while (1)
        {
                 ADC_START();
                 Result = ADC_GET();
                 RDD = 1;
                 CS = 0;
                 Result = Result*100/51;       
                 digits[0] = Result/100;                           //最高位
             digits[1] = Result%100/10;
              digits[2] = Result%100%10;    // 小數部分
                 for(i = 0;i<3;i++)
                 {
                        P2 = position[i];
                        P1 = SegmentTable[digits[i]];       
                        if(i == 0)
                        {
                                P1 = P1 -0x80;       
                        }       
                        delay(1);
                        P2 = 0x00;

                 }                                                  
    }
}


現在已經實現功能了,但是數碼管會閃爍
而且delay函數沒法往下調了,j到119甚至就顯示不出來了
回復

使用道具 舉報

5#
ID:92781 發表于 2024-11-24 11:29 | 只看該作者
共陽數碼管的四個公共端,供電不足,AT89C52的拉電流有400微安,又加了限流電阻,根本驅動不了數碼管,com1-com4用三極管驅動試試吧
回復

使用道具 舉報

6#
ID:92781 發表于 2024-11-24 11:32 | 只看該作者
不想用三極管,也可以吧r12-r15四個限流電阻改為上拉電阻
回復

使用道具 舉報

7#
ID:92781 發表于 2024-11-24 11:42 | 只看該作者
本帖最后由 jjy1039 于 2024-11-25 08:53 編輯

你那種是限流,改用上拉提高驅動能力就行了

上拉.jpg (4.3 KB, 下載次數: 0)

上拉.jpg
回復

使用道具 舉報

8#
ID:961114 發表于 2024-11-25 09:21 | 只看該作者
你用AI8051U  兼容的  直接USB仿真,排產故障更簡單
回復

使用道具 舉報

9#
ID:619259 發表于 2024-11-25 09:45 | 只看該作者
數碼管動態顯示會受A/D芯片轉換時間的影響,出現閃爍,建議數碼管用定時器掃描方式。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲伊人精品酒店 | 青春草在线 | 91国内精品久久 | 亚洲一区二区三区乱码aⅴ 四虎在线视频 | 久久久久国产一区二区 | 久久99精品国产麻豆婷婷 | 成人精品一区二区三区中文字幕 | 亚洲午夜精品 | 青青草在线播放 | 日本精品久久久久久久 | 日韩视频免费看 | 夜夜撸av| 欧美99久久精品乱码影视 | 日韩一级在线 | 视频在线h| 欧美aaaaa | 一级全黄少妇性色生活免费看 | 国产一区二区在线免费播放 | 日韩午夜影院 | 亚洲 欧美 日韩在线 | 99精品热视频 | 一区二区精品 | 久久久久国产 | 午夜欧美| 在线观看中文字幕 | 欧美性生活一区二区三区 | 欧美韩一区二区三区 | 国产99精品 | 一区二区三区四区在线免费观看 | 中文字字幕在线中文乱码范文 | 亚洲性人人天天夜夜摸 | 欧洲免费毛片 | 中文字幕日韩欧美一区二区三区 | 国产精品久久久久影院色老大 | 国产精品视频一区二区三区不卡 | 夜夜精品视频 | 成人在线免费视频观看 | 视频一区二区三区在线观看 | 久久这里有精品 | 欧美一区二区综合 | 综合二区|