找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2889|回復: 7
收起左側

RTX51系統(tǒng)無法包含頭文件問題

[復制鏈接]
ID:57757 發(fā)表于 2016-8-18 15:25 | 顯示全部樓層 |閱讀模式
在建立RTX51系統(tǒng)時,文件中無法包含其他的頭文件進去,路徑設置沒有問題,如下圖:


file.jpg

RTX51.rar

125.89 KB, 下載次數(shù): 16

回復

使用道具 舉報

ID:57757 發(fā)表于 2016-8-18 15:29 | 顯示全部樓層
如果提示找不到STC89C5xRC.H頭文件,請把config.h文件中的<STC89C5xRC.H>,改為"STC89C5xRC.H"
回復

使用道具 舉報

ID:97438 發(fā)表于 2016-8-18 15:47 | 顯示全部樓層
Config.h應該改為這個如下
#ifndef __CONFIG_H
#define __CONFIG_H

#include <STC89C5xRC.H>
#include <RTX51TNY.H>
#include <intrins.h>

#define uint  unsigned int
#define uchar unsigned char

#include "Delay.h"
#include "UART.h"



sbit Relay = P3^6;  //繼電器


#endif
然后你沒有定義Uart_SendString這個函數(shù)
回復

使用道具 舉報

ID:97438 發(fā)表于 2016-8-18 15:48 | 顯示全部樓層
首先你#define 怎么使用不理解,正確的使用方式是像我上面的那樣的~#define 是第一個單詞代表后面的東西、你原來的寫法是錯的
回復

使用道具 舉報

ID:97438 發(fā)表于 2016-8-18 15:51 | 顯示全部樓層
然后,你對系統(tǒng)編譯的時候是怎么工作的不熟悉,假設你原來的#define是正確的,然后就變成這樣
#include "Delay.h"
#include "UART.h"

#define uint  unsigned int
#define uchar unsigned char
那么,編譯的時候,在delay.h和uart.h是找不到 uint和uchar 這兩個東西的
回復

使用道具 舉報

ID:57757 發(fā)表于 2016-8-18 15:53 | 顯示全部樓層
luoluoluo136 發(fā)表于 2016-8-18 15:47
Config.h應該改為這個如下
#ifndef __CONFIG_H
#define __CONFIG_H

嗯,解決了謝謝,腦子糊涂了,這都能定義錯,無法加載頭文件還沒來得及加Uart_SendString函數(shù),謝謝啦
回復

使用道具 舉報

ID:97438 發(fā)表于 2016-8-18 15:53 | 顯示全部樓層
所以,并不是rtx51系統(tǒng)的問題,也不是keil的問題,是你自己寫程序的時候沒有注意~
建議1:頭文件要分級,不要出現(xiàn)你包含我,我包含你這樣的情況
建議2:遇到問題先從自己入手,看編譯器的輸出提示,檢查自己的程序
建議3:C語言基礎要學好
回復

使用道具 舉報

ID:57757 發(fā)表于 2016-8-18 15:55 | 顯示全部樓層
luoluoluo136 發(fā)表于 2016-8-18 15:53
所以,并不是rtx51系統(tǒng)的問題,也不是keil的問題,是你自己寫程序的時候沒有注意~
建議1:頭文件要分級, ...

嗯嗯,謝謝,我會努力的,
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表