热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

实验一米思齐

我的第一篇csdn博客大家好,这是我的第一篇CSDN博客,我的博客因物联网作业而生,我是渣渣,大家不要向我学习࿰

我的第一篇csdn博客

大家好,这是我的第一篇CSDN博客,我的博客因物联网作业而生,我是渣渣,大家不要向我学习,翻到了也请跳过(龇牙笑


什么是米思齐

米思齐是将arduino语言图形化了,进一步降低了使用的难度,对于计算机专业的学生,学习米思齐可以为以后就业多一条路,例如少儿编程教育等等!

三个个简单的例子

Mixly 数码管时钟实验

硬件
Arduino、TM1637数码管

软件

Mixly IDE

注意
由于这个例子中使用的是TM1637数码管,最好在Mixly IDE中安装hznupeter-maker17-master插件,使用这个插件中的图形代码更方便!

例一:实现滚动显示自定义字符串。

图形代码

在这里插入图片描述
原码

#include TM1637 tm1637(3,2);void setup(){tm1637.init();tm1637.set(7);
}void loop(){int8_t NumTab[]&#61;{0,1,2,3,4,5,6,7};int8_t ListDisp[4];int8_t run&#61;1;unsigned char i &#61; 0;unsigned char count &#61; 0;delay(150); while(run){i &#61; count;count&#43;&#43;;if(sizeof(NumTab)<5)run&#61;0;if(count &#61;&#61; sizeof(NumTab))count &#61; 0;for(unsigned char BitSelect &#61; 0;BitSelect < sizeof(NumTab);BitSelect &#43;&#43;){ListDisp[BitSelect] &#61; NumTab[i];i&#43;&#43;;if(i &#61;&#61; sizeof(NumTab))i &#61; 0;}for(unsigned char k &#61; 0;k <sizeof(NumTab);k &#43;&#43;){tm1637.display(k,ListDisp[k]);};delay(300);}}

实现效果
在这里插入图片描述
例二&#xff1a;实现显示自定义时间

图形代码
在这里插入图片描述
原码

#include
#include int8_t TimeDisp[] &#61; {0x00,0x00,0x00,0x00};
unsigned char ClockPoint &#61; 1;
unsigned char Update;
unsigned char halfsecond &#61; 0;
unsigned char second&#61;30;
unsigned char minute &#61; 30;
unsigned char hour &#61; 20;#define ON 1
#define OFF 0TM1637 tm1637(3,2);void TimeUpdate(void){ if(ClockPoint)tm1637.point(POINT_ON); else tm1637.point(POINT_OFF); TimeDisp[0] &#61; hour / 10; TimeDisp[1] &#61; hour % 10; TimeDisp[2] &#61; minute / 10; TimeDisp[3] &#61; minute % 10; Update &#61; OFF;}
void TimingISR()
{
halfsecond &#43;&#43;;
Update&#61;ON;
if(halfsecond &#61;&#61; 2){
second &#43;&#43;;
if(second&#61;&#61;60)
{
minute &#43;&#43;;
if(minute &#61;&#61; 60){
hour &#43;&#43;;
if(hour &#61;&#61; 24)
hour &#61; 0;
minute &#61; 0;
}
second &#61; 0;
}
halfsecond &#61; 0;
}
ClockPoint&#61;(~ClockPoint) & 0x01;
}void setup(){tm1637.init();
Timer1.initialize(500000);Timer1.attachInterrupt(TimingISR);tm1637.set(7);
}void loop(){if(Update &#61;&#61; ON){TimeUpdate();tm1637.display(TimeDisp);}
}

在这里插入图片描述

例三-实现显示秒表

图形代码
在这里插入图片描述
原码

#include
#include
#include
#include int8_t TimeDisp[] &#61; {0x00,0x00,0x00,0x00};
unsigned char ClockPoint &#61; 1;
unsigned char Update;
unsigned char microsecond_10 &#61; 0;
unsigned char second;
unsigned char _microsecond_10 &#61; 0;
unsigned char _second;
unsigned int eepromaddr;
boolean Flag_ReadTime;#define ON 1
#define OFF 0TM1637 tm1637(3,2);
void TimeUpdate2(void)
{
if(ClockPoint)tm1637.point(POINT_ON);
else tm1637.point(POINT_OFF);
TimeDisp[2] &#61; _microsecond_10 / 10;
TimeDisp[3] &#61; _microsecond_10 % 10;
TimeDisp[0] &#61; _second / 10;
TimeDisp[1]&#61; _second % 10;
Update &#61; OFF;
}void TimingISR2()
{
microsecond_10 &#43;&#43;;
Update &#61; ON;
if(microsecond_10 &#61;&#61; 100)
{
second &#43;&#43;;
if(second &#61;&#61; 60)
{
second &#61; 0;
}
microsecond_10 &#61; 0;
}
ClockPoint &#61;(~ClockPoint) & 0x01;
if(Flag_ReadTime &#61;&#61; 0){_microsecond_10 &#61; microsecond_10;
_second &#61; second; }
}void readTime(){
Flag_ReadTime &#61; 1;
if(eepromaddr &#61;&#61; 0)
{
Serial.println("The time had been read");
_microsecond_10 &#61; 0;_second &#61; 0;
}
else{
_second &#61; EEPROM.read(-- eepromaddr);
_microsecond_10 &#61; EEPROM.read(-- eepromaddr);
Serial.println("List the time");
}
Update &#61; ON;
}
void saveTime()
{EEPROM.write(eepromaddr &#43;&#43;,microsecond_10);
EEPROM.write(eepromaddr &#43;&#43;,second);
}void stopwatchPause()
{
TCCR1B &&#61; ~(_BV(CS10) | _BV(CS11) | _BV(CS12));
}void stopwatchReset()
{stopwatchPause();
Flag_ReadTime &#61; 0;
_microsecond_10 &#61; 0;
_second &#61; 0;
microsecond_10 &#61; 0;
second &#61; 0;
Update &#61; ON;
}void stopwatchStart()
{Flag_ReadTime &#61; 0;
TCCR1B |&#61;Timer1.clockSelectBits;
}void setup(){tm1637.init();tm1637.set(7);tm1637.set();tm1637.init();
Timer1.initialize(10000);Timer1.attachInterrupt(TimingISR2);}void loop(){stopwatchStart();if(Update &#61;&#61; ON){TimeUpdate2();tm1637.display(TimeDisp);}
}

在这里插入图片描述
/


推荐阅读
author-avatar
灰常奈-ping__
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有