




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、瑞萨单片机入门教程本教程以R7F0C002L单片机为例一、 开发环境下载安装与工程注意:该工程目录和工程名不能含有中文1.1、 CubeSuite+环境的下载:官网下载地址将安装环境下载到本地,该文件大小532M在安装过程中有提示需要填写注册码,请输入以下注册码,如果无效请联系供应商。查看是否已经注册:在IDE环境中选择 Help-About后有下面窗口:注册码:67DCS-V3Q7L-XMGL9-FI6L9-EE1BJ该注册码有限制台数的,一旦注册了就会把MAC绑定,重装无需注册!当有以下报错时:请查看是否已经注册。1.2、 按照一般的软件安装方法安装好IDE环境,下面介绍IDE环境的配置:
2、1、 将DIF_RFP文件夹下的Device_Custom文件夹拷贝到安装目录下的C:Program FilesRenesas ElectronicsCubeSuite+下(这里是默认的安装目录,另外注意:DIF_RFP中Readme_Device_Custom.txt说将Device_Custom文件夹拷贝到C:Program FilesRenesas ElectronicsCubeSuite+Device下,但是实际上不可以!)。DIF_RFP文件夹安装根目录当配置成功以后会在芯片族里面多出R7F系列的单片机,如下图示:2、 将DIF_RFP文件夹下的RFP_R7F0C002L_V1000
3、0子目录下面的两个文件(Device_Custom文件夹和Custom_Productlist.xml文件)拷贝到安装目录下的C:Program FilesRenesas ElectronicsProgramming ToolsRenesas Flash Programmer V2.01Device下(这里是默认安装路径)。1.3、 开发环境新建工程:1、 启动CubeSuite+环境,会弹出如下启动界面:2、 创建Project工程,在上述启动界面中,点击Creat New Project栏中GO按钮,将会弹出以下对话框:选择工程路径创建输入工程名选择芯片型号选择芯片族3、 点击Create
4、创建工程,会得到如下工程界面:4、 通过生成工具生成一个简单的代码:5、 将芯片型号换成R7F0C002单片机,并且将选项字节配置好!详细设置请参考第三章 代码生成与编码 。6、 将系统生成的代码全部删除,添加自己的工程代码!删除Code Generator文件夹选择RL78 EZ Emulator工具添加自己的代码!这里需要注意:必须要把pfdl.lib文件和pfdl_sample_linker_file.dr链接文件添加到工程里面。7、 该单片机也可以按照传统的方式直接新建工程并添加代码,但是不建议这样使用,在新建工程后需要添加一个比较麻烦的链接文件,而且容易出错!这里就不介绍了。二、 仿
5、真器安装与设置2.1、安装驱动与更新固件:驱动安装按照一般方法即可,路径如下图示:点击确定即可,正确安装完成后在设备管理器端口中可以看到Renesas Virtual UART端口,否则安装失败!2.2、在D:XXXEZ_CUBEEZ_QBEZUTL & firmware路径下有固件烧录软件,打开之后将RL78_OCD_FW.hex文件烧录到下载其中,界面如下:点击打开后,点击Start开始烧录即可。2.3、在仿真器背面有5个拨动开关设置:序号位1位2说明建议配置1M1M2M22Int.ClockExt.Clock内部/外部时钟Int.Clock3Debug ModeStand Mode仿真/
6、独立模式运行Debug Mode4T5T:目标板供电,电压范围+2.7V+5.5V5:仿真器提供5V电源实际情况定,仿真器不能提供3V电源5OtherR8COther2.4、仿真器与目标板的连接:EZ-CUBE:目标板:按照上图一一对应即可。2.5、CubeSuite+仿真设置:配置仿真工具Debug Tool按上图选择可以实现硬件仿真。三、 代码生成与编码3.1、代码生成工具初配置3.1.1驱动代码自动生成:选择Tool-Plug-in Seting,会弹出以下对话框:勾选红色框内内容,并点击OK,软件会提醒需要重启软件,点击Yes即可重启。3.1.2、重启后界面项目树上会多出以下几个内容:
7、3.1.3、代码生成准备工作:代码生成是必须是选择R5F10RLC型号的单片机,将需要的底层驱动代码生成以后,再将MCU型号改回R7F0C002L型号单片机。选择Change Microcontroller项即可更换MCU型号。3.2、Clock系统时钟配置选择Generator Clock项,然后选择Pin assignment选项卡这是一些复用功能重定向控制,此处保持默认状态。再选择Clock Setting选项卡外部晶振频率选择X1振荡电路选择主时钟源类型电源范围选择其他内容保持默认状态即可。最后选择Pin assignment选项卡并点击fix settings按钮修改设置。3.3、G
8、PIO端口配置方法选择Port项,按照实际需求配置好端口的输入输出状态,这里将P41-P43配置为输出状态。完成后点击即可生成代码。在项目树中可以看出,生成了三个文件:打开r_cg_port.c文件,文件中有一个端口初始化功能函数void R_PORT_Create(void)在硬件初始化函数hdwinit中将会调用这个函数初始化硬件Port端口。在main函数中会发现并没有调用hdwinit硬件初始化函数,这个是由于代码生成工具自动会将hdwinit硬件初始化函数加载到汇编代码中,C代码中不需要做处理。3.4、Timer定时器配置方法选择Timer项,然后选择General Setting选
9、项卡将Channel0即定时器0配置成Interval Timer(间隔计时器)。选择Channel0选项卡,按照以下配置,完成后点击Generate Code生成代码。定时时长中断优先级定时器中断模式同样会自动生成r_cg_timer.c、r_cg_timer.h、r_cg_timer_user.c三个文件,打开r_cg_timer.c文件,会发现有三个函数:void R_TAU0_Create(void):定时器初始化函数;void R_TAU0_Channel0_Start(void):定时器0启动函数;void R_TAU0_Channel0_Stop(void):定时器停止函数。在系
10、统自动初始化函数中会自动添加R_TAU0_Create初始化函数,不需要在main函数里面再操作初始化,但是timer0初始化后并没有启动,因此需要在main函数里面添加启动函数,注意:所有用户添加的代码必须写在有类似的提示之间,否则在重新生成代码时会被系统自动清除掉或者改掉。打开r_cg_timer_user.c文件,在中断服务函数_interrupt static void r_tau0_channel0_interrupt(void)加入定时器中断需要处理的代码。3.5、SPI(CSI)串口配置:选择serial项,再选择Channel选项卡,并按照下图设置选择CSI00选项卡,并按照下
11、图设置按照前面同样的步骤,在main主函数中添加R_CSI00_Start函数,启动SPI功能。在需要发送数据的情况下调用R_CSI00_Send_Receive数据交换函数即可。3.6、ADC转换器配置:选择A/D Converter项,将A/D Converter Operations Setting项选择Used,再按照下图配置。ADC通道内部基准8位模式ADC中断优先级点击Generator Code生产代码,同样会生成r_cg_adc.c、r_cg_adc.h驱动文件r_cg_adc_user.c用户文件,在r_cg_adc.c文件中包含ADC的初始化函数和启动函数。在main主函数
12、中的系统初始化文件中添加启动函数,如下示在r_cg_adc_user.c用户文件中,中断服务函数中读取ADC转换结果3.7、LCD端口配置:选择LCD Controller Driver项,将LCD Operations Setting项选择Used,然后按照下图设置LCD偏压设置LCD时间片选择液晶波形选择同样点击Generator Code生成代码,系统会自动生成三个文件(哪三个文件这里不赘述了),在main主函数中的系统初始化函数中调用R_LCD_Start启动LCD,调用R_LCD_Set_VoltageOn函数开启LCD偏压电路。代码生成工具只生成了LCD的初始化函数和上述两个启动函
13、数,其中SEG脚配置之类的并没有生成,因此需要自己添加,这里不做详细说明。3.8、WatchDog定时器配置:选择WatchDog Timer项,并按照下图配置:休眠模式WatchDog运行选择在配置低功耗的时候需要注意看门狗的设置,需要将运行选择位配置为Stopped模式即低功耗状态禁止看门狗运行。看门狗的配置有部分体现在选项字节中,寄存器配置部分体现在代码中这里不作详细介绍,主要介绍选通过项字节将看门狗设置为休眠禁止运行状态:双击Build Tool会弹出property页,选择其中Link Options选项卡,选择Device内容,如下示:看门狗配置字其中User options by
14、te value值就是用户选项字节设置内容。在RL78_L12用户手册硬件篇.pdf 第25章选择字节中有有介绍这三个字节意义,最前字节FE是用于配置看门狗。选项字节格式设定值FEFFEA选项字节地址000C0H000C1H000C2H描述看门狗设置中断& 复位模式设置内部时钟频率配置将WDSTBYON位配置成0就可以将看门狗配置为休眠模式下禁止运行状态。3.9、低功耗休眠配置:R7F0C002单片机低功耗有三种模式:HALT模式、STOP模式、SNOOZE模式;HALT模式只有CPU时钟停止运行,其他外围时钟还在运行;STOP模式会是整个系统停止运行可以大幅度降低功耗;具体模式特点请参考RL
15、78_L12用户手册硬件篇.pdf文档。在进入STOP模式之前必须将外部时钟切换到内部高速时钟,并且需要将看门狗关闭,否则看门狗会将系统从STOP模式唤醒,关闭看门狗的方法参考3.8章,在此不再赘述。在休眠状态,将PER0配置为0x00,禁止所有外部设备时钟,否则会多出250uA左右的电流!3.10、外部中断配置:外部中断分为通常意义的外部引脚中断和按键中断。3.10.1、INTP外部中断选择项,按照下图配置,生成代码。在main主函数中添加R_INTC0_Start启动函数即可,在r_cg_intc_user.c中的中断服务函数_interrupt static void r_intc0_i
16、nterrupt(void)添加用户代码即可。3.10.2、KeyINT按键中断按图配置,并生产代码:在main主函数中添加启动函数R_KEY_Start即可启动KeyInt中断。注意:在中断服务程序中需要清除KRF键返回标志寄存器,否则只能触发一次中断,如下示:清除键返回标志3.11、片内EEPROM(DataFlash)R7F0C002单片机自身不带EEPROM功能,但是可以通过数据闪存实现EEPROM数据保存的功能。1、 需要将一下几个文件添加到工程目录下:其中:pfdl.h、pfdl.inc、pfdl.lib、pfdl_sample_linker_file.dr、pfdl_types.
17、h五个文件是厂家代码,这五个文件也可以通过E:xxx瑞萨002入门教程RENESAS_FDL_RL78_T04E_V1.00工具生产,以上代码就是通过这个工具生产的,r_pfdl.c文件是供应商那边工程师自己写的代码,经过修改后可以实现数据保存的功能。2、接口函数:通过R_FDL_ExecuteRead函数可以读取指定地址内容,通过R_FDL_ExecuteWrite函数可以将指定内容写过到指定地址。注意:在写入数据之前必须要调用R_FDL_ClearDataFlash函数将整个地址数据全部清除掉再写入数据。出现以下找不到库函数的报错时:请将库函数Lib文件添加到工程中,如下图示:将pfdl.lib文件添加到工程中3.12、乘法运算这里把R7F0C002单片机的乘法运算单独列出来,希望能引起读者注意单片机乘法运算的时候符号类型转换。以这个函数为例,ExamN是用来决定ExamValue值的存放地址,实际EEPROM的地址Addr=0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论