粉丝7099获赞2.4万

大家好,这期我们来学习用万能法来控制 led 灯点亮,学会了这种方法,我们可以实现各种复杂的花样流水灯设计。接下来我们开始编写程序,首先我们定一个数组 书足,里面放入 led 的状态, 主程序里定义一个变量, 写一个 four 循环,控制这八个灯状态 p 零等于小灯的状态,延时五百毫秒。 下载到学习版测试, 点击下载学习版上电,我们看一下学习版的现象,我们使用杜邦线将 led 的引脚接到单片机 p 领口,我们给单片机系统上电, 可以看到这八个 led 灯从左至右依次点亮。如果我们想这个灯从右到左依次点, 我们该如何改变这个程序呢?接下来我们编写这个程序, i 等于七, i 大于零, i 减减, 这样我们这个小邓就可以从有王左依次点亮,将程序下载到学习版。下载程序 我们看一下学习版现象,给单片机系统上电,上电之后可以看到八个小灯从左至右依次点亮,再从右向左依次点亮。本期的内容就到这,我们下期见,关注看更多单片机视频。

好的,我们今天来看一下,来做一个流水灯啊,先看一下要求 用到的单面机,是五幺单面机啊,变成软件 q, 然后仿仿真,软件的话是 partys, 然后描述的话要求描述啊,单片机上控制十二个 led 灯做画像变化, 刚开始的时候呢,第一个 led 灯呢,闪烁几次,然后呢 led 灯像跑马灯一样 跑出去,然后又跑回来啊,循环这个动作,这是一个非常简单的一个程序,来看一下仿真, 仿真的话就是这个样子的啊,一个一个单面机,然后 十二个 led 灯啊,分别接着接在了 p 一口啊,七 p 口的八个端口,以及 p 二口的 p 二口也占用了四个啊, 这样的,嗯,这四个啊,然后我们再看一下程序, 打开程序 再选择 后呢,我们来看一下里面的代码,咱们从头开始看,然后刚开始的话引入了三个投文件,一个二七五二啊,使用这个的话,等 你用不到啊,那是支付的啊,这一个需要用到啊,咱们这个刚刚的函数,他的童年就是这一个。 然后接下来我们看一下主函数啊,主函数进来之后呢,就是一个实循环啊,实循环进来之后呢,首先啊,咱们就是说 对这个 p 一啊,进行一个一或一啊,十毫秒一次,一百毫秒一次啊,然后 一喝了十次啊,也就说让 p 一的第一个端口啊,第一个端口就是 p 一点零啊,先进行一个高低电瓶的变换,变换多少次,变换五次 啊,就是他是十小于十一上一下啊,代表一个周期,然后一上一下,也就说一共有多少个上下,那就十个啊, 然后咱们看一下 p e 上一个一是个什么意思啊?咱们先打开滑板啊, p 一的话,它有八个端口啊,再 啊,这是一二三四,一二三四啊,一共八个端口,那一和一一等于多少?一就是零 零 啊,对这个数进行求疑惑啊,啊,比如说我们这个是个 x 嘛,对吧? 前面这是 x 嘛?后边这一个的话,如果是,比如说我们默认状态他为多少为零为一嘛?默认状态为一,那他这 这个数进行求异和之后呢?零和,任何数的异和都等于它本身啊, x x r 一和一的 e 后呢,它就等于零 啊,然后如,也就是说这是第一次啊,也就是他将这个第一个位,第一位的这个数据就改变成了复制为零了。然后如果是再求一次疑惑的话, 如果再求一次一和的话,然后这个的话,他就等于多少等于一了啊? 相一为一,相同为零,嗯,然后这些 x x 这个样子的啊,只有亦或语语亦亦或才会进行一个吃饭,语亦亦或之后呢?他是值,如果是 相同的话,他就变成了零相,嗯,不同的时候就变成了一啊,这样的一个意思, 如果与零进行结合的话,他就等于这个值得一个原来的那个值等于他的本身。好,刚刚我们讲 讲了这个 p 点啊,然后你就说这一段代码的话,他这个灯呢,他就会一直一闪,一闪闪五次啊, 然后接下来的话,我们又做了什么呢?有一个申请了一个啊, 申请一个变量啊,给他复制为一,然后我们将这个然后循环了八字,这里有八字啊,做八次循环, 然后将 p e 的值啊,将这个变量取反以后给了 p e, 然后呢再将这个值向左移一位 啊,演示一下,这个是一个什么意思呢?我们来看一下啊, v a l 啊,它的值刚开始的时候呢, 等于多少呢?等于这个零,他的高,他是一的话,那高位肯定是零,低位的话就是零零零一, 然后如果也就说他取反啊,取反啊,取反之后又等于等于多少呢?那我们进行取反,看一下 的话,就等于多少呢?就等于幺幺幺一就变成零了啊,零就变成一了,一呢,也会变成零啊,他就等于这么多,他将这个 复制给了多少?给了 p 一啊,复制给 p 一啊,那我们再看一下, p 一,他不就是给这个 led 灯复制吗?对吧?复制给 p 一,那就是他的第一个啊,为零,一到七为一啊, 一到七为一,那这个灯的话,他是低电频点亮,因为他是供阳级的啊,一零,这个 p 一点零规定啊, p 一点零就亮了,然后一二三四五六七啊,就会灭。我们再看 他这一步做完之后呢,然后将这个 v 这个边的 v l 向左移,移位啊,我们看一下,向左 左一,一位,左一,左一, 然后还有等于啊,他是先左移,然后再等于再复制给这个边量的啊,我们将这个点删掉, 然后你看一下,先左一啊, 左膝,嗯,单移位, 他就等于多少呢?看这个字那一的话,就左一位呗,零还是零,对吧?这个零就变得这跑这来了,这个零跑这里,这个零跑这里,然后一 一次啊,对吧?一次往这边走,对吧?一次往这边走,零,零一啊,这个一要跑到这一位来啊,最后这个地方没有了,怎么办呢?没有了用零来补充,填充啊,零来填充啊,然后再进行一个取反, 他就等于多少呢?然后幺零幺幺幺幺幺幺啊,就等于这样的一个字,他就说这是 p 一点零,这是 p 一点一啊,那一点一就点亮,那剩下的就变,就灭啊, 一点一,一点一点点亮,那就是这个点亮啊,这个点亮,这个灯点亮啊, 一辆,对吧?然后这个就灭了,这个这个零二三四五六七啊,都会变,就会灭掉,这只有一辆,那同样的原理啊, 他再向左一等一位,那岂不是就是 d 这一个为零了,对吧?那再做一位,那这一个为零,对吧?那这样,这样的话,那个灯的话,他就从这里一 p, 从 p 一点, 从 p 一点零,一直往左移移动,一直到移动到 p 一点七, 对吧?移动到 p 一点七的时候,刚好你就第八位了,对吧?然后第八位,然后他就跳出来了,对吧? p 一点八啊,他要等于八,那跳出来之后呢?因为你 看到没有?第八位,然后再往左移一位,这个,对啊,是不是等于零呢?对吧?那第七位的时候再往左移一位,他就等于零了,等于零之后呢?那我们就又给他复制为一,然后你说这个时候呀,这个 p 一端口的灯全部灭掉啊, 然后这个灯啊全部灭掉,灭掉了之后, 然后这个将这个 v l 一等于一,然后又复制给 p 二,然后同样的道理,对吧? p 二这边的灯是不是 p 二点零开始? 二点一,二点二,二点三,对吧?他有四个啊?这次的话他只想左移,从零到四啊, p 零到 p 四, p 二点零到 p 二点四, p 二点零,二点一,二点二,二点三,对吧?零一二三,一共四位,对吧?四个灯啊,亮完之后呢?然后将这个 vr 复制给复制为零 x 八零, 然后又来怎么样?左移啊?右移来,右移,刚刚咱们说了句左移,那右移他就是咱们这个 方向相反啊, n x 零八,就是零零,高位还是零,然后幺零零零啊,这个就是 n x 零八零八的二进制, 对吧?然后复制给 p 二啊,取反之后复制给 p 二,那就是咱们这个 p 二点三,这里是二点三,二点零,二点一,二点二,二点三啊, p 二点三两啊,咱们 p 二点三, 这里算是第八个端口啊,是不是?二点零,二点一,二点二,二点三,那就是十一号端口量,对吧?那十一号端口量, 然后再将这个数据啊,左移一位,左移啊,右移一位啊,右移的话,那是不是这个就应该跑到这边来,往这边走,是吧?这边走的话就是 零,那他就变了,他就我跳到这一位了,第二位,跳到第一位了,对吧?把这个跳到这里来, 然后一系跳到这里来了啊,这个零的话,跳到跳过来了,对吧?啊?这边这个零啊也跳到这边来了,这里的零啊,依次跳,对吧?但是最高位的时候这里没有,怎么办?没有补零 啊,那这样的话,那,那还再去反一下啊,这等于多少了啊?幺幺幺幺,这里是幺零幺幺,对吧?那就是十二点零,二点一,二点二,二点二两,对吧? 二点二两,二点零,二点一,二点二,二点二,是十啊,十,就这一个啊,看是不是刚刚他亮啊,他亮啊,再往左移一位,是不是他亮,对吧?然后再往左移一位啊?再往右移一位,是不是他亮,对吧?所以说 然后这个的话,他就是他就依次往右移,然后他就说这个地方他就回去了,对吧?回去了,然后这个地方你应该是把因为这四个灯啊,他跑完之后,然后咱们就是 原来跑这边的八个灯,对吧?这八个灯跑完之后呢啊,就就延迟一秒钟啊,咱们又重新开始,重新开始跳啊,亮五下啊,亮五下,对吧?然后呢开始这个向左移 移位移完之后呢再向右移,对吧?那你在在在咱们这个图像在咱们这个上面看到的啊,效果啊,就是第一个先 亮几下,然后呢这个灯呢依次往这边跑,跑过来之后呢?然后又回来,回来之后停到这个地方,然后这个灯又在亮,对吧?咱们来看一下效果,然后开始跑起来,有没有 啊?停一下,然后又开始亮几下,然后向左,然后再向右啊,对吧? 这就是咱们这个要求啊需要的一个结果,就是这样的一个效果。

