粉丝196获赞480

今天讲讲如何向客要总导入 stc 单面机型号。当客要安装完成后,新建一个工程, 会发现单片机型号选择列表中找不到 s t c 单片机。因为 s t c 单片机是国内厂商生产的,而 care 是纯纯的外国货, 所以开药中没有预知 stc 单片机型号。那怎么解决这个问题?其实 stc 生产厂家早就想到了,下面就用厂家提供的方法向开药中导入 stc 单片机型号。先关闭开药, 然后打开 stc 厂家提供的扫路工具 rsp, 这个工具其实不只是用来扫路程序,还集成了许多其他的 功能。在 care 仿真设置标签卡中有一个添加型号和头文件的按钮,单击这个按钮, 然后选择 k l 安装目录中的 c 五幺目录,再单击确定按钮,这样就完成了 s t c 单面积型号的导入。是不是很简单?再次打开 k l 新建一个工程, 现在这里的下拉列表变成可用,单击它会发现里面已经有了 s t c 单面机的选项,选择 s t c m c u, 然后下面的列表框中就罗列了 s t c 单面机的所有型号。选择学习版 s t c 八 h k 零八系列就可以开始学习版的编程练习了。下期视频介绍怎么新建一个单面机工程,并点亮 led 灯。好,今天的视频就到这里,谢谢大家观看,喜欢点赞加关注!


单片机和电脑串口通信大致需要解决四个问题,单片机和电脑如何连接?单片机串口模式以及波特率设置。单片机串口发送、接收数据、程序编写、 三位机软件的创口设置。那么第一个问题就是单片机和电脑如何连接。第一种方法就是使用电脑的 rsr 三二接口,一般是这种 db 九接口。单片机和电脑的 rsr 三二接口是不能直接相连的,因为单片机是 tdl 电瓶, 而 s 二三二接口是负逻辑电瓶,无论是电压还是电瓶逻辑都不允许直接相连。一般需要使用二三二接口芯片,像 max 二三二 s p 三二三二 s t c 三二的实验箱使用的就是 s p 三二三二芯片。单片机串口连接芯片的 m c, u, r x 和 t x, 实验箱的 d b 九接口,连接芯片的 p c, r x 和 t x, 然后电脑的 d、 b 九接口再和实验箱的 d、 b 九接口相连。第二种方法,使用 usb 转串口芯片,当面积串口连接转换芯片的 r x、 d 和 t x d, 然后和电脑 usb 相连。 第三种方法使用下载器连接,下载器连接电脑后会自动生成一个或多个串口。单片机连接下载器,这里使用的是 stc 开源的 usb 转双串口下载器,它可以提供两个串口,一个用于下载,另一个可以用于调试。 第二个问题,单片机串口模式波特率的设置。单片机的波特率是由定时器作为波特率发声器,不同的串口对应不同的定时器,像串口一可以选择定时器一和定时器二作为波特率 发声器。手册上不建议使用定时器一作为波特律发声器,串口二对应定时器二,串口三对应定时器二、定时器三、串口四对应定时器二、定时器四。 波特率具体的设置还需要根据实际使用情况将串口设置为不同的模式。不同模式时对应不同波特率的计算。像串口一和串口二可以设置为四种模式,串口三和串口四可以设置为两种模式。 先看创口一和创口二。模式零同步移位创新方式,当设置为模式零时,创口工作在同步移位计算器。模式。 这个模式并不是用于串口通信,而是配合移位计算器实现串口转并口或者并口转串口。模式一,可变波特率八位数据方式模式一是最常用的串口通信模式, 适用于双击通信,不带教验位的场景。模式一的一帧数据为十位,一位起始位,八位数据位,数据位低位在前和一位停止位,并且波特率可变,可以根据需要设置波特率。 模式二,固定波特率九位数据方式。模式三,可变波特率九位数据方式。模式二和模式三适用于双击通讯并且带教验位的场景,或者用于多机通讯。模式二和模式三,一帧数据为十一位,一位起始位,八位数据位, 一位可编程位,也就是第九位数据和一位停止位。这里的第九位数据一般用作较硬位或用于多区通讯时的地指针标志位。对于模式二,他的波特率是固定的,只能是系统频率的六十四分频或三十二分频。对于模式三,他的波特率是可变的, 可以根据需要设置波特率。串口三和串口四可以设置为两种模式,模式零可变波特率八位数据方式。模式一,可变波特率九位数据方式,模式零适用于双击通讯并且不带交易位的方式。 模式一,适用于双击通讯代交页位的方式,或者用于多机通讯。第三个问题,单片机接收和发送数据程序编写,因为不同模式数据的收发过程不同, 这一期视频主要介绍串口一、串口二的模式一以及串口三、串口四的模式零八位数据模式。无教验位 数据发送的过程。当对 spa 进行写操作时,就开始数据的发送,发送完成后,发送完成标志 ti 之一,并产生一个中断数据接收的过程。当串口的允许接收标志位之一 接收器开始对 r x d 端口信号检测,当 r x d 出现下降炎,就开始接收数据,这个下降炎就是数据的起始位。 当数据接收完成,数据存入十八分钟,接收完成中断标志 ri 之一,并产生一个中断,然后继续检测 xd 端口,准备下一帧数据的接收。第四个问题,尚未机软件串口设置,单片机和电脑串口通讯, 电脑端还需要有上位,借软件来设置串口通讯的参数,处理发送和接收的数据等等。 这里借助 stc isp 的串口助手,单片机和电脑连接以后就会识别一个串口号,在串口助手中选择这个串口号。因为是翼步通讯,那么通讯的双方需要设置为相同的波特率,代码里的波特率是 幺幺五二零零,这里也设置为幺幺五二零零,然后较验位选择无较验停止位移位。下面结合代码看看具体的设置使用的效果就是按 p 三点二按键后,单片机发送字符串 hello word 给电脑, 电脑端发送数字一,单片机 pr 口 led 闪烁三次。串口一的模式设置需要用到串口一控制计算器 sky 的 b 六、 b 七位来设置创口一的模式设置为模式一时, sky 的 b 七位为零, b 六位为一,然后还需要使能创口接收,也就是 b 四位 r 一 n 之一,所以 sky 等于零 x 五零就是将创口一设置为模式一,并使能创口接收。 设置完创口模式后,就需要选择定时器作为波特率发声器, s 一 b r t 等于零,选择定时器 一等于一,选择定时器二,这里选择定时器二作为波特率发声器。波特率对应的定时器装载值可以直接套用公式,代码里也是直接红定义了从装载值 brt, 将 brt 复制给定时器二的高八位和低八位定时器 et 模式,并启动定时器 串口发送字符函数,当串口处于盲状态,就等待发送数据前,将串口盲状态之一发送字符的话,将数据复制给 sbuff 就可以了。 如果是发送制服串的话,就使用制服串指针,将制服串按制服逐个发送。串口发送完数据后,会将发送完成标志 ti 制一并产生中断,在中断函数中清零发送完成标志并清零盲状态。串口接收到数据后会存入十八服中,接收完成标志 ri 字一并产生中断。中断函数中需要清零接受完成标志,然后读取 spart 就可以得到接收到的数据。这里设置了接收一个字符,当接收的字符是数字一,就让 pr 口 led 闪烁三次。 定时器零定时一毫秒,提供一毫秒的节拍,用于按键延时祛抖。当 p 三点二按键按下延时祛抖,然后向电脑端发送字符串 hello word 串口二到四的设置也大同小异,具体设置可以参照代码一百七到一百七十三。代码可以在 s t c 官方论坛下载,搜索布丁局长找到对应的代码即可下载。

