找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 512|回復(fù): 4
收起左側(cè)

問一下大佬此處為何編譯器報錯,第一次還能運行

[復(fù)制鏈接]
ID:1144166 發(fā)表于 2025-2-21 17:19 | 顯示全部樓層 |閱讀模式
#include <REGX52.h>
#include <INTRINS.H>

typedef unsigned char u8;
typedef unsigned char u16;
typedef unsigned long u32;

// 數(shù)字0-9的編碼
static u8 codes[10] = {
    0x3f,
  0x06, // 1
    0x5B, // 2
    0x4F, // 3
    0x66, // 4
    0x6D, // 5
    0x7D, // 6
    0x07, // 7
    0x7F, // 8
    0x6F  // 9
}
u8 buffer[8];//這里哪錯了?編譯器一直提示

void Delay1ms(u16 count) //@11.0592MHz
{
    u8 i, j;

    while (count > 0) {
        count--;
        _nop_();
        i = 2;
        j = 199;
        do {
            while (--j);
        } while (--i);
    }
}

/**
* @brief 內(nèi)部方法,讓數(shù)碼管某一位顯示特定數(shù)字
*
* @param position 片選, 從左到右[0-7]
* @param num_code 顯示想要的數(shù)字編碼
*/
void DigitalTube_DisplaySingle(u8 position, u8 num_code)
{
    P0 = 0x00;
    // 位選:P15 P14 P13
    position <<= 2;
    P2 &= 0xE3;
    P2 |= position;

    // 段選:P0
    P0 = num_code;
}

/**
* @brief 設(shè)置顯存數(shù)組
*
* @param num 待展示數(shù)字
*/
void DigitalTube_DisplayNum(u32 num)
{
    u8 i;
    for (i = 0; i < 8; i++) {
        buffer[i] = 0x00;
    }

    if (num == 0) {
        buffer[7] = codes[0];
        return;
    }

    i = 7;
    while (num > 0) {
        buffer[i] = codes[num % 10];
        num /= 10;
        i--;
    }
}

/**
* @brief 動態(tài)掃描
*
*/
void DigitalTube_Refresh()
{
    u8 i;
    for (i = 0; i < 8; i++) {
        DigitalTube_DisplaySingle(i, buffer[i]);
        Delay1ms(1);
    }
}

void main()
{

    DigitalTube_DisplayNum(1234567);
    while (1) {
        DigitalTube_Refresh();
    }
}

回復(fù)

使用道具 舉報

ID:1144166 發(fā)表于 2025-2-21 17:25 | 顯示全部樓層
沒事了,小錯誤
回復(fù)

使用道具 舉報

ID:592807 發(fā)表于 2025-2-21 20:38 | 顯示全部樓層
    buffer[i] = 0x00;誰給你定義的數(shù)組buffer
回復(fù)

使用道具 舉報

ID:744809 發(fā)表于 2025-2-22 12:21 | 顯示全部樓層

typedef unsigned char u16;
這行應(yīng)該改成:
typedef unsigned int u16;
回復(fù)

使用道具 舉報

ID:68189 發(fā)表于 2025-2-22 12:35 | 顯示全部樓層
標(biāo)點符號引起的小問題
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表