用图形编程的方式做了一个五幺的流水灯,那么这里我们对整个 p 一的端口进行复制,利用了一位的方式进行操作,这边是他的图形代码,右侧是他自动生成的 c 代码, 这个五幺这里并没有提供具体端口的一个状态操作啊,那么就像 米思琪这里是吧?米思琪这里我们是能够对具体的一个端口编号,利用变量进行操作的,所以在米思琪这个地方去写一个流水灯,会非常的简单。 添问这里啊,我们就要借助这个整个端口去复制一个字节的方式,借助移位去实现啊,这个也不能说 难,好吧,这个也是很好理解的,因为一个字节就是八个位,然后我们用一位的方式给整个字节去复制,也能实现这样的一个效果。 那么关于这个图形编程的学习啊,大家不要去纠结那些所谓的高级或者低级,就是你图形用久了以后,你发现,哎,其实这个 c 代码啊,他也都是这种一一对应的一个状态,也是很好理解的。 如果说你的这个代码这一块挺熟的,你用到了图形,你会发现,哎,这个有时候 做一些小程序啊,还是很好玩的,是吧?所以说我们去用这个图形编程啊,就保持着一个平和的心态啊,闲着没事我编一个小程序玩一玩, 对吧?活跃活跃一下思维,把这些很好玩的硬件都给他跑起来,动起来,做一个小发明,小创造,哎,这也是很好的一个定位,所以说大家不要去纠结 这样的观点,那样的观点,不要去争辩那些内容,立马开始操作,干就完了,开始学习。这里是老苏单片机入门,多谢各位,再见!