由于芯片紧缺,国内好多厂家都转向国内,采用国内厂家的芯片。今天我介绍一下 stc 单片机的程序代码的下载方法。 找到 stcisp 的文件夹,双击打开,首先要安装驱动, 找到 ch 三四零驱动文件,然后双击点击安装 what? 驱动安装成功, 找到 stcisp 下载器软件,双击打开,这个软件是绿色软件,不需要安装。 把下载器插到电脑的 usb 接口窗口号,这里显示 显示创口号就可以了。然后我们算是一个单面题的型号, 我现在使用的是 stc 十五 f 二零四。 然后打开程序文件,找到需要下载的代码,下载的代码的后缀必须为 hex 格式, 然后点击下载 下载器软件,里面的选项,采取默认就可以了。 stc 一五系列的单片机靠锁紧做的,最下边放置开关,下边开关拨到左边,上面的开关拨到右边。 stc 十二 c 五六一六 ad 这个打探机 靠锁紧座的最上边放置开关,下面的开关拨到右边,上面的也是拨到右边。 stc 十一 f 零四 e 这个单片机要从锁紧座上边往下数第三个角,然后从这里开始放置。

上一节给大家介绍了单片机创口对定长数据包协议的解析方法,在实际应用中,有些通信协议呢,他的数据包长度是不定长的,也是不固定的,这就涉及到创口怎样解析不定长的数据包协议 啊,我们还是通过一个实验项目来完成这个讲解啊。实验过程呢,跟上一个比较类似啊,也是要通过创口调试助手给单片机发协议数据 来控制,但面积点亮或者熄灭了某一个 led, 那这次发的数据呢,是不定场的协议包。呃,我们看这里啊,那比如说呢,第一个,如果我发这样一个一串数据呢,他表示什么意思呢?呃,最左侧呢是一个 dollar 符号, 他表示呢,这个数据包开始了,是一个起始符,最右侧呢是一个星号,他表示这个数据包结束了,那因为呢,这个数据包长度是不定长的, 所以呢,在对于这样的数据包,我们就需要一个起始符号和中指符号来界定这个数据包的范围,这和我们前面所讲的那个定长数据包协议呢啊,比如这样的 l e 空格 一或者零呢,它的格式呢就不一样了,那因为你是定长的,那我就能够确切的知道你这里边每一个数据都是什么含义。 但是呢,对于不定场的数据包,我必须首先要知道什么时候是数据包的起始位,什么时候是数据包的结束位。所以呢,需要两个特殊的字符啊,来做一个前后范围的界定。 对于这个里边的有效数据呢啊,下面还是参考这里啊,啊,就首先呢,加了一个 l, 表示控制 led 的 l 后边跟着一串数字,一二三四,就表示我这个数据包呢,要一起控制一二三四这四个灯,然后面再跟一个空格 啊,后面再加一个一,一表示要点亮。那这个数据包的含义就是我要一次把一二三四这四个编号的 led 灯呢都点亮。那再看下边这个协议呢, 那这个协议的数据呢?是啊,还是左侧是刀刀符,右边是信号表示结束,他的数据呢?是 l 二四空格零啊,他的含义就是,那这个数据包呢,我要一次控制编号为二和四的这两个 led, 要把这两个 led 呢熄灭,因为后面是零。嗯,再看第三个,第三个数据包呢,左侧是刀轮,右侧是结束符,然后 l 表示控制 led, 而这后面只有一个数字三,那就是要控制编号为三的这一个 led, 然后跟着一个空格,后面是一,那就表示呢他要点亮 led 三, 那我们通过制定了这样一套应用层的通讯协议呢,就可以通过创口一次性的成批的控制多个 led 的量灭了。那对于这样的一个不定常的数据包协议, 我们该如何进行解析呢?下面我们就编写程序来实现这个解析过程。 呃,程序呢?还是在前面的程序机 主上啊,进行修改。嗯,这里边需要修改的呢,就是 wel 一循环里面的主逻辑。嗯,这个串口中断的处理函数呢,不用修改,因为我们还是把每一个字节呢依次收下来就可以了,把它收在 rx 八分这里面, 那 x 八分呢?这个缓冲区的大小啊,要做一个调整。嗯,上一节课呢,这个是四啊,那么我们这一节课呢,再写四肯定是不够了, 我们要算一下他的最大长度是多少,嗯,或者呢就干脆给他指定一个比较长的这个数值就可以了,这里我写的三十,三十呢,肯定是足够了啊,对于我们这样一个不定长的, 呃,斜一包呢,三十个,自己的缓冲区肯定是能够放得下,那下面我们就在 voe 循环里进行 处理,那处理过程呢?是这样的,我们要仔细看一下,仔细研究一下我们这个不定长的处理包它的格式。嗯,我们发现呢,最左侧的这一个呢,肯定是 刀轮符,表示呢,其实最右侧呢数据都收上来以后呢,他一定会收到一个信号啊,表示数据结束,然后最左侧的下一个呢,肯定是 l, 所以这三个字符呢,其实我们是可以用它来界定后面有效数据的范围的, 同时呢,还可以用他们来判断这个协议包的数据呢,是否有效,或者是否收全了。所以在 v o e 循环中呢,第一句呢,我们可以进行一个判断, 这里呢我们要判断啊,这个最后一个是否是信号, 但是呢,大家请注意看一下这里啊,那这个信号它的锁引值应该是多少呢?当我们通过窗口中断处理函数,将 哎这一个不定长的协议包数据全部收上来以后,当前的 i x 值应该是多少呢?我们来看一下,当收了 第一个到了以后呢, ix 呢?收之前 ix 是零,收完以后 ix 是一,是吧?那一四收完以后,那就是一二三四五六七八九, x 呢应该是九,那 所以你到这个信号它的值是多少?零一二三四五六七八十八。所以呢最后这一个信号的它的所以呢应该是 i x 减一。 好了,刚收到这个数据包,我们进行判断,首尾这呃三个字符都满足这样一个条件以后呢,我们就认为这个数据包呢成功收上来了,收全了,下面可以对中间的数据呢 进行解析了。那解析的过程呢?我们看首先要用一个呃变量啊,变量 i 指向 这个数据的第一个位吧,也就是指向一这个位置,那他的所以是多少呢?呃,对于每一个数据包来说呢,这个第一个数据的这个位置呢都是零一二,都是二。呃,所以我们这里边呢就呃将啊,在这里要定了一个流水变成 i, 将 i 呢指定为二, 好,指定为二。以后呢,现在就相当于有一个呃指针,他其实不是指针啊,就是一个变量就指向了这个位置, 下面我们从这个位置开始呢,就依次向下解析,解析每一个字符,解析到这,然后再往前解析一个呢, 发现他是一个空格,那就不用再解析了。所以这里边呢我们可以用一个循环,因为我们不知道这个数据有多少个字符,他可能是四个,可能是一个,可能是两个,可能是三个。嗯,所以我们要用一个循环,一直循环,判断到这个 i 指向的这个呃数据呢是空格的时候就停止了, 那在程序里呢,我们写一个 well 循环, 当他没有遇到空格的时候呢,我们就不停的对他解析啊,直到他遇到空格,我们就认为呢前面这串数据呢就解析完了,就解析到这啊,现在呢,我们要做的是 解析数据,解析到换一个颜色啊,解析到这个位置啊,先解析 led 的编号,就是那么这一个数据,这一次数据包上要控制的是哪些 led? 先把这个信息解析出来 好,当 i 等于二的时候,如果,如果 r x buffer i 就是 r x buffer 二啊,它的值是一,表示呢要控制 l e d e 这个灯,那是控制它是亮还是灭的,同时要看这个 v 啊,它的值是零还是一,那这个位它的锁眼是多少呢?那刚才呢,我们发现啊,这个星号它的锁眼呢是 i x 啊,减一, i x 减一呢,指向的星号,那星号前面这个是零还是一的这个位呢?它的锁眼就是 i x 减二呗 啊,所以这个是 i x 减二。那我们对于,呃,当这个第一个减尺到一个一以后,那对于一是点亮还是熄灭呢?我们还要同时看一下后面这个值是什么,那这个值呢,我们在这里写啊, 好,写到这里呢,我们就完成了对第一个啊这个一的解析, 那成语写到这里呢?对,呃,这个第一个位的这个元素解析是否就结束了呢? 其实还没有结束,咱们可以看一下第二个数据包,那这个数据包呢,我们发现呢,他的 l 后面紧跟的这个不是数字一啊,他是数字二,所以对于我们这个程序来说呢,在这里你想判断他是不等于一呢,就没有判断成功,那他除了一,还有可能是二,还有可能是三,还有 有可能是四啊,所以我们要把这四种情况呢都进行判断 好了,那么这里呢,我们把这四种情况啊都进行了一个判断,呃,先判断他是不是一,如果不是一呢,再判断他是不是二,如果不是二,判断是不是三, 三不是三,再判断是不是四。那注意呢,整个这些个 if 这四个分支呢,都是用来判断这第一个数据的,因为第一个数据呢就有四种情况,下面还要再判断第二个数据 啊,再判断第二个数据。那怎么判断第二个数据呢?就是 i 加加呗,将将变成 i 加一,让它指向下一个元数。 好,我们这里写上加加 i 啊,加加 i, 加完以后呢,回到妙循环继续往下判断。 那当这个微小循环执行到遇到了这个空格以后呢,说明前面的这些都解析完了,这个时候呢,我们整个这个一个数据包的协议呢也就处理完了,处理完以后 呢,一定要想着对缓冲区进行清零操作。 好,现在呢我们程序啊就写完了,下面我们编译下载程序编译,呃,通过按一下复位键。 好,程序啊,下载成功了,下面呢我们打开窗口,根据我们协议的格式啊,我们先随便写一个数据啊,首先呢是 起始位 dollar, 然后是大写的 l, 嗯,我们要把四个灯都点亮,那就是一二三四,后面跟一个空格,再跟一个一表示点亮,在最后呢是一个信号表示数据结束, 然后点发送啊,发送前大家注意看呢,这里一定要改成文本模式,这个接收呢可以不改了。呃,这个地方发送要选为文本模式发送,然后点发送数据。注意看一下这四个 led 灯的状态, 好,发过去以后呢,这四个灯就都亮了。好,下面我们要熄灭第一个和第二个灯,那就把三四删掉。嗯,然后后面跟一个零发出。 哎,第一个第二个就熄灭了。如果要把三四也熄灭呢?那就把三四写在这里,发生数据,三四也熄灭了。如果我们要间隔点亮一三,一三, 后边是一,那就发送数据啊,一三点亮。好,如果再想把二四点亮,发送数据,二四也亮了啊,全部熄灭,一二三四后面卸个零。 好,这些都熄灭了。那这样呢,我们的程序呢,就编写成功了啊。以上呢,就是本节课给大家介绍的单边的串口怎样处理不定常数据包协议的方法。

