#申请原创# 【活动】新用户注册送开发板! - - 21ic电子技术开**坛
在这活动中申请了一块开发板,这几天摸索了一下,成功的从零新建了helloworld的工程,在这里记录以一下,希望对大家有帮助。
1、新建一个工程的空白文件夹:
2、把官方的DEMO下的驱动文件夹FWLib到新建的目录下:
4、安装新定义的Keil C 插件:
4.1双击 RD_KEIL_Setup Vx.xxx.exe,查看许可说明,选择“我同意此协议”,然后“下一步”
4.2 查看信息,然后点击“下一步”按钮
4.3 默认安装路径为安装 Keil 时的所在目录,用户可修改安装路径,点击“下一步”按钮
4.4 设置开始菜单该文件夹的名称,默认为“RD_KEIL_Setup”,您可根据需要进行修改,设置后点击“下一
步”按钮
4.5 确认安装路径,点击“安装”按钮
4.6 安装完成,阅读相关帮助信息
5 新建工程
5.1打开keil后点新建工程
5.2、选择工程存放的目录与工程名称后,保存:
5.3 在弹出的页面按下图选好芯片:
5.4,按下图我们照下面修改与添加分组如下:
在Lib分组下,添加RD8_Lib\src目录下的rd8_gipo.c、rd8_option.c、rd8_usci1.c。
5.5 添加文件件路径:
6、配置Keil 界面
6.1打开 Keil 工程文件,点击快捷图标“Target Option”,在“Target Option”界面中选择“Debug”,点选 “Use”,
并从下列中选取“RD 8051 Driver”,同时,勾选“Run to main()”,如下图:
6.2 点击“Utilities”,在“Use Target Driver for Flash Programming”中选择“RD 8051 Driver ”,如下图:
6.3 再点击“Settings”,进入“烧录 Option 信息界面”,如下图:
6.4 烧录 Option 信息配置。
6.4.1. 芯片选择:选择预烧录或仿真的 IC 名称。
6.4.1.2. 烧录设置:可选择进行的自动烧录,包括擦除,编程,校验等。
6.4.1.3. 烧录选项:根据需要设置的 Code Option 选项。
6.4.1.4. 烧录区域:可选择 APROM 或者 EEPROM 区域进行操作。
6.4.1.5. 升级:用于库文件的升级。
6.4.1.6. 帮助:版本的相关信息。
注意:如果芯片选择中未查找到需要的 IC 型号,或已找到对应型号但无法仿真,需要点击升级,进入升
级界面。
升级 MCU 库:升级 RD 提供的“.rdmcu”库文件。选择“升级 MCU 库”,选择需要升级的库文件,选中库文
件,点击“打开”,完成升级。
升级固件:升级 RD 提供的烧录工具固件。
7 添加main.c主函数:
7.1 文件内容如下,并把main.c添加进app分组里面。
#include<rd8_conf.h>
#include<stdio.h>
#define LED_PORT GPIO4
#define LED1_PIN GPIO_PIN_0
void SC_Init(void)
{
GPIO_Init(GPIO0, GPIO_PIN_1, GPIO_MODE_OUT_PP); //设置P01为强推挽模式
GPIO_Init(GPIO1, GPIO_PIN_ALL, GPIO_MODE_IN_PU); //设置P1为高阻输入模式
GPIO_Init(GPIO1, GPIO_PIN_1,GPIO_MODE_IN_PU);
GPIO_Init(GPIO1, GPIO_PIN_3,GPIO_MODE_IN_PU);
USCI1_ITConfig(DISABLE,LOW);
USCI1_UART_Init(32000000,115200,USCI1_UART_Mode_10B,USCI1_UART_RX_ENABLE);
}
//重写Printf发送函数
char putchar (char c)
{
USCI1_UART_SendData8(c);
while(!USCI1_GetFlagStatus(USCI1_UART_FLAG_TI));
USCI1_ClearFlag(USCI1_UART_FLAG_TI);
return c;
}
void LED_Init(void)
{
GPIO_Init(LED_PORT, LED1_PIN, GPIO_MODE_OUT_PP); //设置P01为强推挽模式
}
void Delay(unsigned int time)
{
unsigned int Single_Time;
while(time--)
{
Single_Time = 4095;
while(Single_Time --);
}
}
void main(void)
{
SC_Init();
LED_Init();
while(1)
{
printf("-----------HELLO WORLD-----------\n");
GPIO_TogglePin(LED_PORT,LED1_PIN);
Delay(1000);
}
}
8.编译:
9、下载
9.1打开下载工具:
9.2 用type-c连接好开发板,按下图下载固件到开发板:
9.3 下载后的状态信息,以及实现效果如下:
【总结】
这款开发板的入门,跟C51有99%的相似,很多年没有接触C51了,在新定义的指导下,很快的就从零开始入门了第一个hello world程序。
【致谢】感谢新定义的张总,给予VIP级的技术支持。
|
很详细