啊,同学们大家好,所有远程今天没有来的同学啊,大家好好的看一下我以下的操作。今天我们的操作呢,是首先关闭打开的这个工程, 然后新建一个工程,这个工程呢,我们可以叫 l e d o on 或者是 l e d o off, 因为我已经建了 l e d o on 啊,所以我我暂时叫它叫 l e d o off。 然后这个工程名呢,可以和这个文件夹的名是一样的, l e d o off。 然后呢,我们选择 alt male 公式,点三下一二三八九 c 五二,然后选 ok, 选否。然后呢,我们可以新建一个 text 保存,保存的时候一定要注意,要保存到我们刚才新建的 l e d o of 这里面。选择 media c, 选择 media c, 双击 source group one, 双击 media c, 点击 close, 就可以把 manager c 装到我们的诶这个程序当中,然后工程当中,然后点击 options, 选择是一点零五九二,你们有没有我操作的快呀, 你们应该比我操作的更快啊,年轻人。然后我们可以把今天课上 ppt 的这个 ct 给大家编一下啊,由于呢,我们时间比较有限,时间比较有限哦,就我就把它敲一遍吧, 敲一遍吧啊,大家远程的同学跟我一起敲一遍啊紧 include, 然后打一对儿尖头,然后 reg 五二点 h, 这是一个很好的习惯啊。然后直接呢,先怎么样主函数 数函数直接打一对大括号,我跟你们说现场有两个同学打的是小括号啊,来告诉我,老师报错了啊,然后呢,直接是 why 我们上 呃,缩进一下,缩进是用 tab 键啊 why 一死循环啊,我们上节课因为没有任何的函数啊,没有任何的循环体,所以直接打分号。但今天我们不同,是有循环体的,把分号删了,谁打分号了?现场的同学, 然后我们循环了四个语句,第一个叫 l e d 杠,哦,杠啊。第二句叫埋杠 d 雷一秒,然后是个函数,第三行叫 l e d 杠,哦,什么呀? 现场的同学, oh 什么 off, 好,最后一句是什么? moving, 嗯,又 delay 了一秒,对不对?又 delay 了一秒,好,这个时候呢,我们可以怎么样与川字 later 一下,发现牙有零三个 worning, 哈, 是因为我们这些函数都还没有定义呢,对不对?哎,我们要定义一下哈。今天我们学一个红定义啊,今天我们学一个红定义,叫井底饭。井底饭呢,就是用井底饭之后的井挨着的字符串来代替后面脚长或者脚难理解的字符串啊,井底饭 led 刚 o 刚 on, 然后呢,它是什么呢? p 音乐设置为零 x on 应该是零 x。 什么呀?零 啊,对,是零零,我还刚想批评你们,对,是零零。由于红定义不是这一句,所以不需要打分号啊,所以不需要打分号。接着呢,我们把 all of 也设置一下,是零 x f f。 远程 同学,不知道原因的好问一下我们课堂上的同学啊,他们如果解答不上来的话,大家偷偷告诉我,我要惩罚他一下啊。 然后这个时候呢,我们再做一个短字符串代替长字符串的一个工作,用 you int 来代替 answer and int。 然后我们就可以写,这个时候我们再 translate 一遍,会发现 warning 少了几个,少了两个,因为 l e d o 啊, l e d o of 已经被红定义过了,然后我们来做这个 midi 的一秒的这个函数啊,这个函数呢,是一个没有参数,没有返回值,没有返回值, 没有参数的一个函数。我们如果写在 may 函数前面的话,就是写在他调用的函数的前面的话,就可以不用声 明。如果你这一段蚂蚁 delete 一秒,可不可以写在 may 还是后面啊?现场同学,可以,如果写在后面的话,前面必须怎么样啊? 声明一下,还记得吗?还记得词语原这个知识点不记得吧。好在 mind 的一秒是 mind 的一秒是今天必须要掌握的一个啊。函数啊,我们可以定义两个无符二。呃,整形变量,其实有一个浪费了,有一个定义无符二字符型变量就行了。 我们写两重否循环。大家跟我一样写啊。大家跟我一样写两重否循环。只执行一个空语句,空语句 就是只打一个分号,我们叫空语句。能不能跟上?怯场同学,能跟上啊。然后呢,我们把 i 呢,我们的 i 呢,在 ppt 上写的是初试值复制为一百三,然后真为真,条件是大于零,在单位预算符两侧呢,程序员一般都习惯打,怎么样打一个空格儿啊? i 减减,第二重循环呢?是 j 啊, j 呢,从两千往下减。 我今天可能下课稍微晚一点啊。摘剪剪好摘剪剪好。这个时候呢,我们再熨一下啊,再熨一下,发现什么呀?连个 era, 连个 warning 啊,包括我们可以在 rebuild 一下,会发现连个 era, 连个 warning 之外呢,还 create eighteen, hex five。 我们可以 哎,把什么可执行文件固化到单面机的文件也进行了生成啊?也进行了生成,下面教大家怎么进行软件调试?我,我再开一个视频,我再开一个视频教大家进行软件调试。