好,今天就和大家分享一个用 s t c 的一个窗口下载器代替这个 s t l i n k v a 的一个下载器, 这个是属于 s t m 三二的,然后这个是属于 s t c 的,能不能给 s t m 三二的芯片下载呢?咱们看一下啊, 这个就是 stm 三二的, 看一下 看清楚了吧啊,现在可以看清楚了,放大一点看看到没有 s t m 三二 f 一零三十六 t 六 a 缩小看一下啊,这个装的是 s t c 的窗口下载器,我现在要给它下载程序来代替这个 你们肯定不知道还有这种妙用吧,其实这就是一个串口下载的原理。好,插上这个 usb, 这个灯闪烁了,是不是 打开这个 s t n 三二的一个上载器, 是这个红色这个啊,鼠标这里啊,现在打开了, 使用一下这个读器键, 看到没有,然后信息就可以了,有了,注意这个连接串口跟连接 s t c d 是一样的哦, 就是连到他的创口,创口一直接下载好上面让他编整后不觉行,我看一下, 需要一个这个里面的文件啊,是在这里看到没有 h e s 的一个文件,这个是 l d 闪烁的, 然后下载点击开启编程 好,上面这里就编好了,但是他没有闪烁,是不是上面把它改为编程后结形就可以了?编程后结形 你看已经闪烁了,可以吧, s t c 也有这个功能下载器,大家觉得怎么样?欢迎在评论区留言点赞关注建议,谢谢。

