找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2198|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)數(shù)字電壓表程序問(wèn)題求分析

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
想請(qǐng)教下這個(gè)到底是哪里的問(wèn)題,我用51單片機(jī)頭文件試過(guò)不對(duì),用define uchar unsigned char

T7@TUMZY8%E)F@$GV(FRH[5.png (105.27 KB, 下載次數(shù): 97)

T7@TUMZY8%E)F@$GV(FRH[5.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:34643 發(fā)表于 2019-5-17 07:14 | 只看該作者
把第一行的“*”號(hào)去掉。
回復(fù)

使用道具 舉報(bào)

板凳
ID:176854 發(fā)表于 2019-5-17 09:22 | 只看該作者
typedef 是給數(shù)據(jù)類(lèi)型定義一個(gè)別名。
如果你只是定義一個(gè)指針uchar *uc_Clock = 0;即可
回復(fù)

使用道具 舉報(bào)

地板
ID:511890 發(fā)表于 2019-5-17 12:39 | 只看該作者
星號(hào)后面加個(gè)空格,再不行,就分開(kāi)寫(xiě),先定義別名:typedef uchar* uc_Clock;然后在使用之前賦值。如在main最前面賦值:un_Clock=0;
回復(fù)

使用道具 舉報(bào)

5#
ID:500743 發(fā)表于 2019-5-17 13:53
51mcu 發(fā)表于 2019-5-17 07:14
把第一行的“*”號(hào)去掉。

file:///C:/Users/Administrator/Desktop/1.jpg   不行嗯

6#
ID:500743 發(fā)表于 2019-5-17 13:58 | 只看該作者
改完報(bào)錯(cuò)還是出現(xiàn)missing“”;“before“*”如果是uc_Clock在后面就是beforen uc_Clock,要不然就是跳出一大堆錯(cuò)誤
回復(fù)

使用道具 舉報(bào)

7#
ID:500743 發(fā)表于 2019-5-17 13:59 | 只看該作者
#include"intrins.h"
#define TIME0H 0x3C
#define TIME0L 0xB0
uchar uc_Clock;
//定時(shí)器0中斷計(jì)數(shù)
bit b_DATransform=0;
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<把電壓顯示在LCD上>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
void vShowVoltage(uchar uiNumber)
{
        uchar ucaNumber[3],ucCount;
        if(uiNumber>999)                                       
                uiNumber=999;
        ucaNumber[0]=uiNumber/100;                                                                //把計(jì)算數(shù)字的每個(gè)位存入數(shù)組。
        ucaNumber[1]=(uiNumber-100*(int)ucaNumber[0])/10;                                                       
        ucaNumber[2]=uiNumber-100*(int)ucaNumber[0]-10*ucaNumber[1];
        for(ucCount=0;ucCount<3;ucCount++)
        {
                vShowOneChar(ucaNumber[ucCount]+48);                                //從首位到末位逐一輸出。
                if(ucCount==0)
                        vShowOneChar('.');
        }
}
//*************************************************************************************************
//*                                                                                                                                                                                                  *
//*                          ********************************主函數(shù)******************************                                  *
//*                                                                                                                                                                                                  *
//*************************************************************************************************


void main()
{
        TMOD=0x01;                        //定時(shí)器0,模式1。
        TH0=TIME0H;
        TL0=TIME0L;
        TR0=1;                                //啟動(dòng)定時(shí)器。
        ET0=1;                                //開(kāi)定時(shí)器中斷。
        EA=1;                                //開(kāi)總中斷
        vdInitialize();
        vWriteCMD(0x84);           //寫(xiě)入顯示起始地址(第一行第4個(gè)位置)
        vShowChar("voltage");
        vWriteCMD(0xC9);     
        vShowChar("(V)");
        while(1)
        {
                if(b_DATransform==1)
                {
                        b_DATransform=0;
                        vWriteCMD(0xC4);
                        vShowVoltage(uiADTransform());
                }
        }
}
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<定時(shí)器0中斷函數(shù)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
void t0() interrupt 1
{
        if(uc_Clock==0)
        {
                uc_Clock=5;
                b_DATransform=1;
        }
        else
                uc_Clock--;
        TH0=TIME0H;                   //恢復(fù)定時(shí)器0。
        TL0=TIME0L;
}這是程序
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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