int num=10;//定义LED闪烁次数
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
Serialbegin(9600);
}
void loop() {
Led_Blink();//LED闪烁子程序
Serialprintln(num);//串口输出监视num的数值
}
void Led_Blink()//LED闪烁子程序
{
if(num>0)
{
num--;
digitalWrite(LED_BUILTIN, HIGH);
delay(300);
digitalWrite(LED_BUILTIN, LOW);
delay(300);
}
else
{
digitalWrite(LED_BUILTIN, LOW);
}
}
新建一个工程
打开keil uVision5,并新建一个工程
建立一个名为Test的工程
2
新建一个s文件 (1) 工程创建完毕后,对Source Group文件点击右键再点击ADD new item to group (2) 选择文件类型,添加文件 (3)
3
编译 点击左上角编译按钮,开始编译程序,此时0错误,0警告,表示编译成功。
4
stm32程序仿真调试 (一)调试设置 1点击魔法棒设置output一栏,选择
查看更多
windows
平台上面
arduino
ide下载后为zip包,直接解压就可以使用。
找到你下载的程序压缩包,解压到任意位置,(如桌面),打开此文件夹,如图所示:
双击”arduinoexe“即可运行。
下面是arduino的主界面,
上图对arduino主界面进行了简单的功能标注说明,在后面的章节中将详细说明每个菜单的功能用途。
验证代码:在烧录代码之前,对编辑的代码进行验证,检测代码是否有错误的地方,在编辑结果提示区里显示出来,方便用户修改。
烧录代码:在此开发工具里编辑的代码,还不能控制arduino,让arduino运行出你想要的结果,还必须将此代码上传到arduino主开发板中(也就是烧录),此开发工具将你编写的代码转换成arduino开发板可以理解的语言后才能运行。
看你的程序用的是H桥驱动两个直流电机正反转。
调试时不用接电机,H桥驱动有指示灯就可以看到4个端口的状态。
你的else这段不知道怎么回事,是把所有不是123的变为右转。。。
程序修改了一些,刚才试试可以编译通过。在串口调试软件可以看到PC键盘发送1/2/3/4给arduino,能收到arduino的反馈。因为串口有缓冲区,程序自动发送连续的1时会造成arduino 持续响应这个1,而等很久才相应改变后的按键。这点需要仔细调试发送端程序。
这个程序不推荐Ctrl+Shift+M ,用 STC-ISP 676 或更高版本有自动发送字符功能,更容易调试串口。PC键盘串口调试好后再换成蓝牙串口板。
#define p11 9
#define p12 10
#define p21 11
#define p22 12
void setup()
{
Serialbegin(9600);
pinMode(p11,OUTPUT);
pinMode(p12,OUTPUT);
pinMode(p21,OUTPUT);
pinMode(p22,OUTPUT);
}
void loop()
{
pinMode(p11,OUTPUT);
pinMode(p12,OUTPUT);
pinMode(p21,OUTPUT);
pinMode(p22,OUTPUT);
int a=0,b=1;
while (Serialavailable() > 0)
{
Serialflush(); //清除串口缓存
delay(500); //等待小段时间
int inChar = Serialread();
inChar=inChar-0x30; // 数字1的 ASCII码是 16进制0x31
if(inChar == 1) //foward
{
Serialprint("key 1 pressed"); //调试目的
digitalWrite(p11,LOW);
digitalWrite(p12,HIGH);
digitalWrite(p21,LOW);
digitalWrite(p22,HIGH);
delay(1000); // 按键后作用时长
}
else if(inChar == 2) //back
{
Serialprint("key 2 pressed"); //调试目的
digitalWrite(p11,HIGH);
digitalWrite(p12,LOW);
digitalWrite(p21,HIGH);
digitalWrite(p22,LOW);
delay(1000);
}
else if(inChar == 3) // turn left
{
Serialprint("key 3 pressed"); //调试目的
digitalWrite(p11,HIGH);
digitalWrite(p12,LOW);
digitalWrite(p21,LOW);
digitalWrite(p22,HIGH);
delay(1000);
}
else if(inChar == 4) // turn right
{
Serialprint("key 4 pressed"); //调试目的
digitalWrite(p11,LOW);
digitalWrite(p12,HIGH);
digitalWrite(p21,HIGH);
digitalWrite(p22,LOW);
delay(1000);
}
else //其他按键,停止
{
Serialprint("key other pressed"); //调试目的
digitalWrite(p11,LOW);
digitalWrite(p12,LOW);
digitalWrite(p21,LOW);
digitalWrite(p22,LOW);
}
}
}
电脑连接usb串口然后转透传模块(蓝牙、无线串口模块),arduino串口连接对应透传模块,然后波特率设置成115200。在电脑上点击烧写,然后迅速按下arduino的reset键就可以用电脑无线给arduino烧写程序了
以上就是关于arduino 怎么让灯闪烁之后停下全部的内容,包括:arduino 怎么让灯闪烁之后停下、stm32写arduino程序怎么调试、怎么用 arduino ide仿真程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)