大家好,这节课呢我们给大家分享一下,我们最近做了一个风动感应控制器的一个小项目,在做这个项目的时候呢,我们用到了一款单面机,是 stc 幺五 w 四零八 is 这款单面机, 这款单面机呢我们以前呢没有用过,但是呢我们知道他是一个五幺的增强型的单面机,也是以五幺为内核的,是 stc 公司的, stc 公司的这种单面机呢我们并不陌生,我们前期讲通用五幺单面机的时候呢,都是以这个 stc 的单面机为例来给大家做 讲解的,所以呢我们呢也是借助于通用五幺单面机的经验,然后呢来解决这个单面机的一个串口通信。但是呢我们发现出了问题,我们在做这个风度感应控制器的时候呢,用的这款单面机主要是用他的一个内部的 idc, 还不是用他的这个串口,但是呢我们在用到内部 idc 的时候, 我们需要采集数据吗?我们采集数据的时候呢,我们肯定要看一下这个数据的一个对或者不对,那这个时候呢我们这款控制器呢,它并不带显示窗口,那我们又要看我们采集这个数据的一个情况,这个时候怎么办呢?我们一般呢是借助于串形口来做这个相关的一个调试, 所以呢我们就必须呢先把串口进行调通,所以呢我们一开始的时候呢,就先把串口来调了一下,在调串口的时候呢,我们借助于以往通用五幺单面机的经验,我们知道我们前期讲通用五幺单面机的时候,我们在做波特绿的一个信号发生器的时候,串口一的波特绿信号发生器是用定成交接器七一的一个 移出率作为它的波特点信号发动器的,当然了我们的串口呢使用的是工作方式一,这个时候的话呢,我们用了一个 stc 的这么一个助手,我们这个以前给 给大家讲过,对吧?我们呢用的这个助手呢,找到这边的一个啊 photov 的信号发生器, 比如说我们的系统频率呢是十一点零五九二兆,然后呢九六零的波特率,我们是串口一八位数据,然后呢我们一般用定制计算器 t 一的八位自动同感方式作为他的一个波特率的信号发声器,这是我们通用 vldeme 的一个用法 啊,始终的话呢,我们可以选十二 t 或者一 t, 这个都可以,因为这款单面机呢是增强型单面机,但是呢我们用这种方式做了初始化之后,我们发现呢我们这个串孔呢通信并不能成功,也就是发动不了数据,我们呢也接受不了数据, 这个时候呢我们就想到这个是什么问题呢?因为这个地方是用这个助手来配的,应该不会有太大问题,我们对比了一下这个相关的计算器的一些配置呢,发现呢也基本上没有看到太大的问题,这个时候是什么问题到 造成的呢?我们呢就去看这个旗舰手册,当看到这个旗舰手册的时候呢,我们发现这款单面机它内部的话呢,这个串口 到不透气信号发生器他不能用 t 一,为什么呢?因为他的内部这个定制计算器的时候呢,他有两个定制计算器,这个是没有问题的,但是呢他没有 t 一, 他的内部定制计算器呢是 t 零和 t 二,这个呢就不知道这个单面机他当时设计的时候是怎么一个情况,但是呢他首次当中告诉我们呢,他只有两个定制计算器,但是呢一个叫 t 零,一个叫 t 二,也就是说他没有 t 一, 那这个时候呢,你用 t 一作为波特队信号发传器,他当然是不能成功的,对吧?那你是串口就是没办法去通信的,对吧?没办法去通信的,然后呢其他程序呢也是没办法去执行的,这个呢感兴趣的同学可以去试一下。那我们呢接下来就给大家去演示一下。这个时候就说明一个什么问题呢?说明我们在 用这种五幺内核带面机的时候,你在用不同系列的这种增强型带面机的时候,就是现在来讲,大家用的带面机大部分都是五幺内核的增强型的带面机,当然了也有一些非五幺内核的其他厂商的一些带面机, 但是呢如果说你使用的是五幺内核的,但是呢这种单片机你想仅仅是通用五幺的还是不是特别多的,所以呢大部分单片机呢,现在都是做了适当的增强,他既然做了适当增强,那我们在用的时候呢,可能就要把这个手册呢找出来看一看。 比如说像我们这款单面机,我们一开始用的时候觉得啊,他就是一个五幺单面机吗?然后的话呢,也没有去看他的手册,就基于以往的经验啊,直接来用了,但是呢 等我们再出现问题的时候,我就发现,哎,这个单面机内部的定制计算器的一个作为波特六信号发生器的时候是没有 t 一的,他只有 t 零和 t 二,那这个时候呢,作为波特六发生器用了什么呢? 他应该是用的 t 二,这个答案你可以去看他具体的手册,下面的话也会有具体介绍。但是呢,我们在看这个串口通信的时候,这章节的时候,这个章节的串口通信他指的是 st 幺五系列单面机的,有时候整个系列单面机呢,串口通信这一块都在这个里面了,所以呢 你要看它具体的,比如说我们这边利用这个 is 系列,它只有一个串口,而有些单品进来看都是幺五的,但是它有的可能有多个串口,比如说最多的呢,它这个里面支持四个串口,就是这个系列的它支持四个串口, 有的那可能支持两个串口。如果说你需要多串口的,那也要选用 s t t 幺五的,那你要注意一下你到底是选哪一个,对吧?哪一个类型的,具体到哪一款芯片,这个大家用的时候要注意一下,然后他下面举了很多例子,但是这些例子的话呢,有的是用 t 作为波特类信号发生器的,有的呢是用 t 二作为波特类型号发 燃气的。所以呢我们如果说一开始没有去了解具体的芯片型号的话,你可能就会困惑,那到底我在引用代码的时候应该引用哪一个代码呢? 所以呢这个时候呢,我们就要看我们刚才讲的,你要看具体的这个器件手册当中的对他这个选型手册,在选型手册当中的话呢,能够对他内部的资源呢有一个大概的一个了解,这样的话你在用的时候呢可能会更方便一点,对吧?也就是说大家在用的时候呢要注意一下, 那比如说像我们这款台面机,如果说你用这种方式来生成一下,我们来看一下能不能通信成功呢?那我们可以去新建一个工程,我们找到我们这个工程目录,我这边呢新建好了几个文件夹,我们在这个下面呢做一个单目代码, 我们来新建一个工程, 我们把它保存到呢,我们这个 project 这个文件下面我们起一个名字,比如说就叫呆某,只是做一个测试,对吧?然后呢我这边选择这个 cpu, 那我认为呢选择 fcc 的这个怎么加进来呢?你可以用这个工具 选择这个开尔仿真设置,点击这个,然后呢找到你这个开尔的一个安装路径,比如说你这个地方开尔,找到你这个 c 五幺,找到你这个英可露的,然后点击 ok 就可以加进来,我这边已经加过了,对吧?这个地方你可以点在这这边有一个一二三四五六,他告诉你这个步骤怎么做,你按照这个步骤去加,这样的话呢就能够出现这个,我们就可以用 stc 的这么一个投文件了,我点击 ok, 我选择 tc 带面机,这样的话呢我们就不用每次都选五幺带面机,对吧?当然虽然这个也是五幺内核的,但是呢你可以用它自己的这个型号的这个投文件,这样的话呢我们就不需要 在 ig 五幺点 h 的投文件的基础上,自己在用 sfr 定义很多的特殊功能计算器了,我们可以直接引用官方提供的这个投文件,那这个就是这种方法,对吧?我们可以选用这个,我这边用的一个单片机是 stc 幺五的一个四零八的一个 is, 我们找到这个, 然后的话呢我点击 ok, 然后呢我新建一个文本,把它保存到 south 文件夹下面,这个呢就和我们以前讲的是一样的没点 c, 然后呢我要测试串口,所以呢我点击两个新建两个,一个呢是串口的一个点飞, 另外一个呢是串口的一个点 h。 这个文件当中呢我们直接包含的是 s t c 幺五的一个投文件,这个投文件呢在什么位置呢?实际上呢,如果说我们刚才的话,你已经这个把这个投文件给它加进来了,就是说借助我刚才讲的那种方法,我们可以找到 kar 四五幺应可录的下面一个 s t c 的, 如果说你加载进来之后,那这边的话呢会有一个 s t t 的一个同音键,在这里面我们看到有一个 s t 的幺五的,我们可以直接用这个幺五这个同音键了,那我们这边就可以直接用 s t 的幺五, 然后呢我们把它加载进来 啊,把工程设置一下, 然后呢我们点击第一个编译,这个时候呢腰围的通文件可以打开了,可以看到除了通用五幺 d m 一的那么二十一个特殊功能一起之外, 他还会增强了很多单面机的一个特殊功能继承器,可以看到这边的包括一些其他的都会做的适当增强,这样的话我们就不需要自己再用 sfi 去定义了,还要去查手册,这样的话呢我直接包含这个通文件,那这些呢特殊功能计程器呢?这个通文件当中呢?官方帮我们定 好了,我们就可以直接来用了。我们用了串口吗?那像刚才讲的,如果说我们没有注意,还是用通用五幺代名义的那种用法,是吧?没去看手册之前,那我在刚开始写这个代码的时候呢,我会用这个,然后呢选中的是这个定位叫一 t 一的, 然后的话呢这边比如说就用这个吧上口一八位,然后呢定位就是 t 一座位波特定向发动器,然后呢我就生成这个 c 代码,然后把它复制好,把它放在这,然后这个里面呢我要包含自身的同文键, 那这个点 h 文件我要写一下,对吧?那怎么写呢?我就直接借助于这个把它给它改写一下,加上一个边遇处理指令,防止呢我们的一些文件呢被重复包。 i 啊,这里面呢我们要做一个我们刚才写的这么一个初始化函数,对吧?给他做一个声明, 当然了你要包含的是 s t c 幺五这个投文件,因为要用到它的串口的一些特殊功能经营的资源码呢,我们把这个投文件给它包含一下, 然后呢剩下的一些代码的话呢,我们知道我们以前写过了,对吧?比如说发送一个字节啊,发送一个字符串啊,包括我们的重定项,这个呢我们都可以借助于我们以前讲的这个代码,比如说我们以前讲过单面积的代码当中的话呢,有一个串口的,我们找到串口的代码, 那这些呢我们可以直接把它拷贝一下, 只是在修改代码的时候,以前写过的代码都不需要重复写了,只是什么呢?只是这个底层配置,你需要换一个单面镜的时候,你需要重新给他配一下,剩下的这些如果是串口一的,那这些东西都是不需要动的,对吧?啊?这些呢我们要给他做声明,方便呢,我们给他外部文件去调用, 那你只要是跟着我们前面把这个代码敲过的,那这个后期的一些代码的话呢,基本上都是在以前代码的基础上慢慢 来增加了,对吧?那这个时候呢,我们这个地方就做好了,然后当然了我们这个地方还要再包含一个同文件,因为我们想做的是 playlif 的一个同真相, 那我要帮孩子 t t r o 点下去这个同文件,那这个时候我在想用串口的时候呢,我们一般直接用它在这边的话装上这个同文件,然后的话呢我们在这个里面做一个串口的初始化, 我们就可以去测试串口了,对吧?测试串口的时候呢,我们一般呢还可以用到一个这个延时函数,所以呢我把这边的这个延时函数呢也给他考过来,考到我们当前这个工程目录下, 当然 把它加载进来, 包含图文件, 然后呢这个里面的话呢,我们就可以去调用,我们的,比如说发送一个 f 串, 比如说打印一颗字符串,比如说 u i r t test, 然后的话呢我们搞一个延时,当然这个延时呢并不是特别准的吧?我们只是做一个视力, 然后去编译,编译了之后,对吧?然后的话我们就可以把它下载进来试一下,对吧?然后这边呢这地方是插上这个板子,然后的话呢我们去下载打开我们这个软件的一个 pass 文件, 然后的话去下载, 下载之后的话呢,我们可以打开这个窗口。助手, 那我发现这个地方呢,他没有输出任何数据,对吧?没有输出任何数据,那就说我们这个地方呢肯定是有问题的,那基于我们刚才讲的,你看了手册之后你会发现呢,他实际上呢只有 t 二,没有 t 一,所以呢 我们在程序里面这个地方呢,用 t 作为他的波特遇的信号发生器是不行的,对吧?所以呢他串口是不能成功的,串口这边通信不能成功,那我们这个 id 的测试就很难去办了,对吧?因为我们在做不同的代码的时候,肯定是按照模块化一个一个的去测,比如说我需要用到去 测试这个,用这个单品机我需要用的是它的 id 的功能,但是呢我想测试 id 的时候呢,我们这个地方没有显示窗口,或者说我在调试的代码过程当中呢,一般都是用串口来调试 id, 那这个时候呢,我就必须把串口先调通,串口调通我们能够干什么呢?能够借助于 player, 比如说我们在这个地方可以呢用 playerf, 然后呢去打印一个数据,打印什么数据呢?比如说我们可以定义一个, 比如说我们就 的我打一个 id red art, 我能够把这个 id red art 呢借助于串口 打印出来,对吧?我能够把它呢打印出来,这个 id 值 data 呢?我可以随便给它复一个值, 比如说我们这个单元面积呢,他一个十位 id 呢?他这个值的最大范围呢肯定是零到一零二四,比如说我就给他一个这个 四百五十这个值,如果说我这个地方借着串口能把这个 id 的值借着 pdf 把这个值呢能够打印出来, 那我这个时候如果说我用的 id 的时候呢,我只需要把 id 采集的结果传给这个 id 的,那我这个地方呢就能够把这个 id 的结果打印出来了,这样的话我就调试程序的时候我就分布来做嘛,这样的话我就能够判断,对吧?我首先这个串口 这边解决了,那如果说我这边打印的 id 的值和我对应的那个模拟量电压不对应,对吧?模拟电压我们输入这个电压可以拿一些啊专用的设备或者一些稳压源,提供一个专用的一个稳压源作为信号来进行测试,那如果说不对应,那我就去能够判断到底是哪边出现了问题, 对吧?从而呢去定位啊,你的是软件问题还是硬件问题?是 id 的问题还是其他的问题,这样的话呢就能够逐层的去找到你的问题,对吧?然后呢快速的完成开发, 所以呢我们呢要把串口调通,那串口一旦调通,你再把 id 的代码参考着官方给的历程就把它完成了,对吧?那这样的话两者一结合就能够把这个东西做完了,剩下的就是你能说句处理的了, 剩下数据处理这一块就和我们单品一的这一块东西呢就没有太大关系了,对吧?那就是你的你的算法的一个问题了,那这个时候呢串口不通怎么办呢?那我们知道他不能用 用 t 一作为波特顿信号发生器,那我们怎么办呢?我们可以借助于 t 二作为波特顿信号发生器,当然我为什么知道 t 二呢?还是刚才讲的你要通过手册,对吧?我们知道手册当中,或者说你看这那这边他也有一个 t 二,那我们通过这个地方生成复制,我把这边呢给他替换一下, 然后我再编辑一下,然后的话呢,我们呢再给他做一个下载啊,这边有一个警告,这个警告是这个三的 buff 没用,这个我们就不用关心了,然后的话呢,我们再重新给他下载一下啊,我们点击下载, 下载完成之后呢,我们打开窗口助手,那这个时候你可以看到他就可以呢把这个数据打印出来了, 这个时候一旦打印出来,就说明我这个串口调制成功了,对吧?串口没有问题了,我们 pro 的 f 也已经调制好了,对吧?那这个时候呢,我刚才讲了你的 id 的话,你只需要再借助于 id 的程序,那你呢可以把你的 id 的一个采样的结果呢传给这个 id redat, 这样的话呢,我们借助于串口 就可以呢,把这个结果打印到上游击的创口助手,我们就可以看到我们的 id 采样结果的正确与否,从而呢能够排除一些各种各样的问题,对吧?为我们下一步的收据处理做一定的一个准备, 这个呢就是这个串口的一个用法,当然了这个地方主要大家需要注意的就是这个手册当中要注意一下他有几个串口,他这个串口当中的话呢,哪个定制器是作为他的波特利信号发动器的? 是用 t 是用 t 二还是用什么呢?还是用专用的这个波特队的线发生器,大家可以看到这个地方还有一个可以选择的就叫独立波特队发生器, 你用这款单面机的时候,不同型号的你到底选哪一个?那你这个呢要从手册当中呢大概的把它了解一下,这样的话呢,大家在用的时候呢就不会有问题,但实际上你也可以去试,对吧?比如说继续经验, 我 t 一不行,那我就用这个 t 二, t 二不行我就用独立的,那这样的话你也可以去按照我这种方法,对吧?反正也不需要写太多代码,对吧?只需要配这一个东西,剩下这些东西都是以前讲过的,或者你以前积累过的,就不需要重复写,你只需要把这一块借助这个工具,那你就换呗, 哎,那这个不通你就换一个,那个不通你再换一个,那这样哎也能够解决这个解决了之后,关键是解决了之后,那你要反过来把手册再去看一下,这样的话你以后再碰到问题的时候,你就哎立马就能够想起来,否则的话呢你可能会花的时间更长一点。当然了我们这边给大家介绍这个工程经验呢,并不是一个真正的一个 讲这个,我们做这个啊控制器的一个东西,只是呢给大家介绍一下,我们在调节这个轰动控制器的时候,我们需要调查内部 id 的时候,我们需要用到串口,我在用到串口的时候呢,那这个型号的单片机呢?我前面没有用过, 那我们基于以前的五幺单品机的经验呢,或者是通用五幺单品机的经验呢?我们用定力交际一的时候,作为波特利发生器的时候呢,出了问题, 哎,我就想起来要去看手册,所以呢我们这个标题给的是呢要注意手册的重要性,对吧?那就是说我们在用到具体的某一个型号的单片机的时候, 你要主动的把这个型号戴美吉的手册找出来,去看看这个手册当中的对他的内部资源的一个描述,内部有哪些资源,没有哪些资源,这些资源的典型特性是什么?这个呢在手册当中呢都是有一个具体的介绍的,包括我们这个地方,大家可以去看,对吧?当然了 我们这个做这个项目的时候,实际上后面都是把这一块就大概的就看了一下,因为你有有开发经验了,所以呢看这个呢很快,对吧?大概的把它浏览一下啊,这样的话呢,对你的开发的话会 起到一个很好的一个作用,对吧?就是说会少走很多弯路,然后的话会节约开发时间,开发周期。这个呢大家感兴趣的话可以去了解一下这款单面机,如果说你以后用到的话 啊,给大家提个醒,当然了你如果是其他系列的带面机,或包括幺五系列的其他的,但他有多个定型计算器的时候,他可能有的是有 t e 的,有的是有这个啊专门的玻璃心和划痕器的。这个呢大家在用的时候呢可以呢通过这个选型手册大概的去了解一下,然后的话呢再去看他具体的这个 下面这个通信的一个介绍,这个呢它是针对具体的整个系列的,所以呢你在具体型号的时候呢,你还要去看一下,这样的话用起来的话比较方便一点。

