找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3826|回复: 4
打印 上一主题 下一主题
收起左侧

(最新版)基于51单片机汇编语言的波形发生器设计文档

[复制链接]
跳转到指定楼层
#
ID:417927 发表于 2019-1-5 15:15 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
1
基于单片机原理的波形发生器
摘要:
本系统采用单片机 C8051为控制核心 ,输出数字量 ,然后由 DAC0832 把数字量转
换成模拟量 ;但是输出的是电流 ,需要用运放 (OP07),把电流转换成电压量。显示利用的
是 LCD1602 的液晶,显示其波形,幅值。按键应用的是独立按键,用来波形的切换,
幅值,频率的调解。其运算核心,我们通过 MATLAB 对正弦波,三角板,正弦波进
行采样,得到一组组数据,然后同过数组存储;利用中断对数组进行扫描。其频率的
调解就是调节其中断间隔的时间,幅值就是调节其数字的大小(同时乘以某个小于 1
的数)。为了波形的合成,我们采用的点的个数都是 20个。
一、题目要求及分析
设计任务:设计制作一个波形发生器,该波形发生器能产生正弦波、方波、三角
波和由用户编辑的特定形状波形。
示意图如下:
图 1 设计要求图
设计要求:
1.具有产生正弦波、方波、三角波三种周期性波形的功能;
2.用键盘输入编辑生成上述三种波形 (同周期) 的线性组合波形, 以及由基波及其
谐波( 5 次以下)线性组合的波形。
3.具有波形存储功能。
3
4.输出波形的频率范围为 100Hz~20kHz(非正弦波频率按 10 次谐波计算);重复
频率可调,频率步进间隔≤ 100Hz。
5.输出波形幅度范围 O~5V(峰—峰值),可按步进 0.1V(峰—峰值)调整。
6.具有显示输出波形的类型、重复频率(周期)和幅度的功能。
7.增加红外配置功能(串口配置程序或其他方式)
二、总体系统方案设计
题目要求实现的任务是设计并制作一个函数信号发生器,能够产生正弦波、 方波、
三角波,要求不用 DDS 和专用的波形产生芯片,频率范围在 1Hz~1MHZ 可调,在频
率范围为 1HZ~10KHz 时,步进不大于 10Hz 在频率范围为 10KHz~1MHz 时,步进不
大于 100Hz,并且电压范围在 0~5V 可调,步进为 0.1V,能够实时的显示波形的类型
及其频率和幅值。现在对以下方案进论证和验证。
2.1 总体设计思路
根据题目的要求,经过仔细的考虑各种要素,制定了整体方案:以 AT89C51 单片
机为控制核心, P0 口接 DAC0832 信号输入并进行数模转换, P1 口接矩阵键盘, P2
口接液晶显示器 LCD1602,由程序控制 P0 口产生波形(分别是正弦波、方波、三角
波),再由按键及按键次数控制产生波形的种类及频率和幅值在一定范围内可调, 并且
能够按任意键实现波形频率和幅值的设定 (不通过步进按键设定来控制) 。由运放 OP07
实现 DAC0832 输出电流到电压的转换,即实现数字信号到模拟信号的转换。在 LCD
上实时的显示波形的频率和幅值,波形在示波器上产生。其波形的存储方式,我们通
过按键确定,一旦按键按下后,就把当时的波形对应的参数存储起来,例如幅度值,
频率值等参数。波形的合成:为了波形的合成,我们在采样的时候,对正弦波,三角
波,方波都只取乐 20 个点;因为点越少,其频率达到的值就会越大;合成时就是对幅
值点进行一个叠加后赋给 DAC0832 输出一组波形。 红外,通过外部中断高低电平的延
时的时间来进行解码。
2.2 总体框图
本系统总体框图如图 2 所示:
4
图 2 系统总体框图
2.3 信号发生部分
方案一:采用模拟分立元件或单片压控函数发生器,可以产生正弦波、方波、三
角波,通过调整外部元件可以改变输出频率, 但采用模拟元器件由于元件分散性太大,
因而产生频率稳定性较差,精度低,地抗干扰能力低,成本高,而且灵活心性较差,
不能实现任意波形以及波形运算输出等智能化的功能。
方案二:采用锁相式频率合成方案,锁相式频率合成一个高稳定度和精确度的大
量离散技术,他在一定程度上解决了既要频率稳定精确又要频率在较大的范围内可调
的矛盾,但是频率受 VCO 可便频率范围的影响, 高低频率比不可能做的很高, 而且只
能产生正弦波或方波,不能满足任意波形的要求。
方案三:采用单片机和数模转换 DAC0832 实现波形的产生。波形的产生是通过
AT89C51 执行方波波形程序,向 DA 转换器的输入端按一定的规律发生数据,从而在
DA 转换电路输出端得到相应的电压波形。在 AT89C51 的 P1 口接矩阵按键,通过软
件编程来选择波形、幅值、频率,每种波形对应一个按键,此方案原理简单,实现起
来比较容易。
经比较,方案三能够更好的实现题目的要求,三种波形的产生可有程序控制,并
通过按键选择波形的输出,在示波器上显示波形。波形的周期与频率步进也可以用程
序控制,具有线路简单、结构紧凑等优点。在本设计的基础上,加上 LCD 显示器,则
可以通过按键设定波形频率,并在 LCD 显示频率、幅值电压。输出的波形稳定,精度
5
高,滤波好,抗干扰效果好,连接简单,性价比高。综上所述,我们选择第三种方案。
2.4 显示部分
方案一:数码管显示,由于本题要求实时的显示输出信号的幅度、频率,而数字
不能显示字符。
方案二:LED 点阵显示, LED 点阵显示虽然能够显示数字和字符,但是显示的效
果不好,而且不易编程。
方案三: LCD 液晶显示, LCD 液晶显示不但能显示字符和数字,而且效果较好,
且容易实现。
2.5 按键部分
方案一:采用独立按键,他的按键的数目比少,但是它的结构简单,方便操作,
执行效率高等优势。
方案二:采用矩阵键盘, 它以较少得 IO 口实现了按键的功能, 随之其操作比较复
杂。
经对比,由于我们需求的按键比较少,但是对执行的效率比较高,所以采用独立
按键。
三、硬件电路
本系统由单片机、波形转换( DA)电路、显示接口电路、键盘电路、电源电路、
串口电路等六部分组成。电路图如图 3.1 所示:
6
图 3 硬件电路原理图
3.1 功能与基本原理
功能:形成扫描码、键值识别、案件处理、参数设置、字符设置等形成液晶显示
波形的类型及频率和幅值;通过定时器 0 产生定时中断,形成波形的数字编码,并输
出到 DA 接口电路和显示驱动电路。
AT89C51 外接 12M 晶振作为时钟频率, 并采用电源复位设计。 复位电路采用上电
复位,其工作原理是,当通电时,电容两端相当于短路,于是 TST 引脚为高电平,然
后对电容充电。 RST 端电压慢慢下降,降到一定程度,即为低电平,单片机开始工作。
产生方波程序思路:对于小于 100Hz 的频率,根据定时器溢出时间 1us,将频率值换
算为定时器溢出次数, 当达到规定的次数时, 将输出管脚的状态取反达到方波的产生;
7
对于大于 100HZ 的频率,直接根据频率值设置其定时溢出的时间, 当溢出时间达到时,
将输出管脚取反达到方波的产生。 产生三角波程序思路: 要产生峰值电压为 5V 的三角
波,一个周期需要定时 510 次,由此便可以计算出每次定时溢出的时间,再将每次定
时的电压加权便可以达到三角波的波形;产生正弦波程序思路:给正弦波的一个周期
设定 table 表,由 20 个数据,相当于每个周期定时 255 次,则每次定时溢出的时间便
可计算出,每个点的电压加权便可得到正弦波的电压,即,形成正弦波。
3.2 资源分配
软、硬件设计是比不可少的,为了满足功能和指标的要求,资源分配为:单片机
用 12MHz 晶振, P0 口与 DAC0832 相连;P1 口接矩阵按键,实现频率、幅值以及波
形的选择; P2 口接 LCD1602 液晶显示器,实时显示波形的频率、幅值、类型。
3.2.1 显示接口电路
功能:驱动 LCD 液晶显示、扫描按钮。
由 LCD1602 液晶显示器和矩阵按键组成。 当某一按键按下时, 扫描程序扫描到之
后,通过 P2 口将数字信号发送到 LCD1602,LCD1602 液晶专门用于显示字母、 数字、
符号等点阵式 LCD ,其外接电压时 5V。扫描利用软件程序实现,当某一按键按下时,
扫描立即检测到,随即调用子程序,执行相应的功能。其与单片机连接如图 4 所示:
图 4 显示部分电路图
8
3.3 波形转换( DA)电路
功能:将波形样值得编码转换成模拟值,完成波形的输出。
由一片 DAC0832 和 LF356 运放组成。 DAC0832 是一个具有两个输入数据寄存器
的 8 位 DAC 。目前生产的 DAC 芯片分为两类,一类芯片内部设置有数据寄存器,不
需要外加电路就可以直接与微型计算机接口。另一类芯片内没有数据寄存器,输出信
号随数据输入线的状态的变化而变化,因此不能直接与微型计算机接口,必须通过并
行口与微型计算机接口。 DAC0832 是具有 20 条引线的双列直插式 CMOS 器件,它内
部具有两级数据寄存器,完成 8 位电流 DA 转换,股不需要外加电路。 DAC0832 是电
流输出型,示波器上显示波形,通常需要电压信号,电流信号到电压信号的转换可以
用运算放大器 LF356 实现。
单片机想 DAC0832 发送数字编码, 产生不同的输出。 先利用采样定理对各种波形
进行抽样,然后把各种采样值进行编码,收到的数字量存入各个波形表,执行程序时
通过查表的方法依次取出,经过 DA 转换后输出就可以得到波形。假如 N 个点构成波
形的一个周期,则 DAC0832 输出 N 个样点值后,样值点形成运动轨迹,即,一个周
期。重复输出 N 个点后,成为第二个周期。利用单片机的晶振控制输出周期的速度,
也就是控制输出的波形的频率。这样就控制了输出波形的及其幅值和频率,例如:正
弦波,取 20 个样值点。具体连接的电路图如图 5 所示:
图 5DA 转换的电路连接图
9
3.4 红外电路
图 6 红外电路
红外的工作原理: 51 单片机对遥控的解码和我们前面所讲的串口并口通信不同,
他不是单纯的用高电平代表 1,低电平代表 0。这一点大家要从思想上面转变过来。他
是发送一连串的数据帧,这个数据帧就是一连串的二进制代码,单片机通过区分高电
平的持续时间来区别红外编码的。 我们就以 HC6800 单片机上的红外接头为例来说明,
当高电平的脉冲宽度为 1.12ms的时候单片机认为它为 0,当高电平的脉冲宽度为 2.25
的时候单片机认为它为 1。单片机是通过判断脉冲的宽度来得到信息位为 0 还是为 1
的。当我们按下遥控器的按键时,遥控器将发出如图 2 的一串二进制代码,我们称它
为一帧数据。根据各部分的功能。可将它们分为 5 部分,分别为引导码、地址码、地
址码、数据码、数据反码。遥控器发射代码时.均是低位在前。高位在后。由图 2 分
析可以得到.引导码高电平为 4.5ms,低电平为 4.5ms。当接收到此码时.表示一
帧数据的开始。单片机可以准备接收下面的数据。地址码由 8 位二进制组成,共 256
种.图中地址码重发了一次。 主要是加强遥控器的可靠性. 如果两次地址码不相同. 则
说明本帧数据有错.应丢弃。不同的设备可以拥有不同的地址码.因此。同种编码的
遥控器只要设置地址码不同,也不会相互干扰。 。在同一个遥控器中.所有按键发出的
地址码都是相同的。数据码为 8 位,可编码 256 种状态,代表实际所按下的键。数据
反码是数据码的各位求反,通过比较数据码与数据反码.可判断接收到的数据是否正
10
确。如果数据码与数据反码之间的关系不满足相反的关系.则本次遥控接收有误.数
据应丢弃。在同一个遥控器上.所有按键的数据码均不相同。在图 2 中,数据码为十
六进制的 0CH,数据反码为十六进制的 0F3H(注意低位在前 ).两者之和应为 0FFH。
3.5 复位电路
这种复位电路的工作原理是:单片机的复位电路在刚接通电时,刚开始电容是没
有电的,电容内的电阻很低,通电后, 5V 的电通过电阻给电容进行充电,电容两端的
电会由 0V 慢慢的升到 4V 左右(此时间很短一般小于 0.3 秒), RC 构成的微分电路
在上电瞬间产生一个微分脉冲,其宽度大于两个机器周期, 89C51 将复位。正因为这
样,复位脚的电由低电位升到高电位,引起了内部电路的复位工作, RST 端电压慢慢
下降,降到一定电压值以后,即为低电平,单片机开始正
常工作(这是单片机的上电复位,也叫初始化复位);当按下复位键时,电容两
端放电,电容又回到 0V 了,于是又进行了一次复位工作(这是手动复位原理)。
图 7 复位电路
3.6 外部时钟电路
图 3 采用 11.0592MHz 的晶振和两个 22pf 的电容组成时钟电路部分
图 8 外部时钟电路
3.7 LCD 显示部分电路
为了节约成本,采用 1602来作为显示器,用独立按键来控制不同的显示,能完成
基本的显示功能。
图 9LCD 液晶显示电路
3.8 电源部分
本电源设计了两个接口,方便不同接口的电源接入,并且在电源部分加上滤波电
容,起过滤接入电源的杂波的作用,为了电路中得到 +12V、-12V 和+5V 的直流工作电
压,用变压器变压后再通过芯片和电容设计出所需要的电路。
11
图 10 电源电路
3.9 独立按键部分
图八为用独立按键来控制不同的输出波形
图 11 独立按键
3.10 串口通信模块
图中通过 MAX232 进行 TTL 电平和 232 电平转换,从而单片机和上位机之间通
信提供通道。
图 12 串口通信电路
12
通信电路的目的就是让通信双发的电平匹配, 单片机用的是 TTL 电平,上位机的
串口用的是 232 电平。 TTL 电平的逻辑 1 的电压范围是 +3.3V 到+5V,逻辑 0 的电压
范围是 0 到+3.3V;232电平的逻辑 1 的电压范围是 -15V 到-5V,逻辑 0 的电压范围是 +5V
到+15V。因此设计串口通信电路就是让这两种电平统一。
四、软件设计
主程序和子程序都存放在 AT89C51 单片机中。 主程序的功能是: 开机以后负责查
键,即做出键盘扫描及显示工作,然后根据用户所按的键转到相应的子程序进行处理。
子程序的功能有:延时子程序、中断程序、显示子程序、按键子程序,按键子程序中
有任意频率的设置的数字键( 0~9)及确定键、幅值和频率的加和减键、幅值频率的转
换键、波形的转换键等共 15 个键。主程序的流程图如图 4.1 所示:
完成全部硬件和软件过后,将程序下载到单片机中进行测试,通过反复测试,反
复的修改函数的功能,同时完善硬件的功能,使系统达到最优控制。
4.1 程序流程图
13
图 13 程序流程图
4.2 LCD 显示流程图
图 14 LCD 显示框图
五、系统仿真
5.1 仿真电路图
通过 Proteus 软件和电路原理图绘制出如下仿真电路图,对程序和电路功能进行
测试
图 15 proteus仿真电路图
5.2 输出波形图
将编写好的程序下载到单片机中进行仿真,通过反复测试,反复的修改函数的功
能,使系统输出如下波形:
14
图 16 正弦波
图 17 方波
图 18 三角波
图 19 正弦波、方波、三角波三种波形叠加后的波形
15
六、硬件和软件测试
6.1 硬件调试
整个硬件调试过程基本顺利,由于采用了分单元模块制作,各个单元电路工作稳
定,给调试工作带来很大的方便。
放大模块部分在实物模拟时,出现发送信号不稳定、跳变的问题,经过仔细的检
查,电路连线路劲和线路连接问题,最终发现电路连接是出现连接未牢固的问题,从
而得以解决。
6.2 软件调试
虽然对于单片机的变成较熟悉,但是还存在一些问题,主要有以下问题:
(1)在写调幅值的程序时,按照自己的想法写好,下载带单片机中,发现,每按
一次键,幅值一次性增大到 5V 或者一次性减为 0V,经过对程序的分析得知,当按下
键时,程序循环很多次,为次添加一条键按下时死循环的语句使每次按下键幅值加一
次后的只保持住,从而解决了问题。
(2)当幅值和显示调试成功后,写调频程序时,在硬件电路中调试时发现,三种
波形融合到一起出现, 在经过添加定时器中断的方法, 结果使 P0 口不能够输出模拟信
号,经过努力,最后终于解决了这个问题。
(3)由于 AT89C51 本身性能的问题,而且硬件方面又没有用倍频电路,产生的
三角波和方波的频率没有达到 1MHz ,只达到 2KHz,但是方波达到了 1MHz 。
七、设计心得
本次课程设计,我系统电路的主要设计,在做课程设计的时间了我学到了很多东
西,总的来说有如下收获:
(1)通过对电路的设计,对 51 系列单片机的原理和功能有了进一步的了解,学
到了更多的电路知识,如复位电路的原理,晶振电路的作用,旁路电容的作用,上拉
电阻的功能, 串口通信电路, 熟悉了 ULN2003 芯片的原理和功能,认识了温湿度传感
器 DHT21 ,并且能对其进行应用。
(2)通过原理图和 PCB 图的绘制,学会了 AltumDesigner 软件的使用,并且能
16
用它完成一些简单的电路设计,并且对元器件的封装有了一定的了解和认识。
(3)通过元器件的购买和电路板的焊接,增强了自身的实践动手能力,对电路原
理的应用有了更深刻的认识。
(4)在测试阶段,尤其是在硬件电路的检查阶段,有很深的体会,有时候一个简
单的错误就有可能造成电路无法正常工作,通过找错排错,更加熟悉了电路的原理和
51 单片机的工作原理。
(5)通过本次课程设计,我更加深刻的认识到团队合作的重要性,小组成员分工
合作,是设计成功的关键,只有大家团结一致,才能更快更好的完成任务,但是从本
课程设计中,我也看到了自身还存在许多不足,在实践动手能力方面比较弱,对一些
电路知识掌握得不是很好。
八、参考文献
[1] 童诗白,华成英 . 模拟电子技术基础 〔M〕. 北京: 高等教育出版社, [2]
潘永雄,沙河,刘向阳 . 电子线路 CAD实用教程〔 M〕. 西安:西安电子科技大
学出版社, 2001.13-118.
[3] 张毅刚,彭喜源,谭晓昀,曲春波 .MCS-51单片机应用设计 [M]. 哈尔
滨:哈尔滨工业大学出版社, 1997.53-61
九、
致 谢
本次毕业设计共历时两个多月的时间,在各位老师和同学们的关心帮助下才
得以顺利完成。在这段时间里,不仅大大提高了我的实践经验,也使我学到了许多书
本上不曾接触的只是,开拓了视野,增广了知识面,醉重要的是学会了如何利用信息
资源帮助自己寻早资料, 提高了自己的徐学能力。我对本课题的内容本来知道的很少,
经过了这次的学习和知道老师的悉心教导,现在已经对它有了深刻的认识,虽然无法
达到专业水平,但也是有了巨大的收获,感觉自己受益匪浅。
在论文完成之际,我首先谨向在我做毕业设计期间给予我无微不至的关怀、诲人
不倦的老师致以崇高的敬意和真诚的谢意;起床对朝夕相处的同学和在毕业设计期间
给予我支持和帮助的朋友送上我深深的谢意!
17
十、附件
源代码
JUCHI EQU 50H
SANJI EQU 51H
FANGB EQU 52H
TIXIN EQU 53H
KU EQU 55H
ORG 0000H ; 程序入口
AJMP MAIN ; 指向主程序
ORG 0003H ; 主程序入口地址
AJMP INTT0 ; 指向按键中断程序
ORG 0030H ; 中断程序入口地址
MAIN: ; 主程序
MOV P2,#00H ; 将 P2口初始化为 0
SETB EA ; 开总中断
SETB EX0 ; 开启外部中断 0
SETB IT0 ; 将外部中断 0 设置为下降沿有效
MOV DPTR,#00FFH ; 设置输入寄存器地址
MOV JUCHI,#00H ; 初始化
MOV SANJI,#00H
MOV FANGB,#00H
MOV TIXIN,#00H
;***************************************************
START:
MOV A,KU ; 将键码送累加器 A
CJNE A,#00H,W1 ; 将累加器 A 和 00H 比较,如果相等,则 00 键按下
顺序执行,否则跳到 W1再判断 01键是否按下
MOV SANJI,#00H ; 屏蔽其他波形
MOV FANGB,#00H
18
MOV TIXIN,#00H
AJMP JCB ; 跳转到锯齿波形
W1:CJNE A,#01H,W2 ; 判断 01 键是否按下
MOV JUCHI,#00H ; 屏蔽其他波形
MOV FANGB,#00H
MOV TIXIN,#00H
AJMP SJB ; 跳转到三角波形
W2:CJNE A,#02H,W3 ; 判断 02 键是否按下
MOV TIXIN,#00H
MOV JUCHI,#00H ; 屏蔽其他波形
MOV SANJI,#00H
AJMP FB ; 跳转到方波
W3:CJNE A,#03H,W4 ; 判断 03 键是否按下,没有按下,跳转回去继续循环扫描
MOV JUCHI,#00H ; 屏蔽其他波形
MOV SANJI,#00H
MOV FANGB,#00H
AJMP TXB ; 跳转到梯形波
W4:AJMP START
;**********************************************
INTT0: ; 中断程序
;*********** 键盘扫描子程序 KEY*****************
KEY:ACALL KS ; 调按键查询子程序,判断是否有键按下
JNZ K1 ; 有键按下,转移 WEI1 跳转
ACALL DELAY ; 无键按下,调延时程序去抖
AJMP K4 ; 继续查询按键
;*********** 键盘逐列扫描程序 ***********************************
K1:ACALL DELAY
ACALL KS ; 再次判别是否有键按下
JNZ K2 ; 有键按下,转移
19
AJMP K4
K2:MOV R3,#0FEH ; 首列扫描字送 R3
MOV R4,#00H ; 首列号送 R4
K3MOV A,R3
MOV P2,A ; 列扫描字送 P2口
MOV P1,#0FFH ; 初始化 P1口
MOV A,P1 ; 读取行扫描值
JB ACC.0,L1 ; 第零行无键按下转查第一行为 1 跳转
MOV A,#00H ; 第零行有键按下,行首键号送 A
AJMP LK ; 转求键号
L1:JB ACC.1,NEXT ; 第一行无键按下,转查下一列
MOV A,#03H
AJMP LK ; 键扫描结束,返回
;************************************************************
NEXT:
INC R4 ; 修改列号
MOV A,R3
JNB ACC.2,KEY ; 三列扫描完返回按键查询状态
RL A ; 未扫描完,改为下列扫描字
MOV R3,A ; 扫描字暂存 R3
AJMP K3 ; 转列扫描程序
LK:ADD A,R4 ; 形成键码送 A
MOV KU,A
PUSH ACC ; 键码入栈保护
;**********************************************
K4:
ACALL KS ; 等待键释放
JNZ K4
POP ACC ; 键释放,弹栈送 A
20
RETI ; 中断返回
;********** 按键查询子程序 **************************************
KS:MOV A,#00H
MOV P2,#00H ; 全扫描字送 p2 口
MOV P1,#0FFH
MOV A,P1 ; 读入 P1口状态
CPL A ; 变正逻辑,高电平表示有键按下
ANL A,#0FH ; 屏蔽高四位
RET ; 子程序返回
;**************** 锯齿波***********************
JCB:
MOV A,JUCHI ; 转换初值
WW:MOVX @DPTR,A ;DA转换
INC A ;A 自加 1
NOP ; 延时
CJNE A,#255,WW ; 判断 A是否加到 255,若没有返回到 WW继续加
MOV JUCHI,A
AJMP START
;****************** 三角波 ********************
SJB:
MOV A,SANJI ; 转换初值
EE:MOVX @DPTR,A ;DA转换
INC A
NOP
CJNE A,#255,EE
DEC A
QQ:MOVX @DPTR,A
DEC A
NOP

(最新版)基于51单片机的波形发生器_毕业论文.pdf

727.56 KB, 下载次数: 56, 下载积分: 黑币 -5

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

地板
ID:663806 发表于 2020-6-6 15:01 | 只看该作者
程序不完整的
回复

使用道具 举报

板凳
ID:669699 发表于 2019-12-24 14:28 来自手机 | 只看该作者
朋友?博主,有图吗?文件
回复

使用道具 举报

沙发
ID:634305 发表于 2019-11-7 00:01 | 只看该作者
图呢?
回复

使用道具 举报

楼主
ID:501228 发表于 2019-11-6 23:09 | 只看该作者
强,膜拜
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表