大家好,这期我们来学习下单片机流水灯的实现。首先我介绍下设计思路,设计思路是这样,先点亮第一个灯,再调延时程序,然后再点亮临近的一个灯,他同时熄灭上一个灯,再调延时程序,如此循环即可,会实现流水灯现象。 这个是 led 灯原理图,这个是一个排针,我们将它接到单片机的 p 零口,接下来我们开始写程序。程序我们在第二期 led 闪烁的基础上进行编写,首先定义八个 led 灯接口, 接下来我在主程序中编写,先点亮第一个灯,我们这个 led 低电瓶点亮,高电瓶熄灭,第二个灯熄灭, 第三个灯熄灭,第四个灯熄灭, 第五个灯也熄灭,第六个灯也熄灭,第七第八也是熄灭的, 延时五百毫秒。 我们熄灭第一个灯,点亮第二个灯,再加上岩石熄灭第二个,点亮第三个, 熄灭第三个,点亮第四个, 熄灭第四个,点亮第五个, 熄灭第五个,点亮第六个, 熄灭第六个,点亮第七个, 熄灭第七个,点亮第八个。 我这个地方错了,在编译下编译成功,我们将程序下载到单片机,选择程序,点击下载, 这个下载成功,我们看一下实物的现象,我们使用杜邦线将 led 的引脚接到单片机 p 领口,我们给单片机系统上电, 可以看到这八个 led 灯从左至右依次点亮。本期的内容就到这,我们下期见。

