基于8H8K64U及官方库函数进行新建工程_第二部分
接上一篇4、开始新建工程
(1)、打开Keil,点击”Project”,点击”New uVision Project”,
(2)、在弹出的窗口中,依次点击文件路径,找到Sample文件夹
(3)、打开Project文件夹,输入工程名示例“STC8”,并点击“保存”。
(4)、点击“保存”后,在弹出的对话框中选择“STM MCU Database”,可通过在“Search”中输入“STC8H8K64U”查找或选择STC下的对应MCU型号找到“STC8H8K64U”,完成后点击“OK”。
注:此处“Use Extended Linker (LX51) instead of BL51”点选“√”。
(5)、点击“OK”后弹出的对话框选择“否”即可,(有需要也可自行添加)
(6)、此时即进入到工程界面,
(7)、在工程界面中点击魔法棒,进入“Options for Targe ‘ ’”窗口,
在“Target”选项卡中,依次对“Memory Model”、“Code Rom Size”进行选择,
此处截图参照个人习惯完成,您可以根据自己的需求来进行,
在“Output”选项卡中,点击“Select Folder for Object…”;
弹出窗口“Browse for Folder”,并双击“Output”后选择“OK”。
选择“OK”后返回到“Options for Target”窗口,勾选“Creat HEX File”;
随后点击“C51”选项卡,
在“C51”选项卡中点击“Include Path”项后面的“…”
弹出新的对话框“Folder Setup”,
在“Folder Setup”中点击“New(Insert)”图标后点击“…”,
除“Out”和“Project”文件夹外,依次选择每一个文件夹,然后点击“选择文件夹”,将User、Start、System、Library、Hardware五个文件夹都进行添加。
添加完成后如下:
然后点击“OK”,回到“C51”选项卡如下:
继续点击“LX51 Misc”选项卡,在“Misc control”中输入“REMOVEUNUSED”,
随后点击“OK”
(8)、在工程界面中点击图标,进入“Manage Project Items”对话框,
双击第一列的“Target 1”,修改Project Target名称为“STC8”,
双击第二列中“Source Group 1”,修改Group名称为“User”,
随后,依次点击“New(Insert)”图标,完成Hardware、System、Start、Library的建立,
完成建立后,工程界面左侧即显示如下:
刚才进行过粘贴的文件夹依次是System、Start、Library,所以我们依次选择这三个来进行增加:
在左侧System名称点右键,弹出菜单选择“Add Existing Files to Group ‘System’…”
在弹出的窗口中选择System文件夹下的Config.h和Type_def.h,并点击Add。
添加完成后:
然后依次对Start、Library进行添加,完成后如下:
此时完成对通过复制粘贴的官方库函数进行添加。
(9)、接下来在User文件夹下添加main.c和main.h
main.c作为主函数
main.h作为主函数的头文件
在User上点右键,选择“Add New Item to Group ‘User’…”,
在弹出的窗口中完成如下操作:
A、 选择C File (.c)
B、 Name中输入main
C、 Location中选择User路径
D、 完成后点击Add
继续在User上点击右键,选择“Add New Item to Group ‘User’…”,
在弹出的窗口中完成如下操作:A、 选择Header File(.h)B、 Name中输入mainC、 Location中选择User路径D、 完成后点击Add
以上操作完成后如下:
接下来,
在打开的main.h中,输入:
#ifndef __main_H
#define __main_H
#endif
在打开的main.c中,输入:
#include "main.h"
void main(void)
{
while(1)
{
}
}
然后点击rebuild,完成编译后如下:
此时完成整个工程的建立和编译。
若以后官方库函数进行过修改,可直接对修改的部分或全部进行替换,方便使用。
你好我想用ai来写代码需要搭建库环境 按照你的教程 有部分通不过创建不了你看下我小白
Rebuild started: Project: STC8
Rebuild target 'STC8'
compiling main.c...
assembling isr.asm...
compiling STC8G_H_ADC.c...
compiling STC8G_H_ADC_Isr.c...
compiling STC8G_H_Compare.c...
compiling STC8G_H_Compare_Isr.c...
compiling STC8G_H_Delay.c...
compiling STC8G_H_EEPROM.c...
compiling STC8G_H_Exti.c...
..\Library\STC8G_H_Exti.h(29): error C231: 'INT0': redefinition
..\Library\STC8G_H_Exti.h(30): error C231: 'INT1': redefinition
compiling STC8G_H_Exti_Isr.c...
..\Library\STC8G_H_Exti.h(29): error C231: 'INT0': redefinition
..\Library\STC8G_H_Exti.h(30): error C231: 'INT1': redefinition
compiling STC8G_H_GPIO.c...
compiling STC8G_H_GPIO_Isr.c...
compiling STC8G_H_I2C.c...
compiling STC8G_H_I2C_Isr.c...
compiling STC8G_H_NVIC.c...
compiling STC8G_H_Soft_I2C.c...
compiling STC8G_H_Soft_UART.c...
compiling STC8G_H_SPI.c...
compiling STC8G_H_SPI_Isr.c...
compiling STC8G_H_Timer.c...
compiling STC8G_H_Timer_Isr.c...
compiling STC8G_H_UART.c...
compiling STC8G_H_UART_Isr.c...
compiling STC8G_H_WDT.c...
compiling STC8G_PCA.c...
compiling STC8G_PCA_Isr.c...
compiling STC8G_PWM15bit.c...
compiling STC8G_PWM15bit_Isr.c...
compiling STC8H_DMA.c...
compiling STC8H_DMA_Isr.c...
compiling STC8H_PWM.c...
compiling STC8H_PWM_Isr.c...
compiling STC8H_RTC.c...
compiling STC8H_RTC_Isr.c...
Target not created.
Build Time Elapsed:00:00:02 ..\Library\STC8G_H_Exti.h(29): error C231: 'INT0': redefinition
..\Library\STC8G_H_Exti.h(30): error C231: 'INT1': redefinition
compiling STC8G_H_Exti_Isr.c...
..\Library\STC8G_H_Exti.h(29): error C231: 'INT0': redefinition
..\Library\STC8G_H_Exti.h(30): error C231: 'INT1': redefinition
对照着找问题不就可以了嘛
页:
[1]