熱門(mén): 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2024-1-9 14:56
正文摘要:大佬們 這個(gè)問(wèn)題咋解決哦 ** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS |
沒(méi)有看到main |
2384298858 發(fā)表于 2024-1-9 15:19 在項(xiàng)目屬性中,選中創(chuàng)建HEX的選項(xiàng) |
不用看Warning,要看error, 提示你變量重復(fù)定義了,你讀讀編譯結(jié)果,不認(rèn)識(shí)的單詞百度一下 |
![]() |
2384298858 發(fā)表于 2024-1-9 16:37 所以你不要貼warning,要貼error才是問(wèn)題所在。 你在你的文件里面搜“count”就知道問(wèn)題在哪里了。 |
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: COUNT MODULE: .\Objects\main.obj (MAIN) 這一條是你重復(fù)定義 COUNT 其它的沒(méi)問(wèn)題, 因?yàn)槟銢](méi)調(diào)用,所以編譯器告訴你這些函數(shù)不會(huì)編譯 |
void Time_Init() 這個(gè)函數(shù)你寫(xiě)了完整的代碼。 然而沒(méi)有任何地方引用過(guò)這個(gè)函數(shù)。 所以編譯器不知所措,把這個(gè)函數(shù)的代碼扔掉了,順便丟給你一個(gè)警告。 |
人中狼 發(fā)表于 2024-1-9 16:09 Build target 'Target 1' linking... *** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: COUNT MODULE: .\Objects\main.obj (MAIN) *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?TIMERINIT?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?TIME_INIT?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?C_INITSEG Program Size: data=8.2 xdata=15 code=631 Target not created. Build Time Elapsed: 00:00:00 |
把編譯結(jié)果信息都貼出來(lái)吧 |
程序從哪個(gè)函數(shù)執(zhí)行?? |
void main ()?????? |
人中狼 發(fā)表于 2024-1-9 15:14 您好 Target not created. 是這個(gè)問(wèn)題 就是我要構(gòu)建Hex格式的文件構(gòu)建不了 可以幫忙看一下嗎 |
只是一個(gè)函數(shù)未調(diào)用的警告而已,不影響的 |
完整代碼如下 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit Key1=P2^0; sbit Key2=P2^1; sbit Key3=P2^2; sbit Key4=P2^3; sbit LED=P2^6; sbit SPK=P2^7; void delay(uint ms); uchar count,shi,ge,countdown,state; uchar Buf[2]={0}; uchar code DispBitCode[] = {0xfe,0xfd}; uchar code DispCode[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF,0xBF} ; uchar Count=0; uint time=0; uint show_time=0; bit start = 0; bit alarm = 0; void Delay(uint x) { while(--x); } void DisPlay (uchar *DispBuf) { uchar k; for(k=0; k<2; k++) { P1=DispBitCode[k]; P0=DispCode[DispBuf[k]]; Delay (500); } } void KeyScan (void) { { if(Key1==0) { delay(15); TR0=0; state=1; } if(state==1) { delay(15); } } if(Key2==0) { delay(15); if(Key2==0) { if(start==0) { if(time<59) time++; else time=0; show_time=time; } while(!Key2); } } if(Key3==0) { delay(15); if(Key3==0) { if(start==0) { if(time>0) time--; else time=59; show_time=time; } while(!Key3); } } if(Key4==0) { delay(15); TR0=1; state=0; } } void TimerInit (void) { TMOD=0x11; TH0=(65535-50000)/256; TL0=(65535-50000)%256; TH1=0xfe; TL1=0x00; TR1=0; ET1=1; TR0=0; ET0=1; EA=1; } void openAlarm (void) { TR1=1; LED=0; } void closeAlarm(void) { TR1 = 0; LED=1; } void Time_Init() { LED=1; time=10; show_time =time; while(1) { Buf[0]= show_time%10; Buf[1]= show_time/10; DisPlay(Buf); KeyScan(); if(1 == alarm) { TR0 = 0; openAlarm(); } else closeAlarm(); } return; } void Timer0(void) interrupt 1 { TH0=(5535 - 50000)/256; TL0=(65535 - 50000)%256; count++; if(20==Count) { Count = 0; show_time--; if(0==show_time) { alarm=1; } } } void Timerl(void) interrupt 3 { TH1=0xfd; TL1=0x00; SPK=~SPK; } |
Powered by 單片機(jī)教程網(wǎng)