今天手把手教大家建立 protest 工程,并且实现流水灯效果。首先我们搜索 at 八九 c 五幺, 直接点击放置, 这里我们搜索金镇 crystal, 直接点击放置, 这里我们开始连线, 这里我们搜索电容 cap, 点击放置,按数字加进行旋转, 这里选择的开始放置, 将线连接好, 现在开始设计复位电路, 这里需要一个复位按键,直接搜索 button, 点击放置, 将线连接好,这里选择电源, 这里还需要一个电阻,搜索 race, 点击放置。 然后脸上的 这里将 e a 连上电源, 双击器键修改参数, 现在还需要将屁领口接上,上拉电阻,搜索 respect 八。 首先最左边连上电源, 现在按顺序连出引脚, 这里我们 i a 输入上面的代码, 单击引脚命名该引脚。 现在五亿单片机的最小系统设计完成, 现在开始设计程序, 选择,新建一个新工程, 这里命名为教程 一, 选择 at 八九 c 五幺单片机, 这里我们新建一个文件, 保存到该程序文件夹下, 将该文件添加到工程中。 声明头文件, 这里编写 main 函数, 这里边写延时函数, 这里将 led 棒复制给 p 零。 尴尬,平时 copy 惯了没注意。 这里我们搜索 led red, 选择 led 灯, 将 led 灯顺序排好, 连上单片 gp 领口, led 右边接力即可。 这里我们右键芯片, 选择我们刚刚编写好的程序, 点击运行。 求赞求关注了。

大家好,欢迎来到今天的课程,今天我们要一起学习的是流水灯的 ai 辅助编程,希望通过这节课,大家能掌握如何利用 ai 工具来实现软件编程,提升我们的动手能力,激发创造力。 接下来我将从四个方面为大家展开讲解。首先我们会了解流水灯的基本电路逻辑,其次我们将学习如何生成所需的延迟函数和控制逻辑算法。第三部分, 我们进行程序的运行和调试,并一起探讨循环方向和逻辑修改。最后我们会 ai 辅助和优化完成整个实验测评。接下来我们就从第一个部分开始吧。 流水灯其实是一个经典的电子工程实践项目,如图, p 一 口接了八个 led 指示灯,采用惯电流方式,低电频点亮。 首先我们要了解下负循环的结构三要素,数值、循环条件和变量加减 控制。流水灯可以使用左移右移指令,把出值零 x 零一或零 x 八零进行右移或左移,实现指示灯的依次点亮,配合延时函数实现了流水的效果。 接下来我们进入第二部分,生成流水灯所需的延迟函数,我们采用 ai 工具自动生成指令词如下,请帮我生成一个五十一单片机延时一秒程序。 我们看到生成了多种延时函数算法, 我们采用可调整参数的通用延时函数。 下面我们进行调试与运行程序, 我们发现实验没有完全成功,我们想实现从右往左循环,但事实上循环方向相反,我用 ai 查查原因, 我们告诉 ai 工具,我想实现指示灯从右往左循环点亮,但实验现象是从左往右循环,请帮我分析原因。 接下来在 ai 工具的帮助下,我们进入左右循环的逻辑修改步骤。最后实验测评获得成功,实验成绩从八分变成了满分十分。 好了,以上就是今天课程的全部内容,感谢大家的认真聆听,希望你们对流水灯的 ai 辅助编程有了更清晰的认识。 如果在座的各位有任何问题,欢迎随时交流,愿大家都能在今后的编程实践中不断进步,动手制作出属于自己的智能作品,谢谢大家!