好,我们来讲解一下这个网站具体怎么操作,拿到主页以后呢,打开主页,然后打开第二个网站,如果你安装网站软件,直接就可以双击打开,我这里安装的是八点十二或者是八点十一啊,我配的主页里面也是安装包啊, 然后的话这里双击点击, forgive to jerry gregor and michael gregor to get the good they want to go back to the chinese you are doing something, but have to do something kind of to go now。 我们主机要重新啊,主机按键按键以后呢就发送命令给重启重启接手之后呢就控制电机,主机输入按键,其实屏要显示了,可以去电机启动,平是正转反转加减数, 然后的话这里开始启动啊,转完然后这是主机发送命令给重启,重启去控制这个电机上动力了, 从 g 管这个按键作品和显示屏,从 g 就 显示,控制这个啊,从 g 接收主机,通过窗口命令来接收,就控制它了,然后夹就快一点了,这里也要显示了,速度快一点 啊,然后这是卷卷毛一点啊,然后我现在是宋史章,然后这里也是,我去看一下王昭,啊,啊,说伊斯章没看到,这里也是显示的啊。 f, 王昭,嗯, 我们又弄回占着啊,宋史这派的 啊,虽然看显示屏上的啊,也咨询上面。嗯 嗯。哇,这个就是它的具体功能来的,然后的话这个是操作你操作的广料 这个功能啊,这个板凳就讲究到这里。
