SAKURA学习笔记
一、PC与开发板的连接
刚刚拿到开发板,只有一个数据线和PIN分布图。把开发板的SW3拨到RUN位置,开发板和PC用USB连接,可以发现蓝色流水灯在闪烁。说明开发板和PC连接正常。
按下SW1。流水灯停止闪烁。四个蓝色LED保持在亮的状态,同时发现新的移动硬盘GR—SAKURA。盘里有一个板子连接介绍的网站。
二、代码的烧写
开发板的代码烧写比较简单,把编译生成的bin文件放入移动硬盘GR—SAKURA。GR—SAKURA硬盘将消失。四个LED进行一次流水闪烁。开发板之后自动运行bin文件效果。当再次按下SW1复位时,移动硬盘将再次出现。原先的bin文件将自动消失。要再次执行代码需要重新放入bin文件。
三、编译器的使用
开发板使用云编译器,打开网址
http://tool-cloud.renesas.com/
四、点亮LED灯
数字I/O相关函数
pinMode
函数功能:选择输入或输出
语法:pinMode(pin, mode)
参数: INPUT,OUTPUT,INPUT_PULLUP
返回值:无
digitalWrite
函数功能:写引脚高低电平函数
语法:digitalWrite(pin, value)
参数:HIGH,LOW
返回值:无
digitalRead
函数功能:读引脚高低电平函数
语法:digitaRead(pin)
参数:I/O口
返回值:高或低
点亮LED代码
#include <rxduino.h>
void setup()
{
pinMode(PIN_LED0, OUTPUT); //LED1设置为输出模式
}
void loop()
{
digitalWrite(PIN_LED0, HIGH); //电平置高
delay(100); //延时
digitalWrite(PIN_LED0, LOW); //电平置低
delay(100); //延时
}
五、中断
中断相关函数
attachInterrupt
函数功能:指定响应于从外部终端的信号中的要执行的中断函数。
语法:attachInterrupt(unsigned char interrupt, void(*)(void) func, int mode)
参数:
unsigned char interrupt:中断号2〜7:中断(2:pin30,3:pin31,4 pin 32,5:pin 33,6 pin 34,7:pin35)
void(*)(void) func:发生中断时调用的函数:函数
int mode:LOW(低电平)CHANGE(电平变化)FALLING(下降沿)RISING(上升沿)
返回值:无
detatachInterrupt
函数功能:停止指定的中断attachInterrupt。
语法:detatachInterrupt(unsigned char interrupt)
参数:2-7中断号(2脚:30,3:31,4引脚:引脚32,5脚:33,6:34,7引脚:引脚35)中断
返回值:无
interrupts
函数功能:重新启用,您禁用noInterrupts的中断。
语法:interrupts()
参数:无
返回值:无
noInterrupts
函数功能:禁止中断处理。
语法:noInterrupts()
参数:无
返回值:无
利用中断点亮LED代码
#include <rxduino.h>
void setup()
{
pinMode(PIN_LED0,OUTPUT); //设置LED0为输出
pinMode(PIN_LED1,OUTPUT); //设置LED1为输出
pinMode(30,OUTPUT); //设置中断口输出
}
void LED()
{
digitalWrite(PIN_LED0,HIGH); //点亮LED0
digitalWrite(30,LOW); //中断管脚置低
delay(300); //延时
}
void INT() //中断函数
{
digitalWrite(PIN_LED1,HIGH); //点亮LED1
}
void loop()
{
LED(); //调用LED函数
attachInterrupt(2, INT, LOW); //中断配置
}
具体效果为LED0通过设置高电平在LED函数正常点亮并开启中断条件,短暂延时后,LED1通过中断点亮。
六、串口
#include <rxduino.h>
void setup()
{
Serial.begin(9600); //波特率设置
}
void loop()
{
Serial.println("Sakura UART test!"); //输出字符串
delay(300); //延时
}
需要安装虚拟串口驱动,注意串口COM口。