单片机自己制作
- 格式:doc
- 大小:873.00 KB
- 文档页数:10
基于单片机制作高频DDS信号发生器在现代科学和电子技术的不断进步下,数字信号发生器(DDS)已经成为了频率控制和生成的重要工具。
尤其是高频DDS信号发生器,其在雷达、通信、电子对抗等领域的应用具有不可替代的地位。
本文将介绍如何使用单片机制作高频DDS信号发生器。
一、DDS技术概述DDS,全称Direct Digital Synthesizer,即直接数字合成器,其工作原理是将数字信号通过数模转换器(DAC)转换成模拟信号。
DDS 技术的核心是相位累加器,它将输入的数字信号的相位进行累加,从而生成新的频率信号。
二、硬件设计1、单片机选择:本设计选用具有高速、低功耗、高集成度的单片机,如STM32F4系列。
2、频率控制字:通过设置频率控制字(FCW),可以控制输出信号的频率。
频率控制字由一个16位二进制数组成,表示了相位累加的步进大小。
3、存储器:使用Flash存储器存储预设的频率波形数据。
4、DAC:数模转换器将存储器中的波形数据转换成模拟信号。
本设计选用具有高分辨率、低噪声、低失真的DAC芯片。
5、滤波器:使用LC滤波器对DAC转换后的信号进行滤波,以得到更加纯净的信号。
三、软件设计1、相位累加器:相位累加器是DDS的核心,它将输入的数字信号的相位进行累加,从而生成新的频率信号。
2、波形查找表:将所需的波形数据存储在波形查找表中,通过查表的方式获取波形数据,可以大大提高DDS的工作效率。
3、控制逻辑:控制逻辑负责处理输入的控制信号,如启动、停止、频率控制字等。
4、通信接口:为了方便远程控制,需要设计通信接口,如SPI、I2C 等。
四、性能测试1、频率范围:测试DDS输出信号的频率范围是否满足设计要求。
2、频率分辨率:测试DDS输出信号的频率分辨率是否达到设计要求。
3、信号质量:测试DDS输出信号的信噪比、失真度等指标是否满足设计要求。
4、稳定性:长时间运行后,测试DDS输出信号的频率是否稳定。
5、远程控制:测试通信接口是否正常工作,可以通过计算机或者其他控制器对DDS进行远程控制。
用单片机AT89S52制作465KC方波发生器用单片机制作465KC中频方波发生器是一项很好的实验,也是一项有一定实用价值的小制作。
它可以研究体验AT89S52在定时器T2下的可编程时钟输出,还可充当中频信号源。
用单片机at89s52中的定时器T2输出465KC方波的线路如下图。
C1C2465KC方波由(管脚1)p.1发射。
在收音机中波段的930KC和1395KC可分别接收到它的二次、三次谐波,感知到电磁波发射的存在,这样在要求不高的情况下可代替中频信号发生器,也是at89S52定时器T2的一项功能检测和功能实现的实验。
此项实验硬件连线如上图。
其特殊的要求只是要将管脚1,即p.1端用一根长些的导线与地相连。
没有接线的管脚空置即可。
它的汇编程序如下:T2CON EQU 0C8HT2MOD EQU 0C9HRCAP2L EQU 0CAHRCAP2H EQU 0CBHTR2 BIT 0CAHORG 0000HNOPNOPSTART:ss: DJNZ R1,ss ;MOV SP,#60H ; stackCLR EA ; 关中断MOV T2CON,#00000000B ; C/T2=0 T2为内部计时MOV T2MOD,#00000010B ; T2OE=1 允许输出MOV RCAP2L,#0EFH ; FFEF=65519 fre:475kcMOV RCAP2H,#0FFHSETB TR2 ; 启动T2定时LOOP:jmp LOOPEND程序中,控制寄存器设置为:T2CON全部置:0。
其中T2CO.2=0表示定时功能,因时钟输出要求用定时功能。
T2MOD=00000010B,其中T2MOD.2=1表示允许T2输出时钟方波。
重载寄存器RCAP2L=EFH,RCAP2H=FFH。
表示十进制的65519,用于设定输出频率。
输出时钟频率计算方法如下:设:X=65519。
输出时钟频率=震荡频率/[4X(65536-X)]当选择震荡频率为:31,620,000赫兹的石英晶振时,输出时钟方波的频率为465KC。
编写单片机C语言代码的技巧和经验编写单片机C语言代码的技巧和经验C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
那么编写单片机C语言代码的技巧和经验都有哪些呢。
以下仅供参考!具体如下:1、如果可以的话少用库函数,便于不同的mcu和编译器间的移植2、选择合适的算法和数据结构应该熟悉算法语言,知道各种算法的优缺点,具体资料请参见相应的参考资料,有很多计算机书籍上都有介绍。
将比较慢的顺序查找法用较快的二分查找或乱序查找法代替,插入排序或冒泡排序法用快速排序、合并排序或根排序代替,都可以大大提高程序执行的效率。
选择一种合适的数据结构也很重要,比如你在一堆随机存放的数中使用了大量的插入和删除指令,那使用链表要快得多。
数组与指针语句具有十分密码的关系,一般来说,指针比较灵活简洁,而数组则比较直观,容易理解。
对于大部分的编译器,使用指针比使用数组生成的代码更短,执行效率更高。
但是在Keil中则相反,使用数组比使用的指针生成的代码更短。
3、使用尽量小的数据类型能够使用字符型(char)定义的变量,就不要使用整型(int)变量来定义;能够使用整型变量定义的变量就不要用长整型(long int),能不使用浮点型(float)变量就不要使用浮点型变量。
当然,在定义变量后不要超过变量的作用范围,如果超过变量的范围赋值,C编译器并不报错,但程序运行结果却错了,而且这样的错误很难发现。
在ICCAVR中,可以在Options中设定使用printf参数,尽量使用基本型参数(%c、%d、%x、%X、%u和%s格式说明符),少用长整型参数(%ld、%lu、%lx和%lX格式说明符),至于浮点型的参数(%f)则尽量不要使用,其它C编译器也一样。
在其它条件不变的情况下,使用%f 参数,会使生成的代码的数量增加很多,执行速度降低。
4、使用自加、自减指令通常使用自加、自减指令和复合赋值表达式(如a-=1及a+=1等)都能够生成高质量的程序代码,编译器通常都能够生成inc和dec之类的指令,而使用a=a+1或a=a-1之类的指令,有很多C编译器都会生成二到三个字节的指令。
亲⼿制作STC15F2K60S2单⽚机最⼩系统亲⼿制作STC15F2K60S2单⽚机最⼩系统(⽂章中详细图⽚)STC15系列增强型8051单⽚机集成了上电复位电路与⾼精准R/C振荡器,给单⽚机芯⽚加上电源就可跑程序;集成了⼤容量的程序存储器、数据存储器以及EEPRM,集成了A/D、PWM、SPI等⾼功能接⼝部件,可⼤⼤地简化单⽚机应⽤系统的外围电路,使单⽚机应⽤系统的设计更加简捷,系统性能更加⾼效、可靠。
STC12C5A60S2/AD/PWM 系列单⽚机是宏晶科技⽣产的单时钟/机器周期(1T)的单⽚机,是⾼速/低功耗/超强抗⼲扰的新⼀代8051单⽚机,指令代码完全兼容传统8051,但速度快8-12倍。
内部集成MAX810专⽤复位电路,2路PWM,8路⾼速10位A/D转换(250K/S,即25万次/秒),针对电机控制,强⼲扰场合。
STC15系列中STC15F2K60S2单⽚机使⽤最为频繁,⽤户应⽤程序空间60K,⾜以满⾜多数应⽤此芯⽚的⽤户编程,并且价格在中关村6.5左右。
下⾯⾃⼰亲接,即悬空)两个电容为RxD和TxD的+5V两个30P电容后端接GNDSTC15F2K60S2引脚电路制作好,连接好以后,安装USB转串⼝PL2303的驱动做windows系统(windows xp或windows 7都可以,我使⽤的是windows7 64位),如果PL2303在windows 7 64位下下载时出现错误,请下载其它的此型号的驱动解决(实际中遇到过此问题,当然windows xp下试过没有出过错误,如果您的系统是windows xp的就不⽤担⼼了。
)使⽤下载时把PL2303的Rxd和单⽚机的Txd相连接,再把PL2303的Txd 和单⽚机的Rxd相连接,GND同接单⽚机GND, PL2303的+5V先不要同单⽚机连接,点上图中“下载/编程”后,再把PL2303的+5V先同单⽚机连接,此时就会看到程序下载到单⽚机了。
引言:单片机作为一种集成电路,可以在温度检测和测量方面提供精确的结果。
在本文中,我们将探讨如何使用单片机制作一个温度计,并进一步深入了解其工作原理和应用。
概述:温度计是测量环境温度的一种常用工具。
传统的温度计通常使用热敏电阻、热电偶或半导体传感器等元件来实现温度测量。
而用单片机制作的温度计具有精度高、反应迅速、可编程性强等优点,因此在许多应用领域得到了广泛的应用。
正文内容:一、单片机温度计的工作原理1.1模拟输入信号处理1.1.1温度传感器的选择1.1.2传感器输出电压的测量1.1.3模拟信号滤波和放大1.2数字输入信号处理1.2.1模数转换器的配置1.2.2采样频率的选择1.2.3数字信号处理算法二、单片机温度计的电路设计2.1单片机的选择和配置2.1.1单片机性能参数考虑2.1.2单片机引脚的分配2.1.3单片机与温度传感器的连接2.2电源系统设计2.2.1电源电压选择2.2.2电源过滤和稳压2.2.3低功耗设计2.3外设设计2.3.1显示屏的选择和接口设计2.3.2按键输入和控制电路设计2.3.3声音提示电路设计三、单片机温度计的软件设计3.1系统初始化3.1.1时钟和定时器配置3.1.2IO口初始化3.1.3中断系统配置3.2温度测量算法3.2.1温度传感器信号处理算法3.2.2温度计算方法选择3.2.3温度显示和存储3.3用户界面设计3.3.1温度显示界面设计3.3.2操作界面设计和控制逻辑四、单片机温度计的功能拓展4.1温度报警功能4.1.1温度报警阈值设定4.1.2报警方式选择4.2温度记录和数据存储4.2.1温度数据存储方式4.2.2数据查询和导出4.3多温度传感器接入4.3.1多传感器引脚分配4.3.2数据采集和处理五、单片机温度计应用实例5.1家用温度监测系统5.2工业温度控制系统5.3医疗设备温度监测总结:本文详细介绍了使用单片机制作温度计的方法。
通过对单片机温度计的工作原理、电路设计、软件设计等方面的讲解,读者可以了解到单片机温度计的制作流程和相应的技术要点。
单片机编程设计的学习方法和步骤6篇第1篇示例:单片机编程设计是现代电子技术领域中非常重要的一门技能。
通过学习单片机编程设计,我们可以掌握如何使用单片机来控制各种电子设备,实现不同的功能和项目。
下面将介绍一下关于单片机编程设计的学习方法和步骤,希望能够帮助大家更好地入门和掌握这门技能。
一、学习方法:1.系统学习:要系统地学习单片机编程设计,首先需要掌握单片机的基础知识,如单片机的结构、运行原理、常用的单片机种类等。
可以通过看书、网上视频、参加培训班等途径进行学习。
2.理论联系实际:学习单片机编程设计最重要的是理论联系实际,要通过实际的项目来巩固所学的知识。
可以选择一些简单的项目来实践,比如LED灯控制、按键控制等,逐步提高难度深入学习。
3.模仿学习:在学习单片机编程设计的过程中,可以借鉴一些经典的案例和代码,通过模仿学习来加深对编程的理解。
通过修改已有代码、理解其原理,逐步提高自己的编程能力。
4.多练习:学习单片机编程设计是一个需要不断练习的过程,只有通过多次实践才能掌握这门技能。
可以选择一些开源的项目来参与,多练习不断提高。
二、学习步骤:1.选择单片机:首先需要选择适合自己学习的单片机。
市面上常见的单片机有51单片机、AVR、ARM等,可以根据需求和学习难度选择适合的单片机。
2.学习编程语言:单片机编程设计通常使用C语言或汇编语言,因此需要学习相关的编程语言知识。
可以通过书籍、网课等途径学习,掌握基本的语法和使用方法。
3.搭建开发环境:学习单片机编程设计需要一个合适的开发环境,可以选择一款适合自己的编译软件和仿真软件。
常用的开发环境有Keil、AVR Studio等。
4.学习单片机的硬件连接和调试:在开始编程之前,需要学习单片机的硬件连接和调试方法。
掌握单片机的引脚功能、接线方法,通过示波器等工具进行调试,确保硬件正常连接。
5.编写代码实现功能:根据需求编写相应的代码,实现所需功能。
可以参考官方手册、资料、网上案例等来帮助编写代码,通过不断调试和修改,完善代码功能。
51单片机最小系统制作第一章概述1.1 缘起1. 给51初学者提供一个简单的DIY的教材。
第二章跑马灯和串口2.1 第一步:准备准备一下器件:1、烙铁(质量好点)2、焊锡(细)3、烙铁架(带一个专用海绵)4、松香块5、万用表(要有带响的,听听红黑表笔短接时的声音出来快不快)6、PCB面万用板1块7、40pin 插座1个8、11.0592M晶振1个9、30P瓷片电容2个10、11个LED11、电阻排1K 1个到VCC,做跑马灯LED的限流电阻12、max232或者兼容的芯片13、16pin的插座上去14、STC89C5115、其它杂物以上的投资加起来,不会超出100元。
价格数量和封装如下:STC的单片机可以串口下载。
解释一下:LED:8个挂在P1口,排电阻是上拉限流的;2个作为串口收发的指示灯;1个LED作为电源指示灯;独石电容6个:5个是使用在max232上的;一个是使用在单片机上,作为电源去耦的;10K电阻1个,接在EA上,上拉到5V;电解电容和电阻构成上电复位电路;(STC单片机不需要)自己买2个DB9的母头,焊接一根串口电缆;准备一个3PIN的插座,焊接在PCB的面包板上;还有电源,Dc5V的电源很多,电源电压差一点问题不大;很多单片机现在电源范围都宽;STC单片机应该可以工作在4V以上,具体查资料。
准备好以上物品,可以准备焊接好了。
来一张全家福:2.2 第二步:焊接单片机最小系统2.3 第三步:焊接串口指示灯2.4 第四步:在P1口上焊接跑马灯2.5 第五步:焊接Dc5V电源指示灯2.6 第六步:焊接max232的5个0.1u电容2.7 第七步:焊接RS232的3P接口插座2.8 第八步:测量max232的电荷泵的正电压是否正常?插上一片max232,并测量是否焊接正确。
先测量RS232的正电压:第二脚。
2.9 第九步:测量max232的电荷泵的负电压是否正常?再测量RS232的负电压:第6脚。
51单片机烟雾报警器制作程序烟雾报警器是一种用于监测烟雾并发出警报的装置,可以在火灾等危险情况发生时提供早期警示。
在这篇文章中,我们将介绍如何使用51单片机制作一个简单的烟雾报警器,并给出相应的制作程序。
材料清单:-1个51单片机开发板-1个烟雾传感器模块-1个蜂鸣器-杜邦线若干-面包板-电池电源制作步骤:第1步:连接硬件元件将51单片机开发板与面包板连接,并依次将烟雾传感器模块和蜂鸣器连接到面包板上。
然后使用杜邦线将各元件连接至相应的接口。
第2步:编写程序```c#include <reg52.h> //包含51单片机寄存器定义的头文件sbit SmokeSensor = P1^0; //定义烟雾传感器接口sbit Buzzer = P1^1; //定义蜂鸣器接口void Delay(int n) //延时函数int i, j;for(i = 0; i < n; i++)for(j = 0; j < 100; j++);void mainSmokeSensor = 1; //设置烟雾传感器接口为输入模式Buzzer = 0; //设置蜂鸣器接口为输出模式while(1) //无限循环if(SmokeSensor == 0) //检测到烟雾Buzzer = 1; //触发蜂鸣器Delay(1000); //延时1秒Buzzer = 0; //关闭蜂鸣器}elseBuzzer = 0; //无烟雾时关闭蜂鸣器}}```第3步:测试与调试将制作好的烟雾报警器接通电源,并观察烟雾传感器的灯是否发亮。
如果传感器灯亮,表示传感器已经开始工作。
接着,将一些烟雾靠近传感器,并观察蜂鸣器是否发出警报声音。
如果蜂鸣器响起,表示烟雾报警器正常运行。
总结:通过以上步骤,我们成功制作了一个简单的51单片机烟雾报警器。
当烟雾传感器检测到烟雾超过预设值时,蜂鸣器会触发警报声音。
这个简易的报警器可以在家庭、办公场所等地方起到烟雾报警的作用,提供了一种相对低成本、高效率的烟雾监测方案。
MCS-51单片机能够通过编程、烧录从而成为特定用途的芯片。
单片机的编程一般是使用编译软件把.asm或.a51文件编译成.hex或.bin文件,然后使用专门的编程器烧录到单片机或者外接的可编程ROM中。
本文介绍一种在没有编程器的情况下,烧录简单的单片机程序,进而自制一个通过计算机直接烧录多种芯片的实用编程器。
如果你想自己制作一个编程器,或者你对手工烧录芯片有兴趣的话,那就照本文介绍的方法试试吧。
1. 硬件原理图1是手工烧录器的硬件电路图。
这一电路是进行手工烧录的最简电路,同时将被作为成型后的编程器的一部分。
电路中的89C51芯片选用40脚的零阻力插座接入,当然也可以使用普通的DIP-40插座,只是这样拔插芯片会麻烦一点。
电路采用了一般编程器的电路原理,CD4040芯片是12位的二进制计数器,这里用作89C51编程状态的地址输入。
当CD4040芯片的RST端输入一高电平时,计数器清零,此时对应的89C51内的闪存地址为“0000”,之后,每向CLK端输入一个低电平,地址就增加“1”,一直可增加到“0FFF”,正好可以编完89C51内4K字节闪存空间。
数据输入端采用8位DIP微动开关进行手工输入,89C51的P0.0~P0.7为数据输入端口,当某一引脚未接地,则输入数据为“1”,接地则输入为“0”。
P2.6脚为芯片编程/擦除选择,编程时应接低电平。
P3.6、P3.7也是芯片编程/擦除选择,编程和检验时均接高电平。
P2.7脚为闪存器的读写选择,写入时(烧录)接高电平,读出时(检验)接低电平。
另外,测试用表笔可以用来检查地址、数据端口各位数据,端口为“1”即高电平时,LED发光,端口为“0”即低电平时,LED不发光。
当烧录过程中不慎写入错误数据时,则应该进行整片擦除,从头开始。
进行擦除时,要先把89C51置于擦除状态,即P2.6接高电平,P2.7、P3.6、P3.7都接低电平,然后按下“写入”按钮10ms以上,芯片即被整片擦除,片内所有地址单元均重新置为FF,可以重新置为编程状态,从头开始烧录。
单片机实物制作流程编写以单片机实物制作流程编写为标题的文章内容如下:一、引言单片机是一种集成电路,具有微处理器、存储器和各种输入输出接口等功能,广泛应用于各种电子设备中。
本文将介绍以单片机为核心的实物制作流程,帮助读者了解单片机的应用和制作过程。
二、材料准备在开始制作单片机实物之前,我们需要准备一些必要的材料和工具。
例如,一块单片机开发板、适配器、USB数据线、面包板、电阻、电容、LED等元器件,以及一台电脑和编程软件等。
三、电路设计在制作单片机实物之前,我们需要进行电路设计。
根据实际需求和功能要求,设计出相应的电路图。
可以使用电路设计软件进行绘图,或者手动绘制电路图。
确保电路图的准确性和可靠性。
四、焊接和连接完成电路设计后,我们需要将元器件焊接到面包板上,并进行连接。
首先,根据电路图将元器件逐一焊接到面包板上,确保焊接的质量和稳定性。
然后,根据电路图将单片机开发板与面包板进行连接,使用导线连接各个引脚。
五、编程和调试完成焊接和连接后,我们需要进行编程和调试。
将单片机开发板连接到电脑上,使用编程软件编写相应的程序,并将程序下载到单片机中。
通过调试程序,检查单片机的各个功能是否正常工作。
六、外壳制作在完成电路的制作和调试后,我们可以考虑制作一个外壳来保护单片机实物。
可以使用3D打印技术或其他材料制作外壳。
确保外壳的大小和形状与单片机实物相匹配,并具有良好的外观和实用性。
七、性能测试在制作完单片机实物后,我们需要进行性能测试。
通过输入不同的信号和数据,观察单片机的响应和输出情况。
确保单片机实物的各项功能和性能都符合预期要求。
八、应用拓展除了基本的制作流程,单片机实物还可以进行应用拓展。
例如,可以添加传感器模块、无线通信模块或其他扩展模块,实现更多的功能和应用。
这需要根据具体的需求进行设计和制作。
九、总结通过以上的制作流程,我们可以成功地制作出单片机实物。
在制作过程中,需要注意电路的设计和焊接质量,以及编程和调试的准确性。
浅析单片机开发板的设计与制作摘要:本文将探讨单片机开发板的设计与制作。
首先,介绍了单片机开发板的概念和作用;其次,分析了单片机开发板的设计流程,包括硬件设计和软件设计;最后,讨论了单片机开发板制作的具体步骤和注意事项。
本文旨在帮助读者了解单片机开发板的设计与制作方法,以便于电子爱好者和工程师们更好地开发和应用单片机。
关键词:单片机开发板、硬件设计、软件设计、制作步骤、注意事项正文:一、单片机开发板的概念和作用单片机开发板是一种方便电子爱好者和工程师学习和开发单片机的工具。
它通常包含了一个单片机芯片、电源电路、通信接口、输入输出引脚等元件。
单片机开发板的作用是提供一个快速开发、测试和验证单片机程序的环境。
借助单片机开发板,电子爱好者和工程师们可以更加轻松地学习和开发单片机程序。
二、单片机开发板的设计流程单片机开发板的设计流程包括硬件设计和软件设计两部分。
硬件设计:硬件设计是单片机开发板设计的重要组成部分。
硬件设计包括了电源电路、时钟电路、输入输出接口、通信接口等。
设计时需要考虑电路的稳定性、可靠性和实用性。
在硬件设计时,需要根据单片机型号、应用场景和功能需求来选择适合的外围元器件。
比如,LED灯、按键、数码管等元器件都可以通过单片机开发板来实现。
软件设计:软件设计是单片机开发板设计的另一部分。
单片机开发板的软件设计包括了编程语言、编写程序、编程工具等方面。
编程语言有C语言、汇编语言等,编写程序需要根据单片机硬件设计的接口设计相应的程序,同时需要考虑单片机的存储空间、速度等问题。
编程工具有keil、C51等,其中keil 是目前较为流行的一款单片机开发工具。
三、单片机开发板的制作步骤和注意事项单片机开发板的制作步骤包括:1.确定单片机型号和开发板的外围元器件;2.根据设计要求完成原理图和PCB设计;3.进行原型的PCBA制作和装配;4.进行单片机程序的上传和调试。
在制作单片机开发板时需要注意以下几点:1.选用合适的单片机型号和配套元器件;2.保证电路的稳定性和可靠性;3.注意PCB的铺铜和走线,避免产生干扰和串扰;4.程序的调试要细心耐心,逐个模块进行测试。
现在的笔记本包括台式机都渐渐地舍弃了并口、串口;很多网友也跟我说,台式没有并口了,下载线没法用了,让我帮他想想办法。
看来做个USB-ISP下载线是势在必行了。
在网上搜了下,主要有两种方案,一种是用FT245串口芯片加ATMEGA8的方案,另一种是只用ATMEGA8进行USB串口协议的软件模拟和ISP下载全部完成。
据说第一种稳定,但成本高,电路复杂,不便自制。
我们还是本着低成本,简单易做的原则进行。
就用单个M8来做。
好!废话少说,干活。
在网上搜了一下找了个BUG少,易于自制的图。
在制做前首先要搞清楚几点,第一,这个USB下载线本身就是一AVR单片机,在制做完成后首先也得通过其它并或串口ISP下载线给它下载程序,这样它才能工作。
第二先得大概了解一下这个AVR单机机M8的基本资料。
这样才能对电路有个了解,从而便于调试。
因此,你原先用的并口ISP下载线在这里还得起着关键的作用,可别扔掉啊!我图示一下这个过程先:接下来按上述图的要求准备元件。
元件准备好后,先得检测下质量,电阻的阻值、发光管的极性、电容是否有短路。
要测试下两个稳压管的稳压值是否正确。
最最重要的是先把USB接口用延长线接到PC上,然后用万用表测一下正极在哪,做个标记,这样就能搞清楚了D+、D-的位置,也不会接反电源了。
免得焊好后发现错了极性反复焊,焊盘很容易脱落,也避免接反烧了元件。
(我开始用的是USB公头接口,后来发现在板子上吃不上劲,稍一用力很可能会松脱。
所以换成母口了)电路图我整理了一下,因为有的元件不需要,有的为了方便检查,避免漏连了线。
焊接过程就没什么好说的了,不是PCB板,是洞洞板的,在事先大概做个布局(布局原则就是减短引长度,跳线尽量少。
好像我做的跳线并不少哦!)然后就按照上面的电路图焊接,完成后如下图,感觉是不是还不错?:再来张反面吧,有点惨不忍睹吧!在调试前也还得先弄清几个问题:第一、电源题:原先的并口下载线是靠S51板上来供电的,也就是说当你焊好你的USB-ISP板后给它装固件时,USB-ISP板得向原并口下载线供电,而固件装好后USB-ISP板就是靠PC的USB口向我们的USB-IS板供电了,而你以后的51实验板就不能向这个USB-ISP板供电了,否则PC和51实验板都向USB-ISP供电,那么电压不同就有可能烧坏PC口或元件的。
单片机制作流程
单片机制作流程,听起来就像是搭积木,只不过这些积木是电子零件,搭出来的可是能跑程序的小电脑。
让我用轻松幽默的方式,给你揭秘这个流程。
首先,得有个设计图,这就像是建房子前的蓝图,得规划好每一块砖的位置。
这第一步,我们称之为“设计电路”,确保每个电子元件都知道自己该站在哪儿。
接下来,就是采购零件,这就好比是去超市购物,只不过我们要买的是电阻、电容、芯片这类的东西。
这步叫“选购元器件”,得挑质量好、价格公道的。
零件买回来了,得把它们组装起来,这就像是在玩拼图,只不过拼的是电路板。
这步叫“焊接元件”,得小心翼翼,不然一个不小心,就可能把零件焊短路了。
焊好之后,得检查一下电路,看看有没有短路、断路的问题。
这步叫“电路测试”,就像是给电路做个体检,确保它健康上岗。
电路测试通过了,接下来就是给单片机编程,这就像是给机器人输入指令,让它知道该做什么。
这步叫“编写程序”,得逻辑清晰,不然单片机可会闹情绪。
最后,把程序烧写到单片机里,这就好比是给机器人装上大脑。
这步叫“烧录程序”,完成后,单片机就可以按照你的指令工作了。
总结一下,单片机制作流程就是:设计电路、选购元器件、焊接
元件、电路测试、编写程序、烧录程序。
这个过程虽然复杂,但每一步都是为了让这些小家伙能够聪明地执行任务,是不是挺有意思的?。
自己动手做单片机实验板一台电脑:这在日后写程序或是下载程序都是必需之物。
现在的新款电脑越来越不适合单片机学习了或者说单片机的设备也应该更新换代了,一般常用的 9针串口和 25针并口多数被方方正正的 USB接口所取代。
更新推出的操作系统对开发软件支持并不很好,建议大家使用 WIN XP或 WIN 2000系统。
不用考虑 CPU速度和存储空间,同时电脑要有 9针的串口和 25针的并口(打印机接口),如果没有可以用 USB转换器扩展,不过其效果不如原配夫妻。
ISP下载线:从电脑向手机下载图片或音乐一般都有一条连接线,再配上手机专用的软件就可以让手机丰富多彩了。
单片机也可以用这样的方法,虽然这不是唯一的方法,但这较适合一般的单片机学习,好而不贵。
ISP下载线就是一个设计有简单电路的单片机程序下载工具,它就像塑造生命的天使,配上小巧的 ISP下载软件就可以施与单片机灵魂。
虽然我们不是上帝,但在后文我们先要亲手塑造它,先做好心理准备。
实验板:这是一年半载也玩不腻的家伙,因为这是在学习中不断扩展的。
它是将一块单片机焊在一片电路板中间,板上还焊有电源和单片机的最小系统电路,见图 1。
如果继续往下说许多读者朋友会骂我太粗心了,所以我不得不解释一下“最小系统”是啥东东。
随便抓一个数模电路的芯片,它要是想正常工作必须有一个先天条件,就是符合要求的电源。
单片机也是一样,不过它太讲究了,要的东西更多。
除了一个稳定的电源供电之外,它还需要一个复位电路,就是给单片机一个信号让它归回到开始工作的状态。
同时晶振部分电路也是必不可少的,这相当于给单片机带了一块手表,让它有时间观念,知道自己什么时候该干什么事情。
总之最小系统就是保证单片机正常工作的最基本电路部分。
OK,再说回到单片机实验板。
我是买元器件自己制作实验板的,我感觉没有必要多花钱去买一个成品,虽然这样说卖实验板的人可能会扁我。
自己动手可以学到单片机硬件电路的知识和掌握制作的细节,这是不可多得的实践机会。
你决定实验板 DIY了吗?我们一起做吧!忘了是哪一部抗日题材的电影里有一句经典台词:“别看你今天闹的欢,小心将来拉清单”。
当时我还真不知道这话的意思,但我写到这里的时候我终于明白了,闹了这么长时间单片机,今天终于到我拉清单了。
附表所示这个清单列出了学习单片机所需要的兵器,这是在成家立业之前必要的条件,里面我列出了大概的市场价格以防被黑。
各元器件的外形如图 2所示。
其实满打满算学习单片机也要不了几个钱,一般的元器件也就几块钱。
几块钱能买什么?买不了房子买不了田,买几个元器件能用好几年。
必要的时候可以和卖元器件的老板砍砍价,你砍得多省得多,回去能买辆自行车。
附表实验板 DIY元器件采购清单可以直接拿单到电子市场买到,附近没有电子市场朋友也可以在网上邮购,你一定会千方百计弄到的,对此我充满信心。
如果你到电子市场去逛我得唠叨两句,省得闹出专业技术级笑话。
AT89S52单片机是分为工业级(PI)和商业级(PC)两种,区别就是工业级的工作温度范围更宽,也就是比较抗冻。
对于我们学习就无所谓了,哪个便宜买哪个吧。
如果买不到 AT89S52也可以买 AT89S51或是与 89S系列兼容并支持 ISP功能的单片机。
30pF的电容只是提高晶振的精度的,如果只是做一些小实验的话买不到不接也行。
万用电路板要买大一点的,别以为现在的元器件放上去正好大小就行了,我们的学习才刚刚开始,以后还有好多单片机的外围功能要学呢,如果没有地方放元器件了就得外扩电路板再用排线连接,弄得像蜘蛛精似的。
我个人认为 A4纸大小的万用电路板是最合适的选择,总之要“我选择我喜欢”。
还有一些东东虽然说出来有点啰嗦但对于一个电子爱好者是必不可少的,包括焊接用的电烙铁、锡丝、助焊济、导线、镊子、剪线钳、一双勤劳灵巧的手和一颗热情执着的心。
也许你早就发现这篇文章与其它文章写作方式的不同,我不知道这会让你眼前一亮还是眼前一黑,不过卓尔不群之处还不止于此。
一张直观而清晰的图片要比书本上想方设法跳跃起来的文字更容易让人印象深刻,下面的制作过程你将会发现我在竭尽全力地发挥“图文并茂”的优势特点。
从元器件的集体合影到成品的写真照片,总是把你从茫然的想象拉回到真实的制作情境,当你觉得没必要介绍得如此详细时,请想到那些从零开始又满怀热忱的爱好者朋友。
假设你已经买来了上面的所有元器件和工具,并已经吃饱喝足准备开始制作了。
我也只能这样假设,否则我们的制作是不能向下继续的。
其实我是想先制作 ISP下载线的,可是看到你迫不及待想玩单片机的样子我也只好改变主意。
那我们就先来制作单片机实验板吧!实验板上主要有三部分电路:电源部分、单片机最小系统部分和功能扩展部分。
因为我们只是刚开始实验,功能扩展部分我们只焊接一个发光二极管和一个按键开关做一些简单的实验,完成了这些实验之后我们就基本熟悉了单片机的使用流程,再学习其它功能时只要将此功能用到的元器件焊在实验板的空地儿上并连接到相应的单片机引脚就可以了。
例如我们要学习 DS1302时钟芯片我们就把芯片和相关元器件焊上,通过对应的程序下载到单片机来实验。
按照传统习惯我们先在开发板上焊接电源部分电路。
电源部分是比较容易的,集成稳压芯片解决了电源稳压问题。
理论上的电源输入是5V~18V,可是实际应用存在许多理论界想象不到的问题,细心的朋友可以发现电容的耐压值决定了一个更小的选择范围。
建议大家用 9V 2A或 12V 2A的电源适配器(俗称变压器)作为市电的转换,我的实验中暂用 12V 2A的为例,图 4是电源部分电路原理图,图 5是单片机最小系统部分和功能扩展部分电路原理图。
还有一些细节问题可能会导致你的恐慌,我也有必要保证朋友的安全,占用一点纸上疆土逐一列出。
220μF的电解电容正负极千万不要接反,不然十有八九会爆炸,我遭遇此事时吓得一个女同事几天没回过神来。
LM7805稳压芯片是有一个散热片接孔的,我们实验板的功率不大就不用接散热片了,如果发现此芯片发热也是正常的,不用怕。
如果非常热,发热上百度时就要检查一下电路是否有短路。
晶振、陶瓷电容是不分正负极的,二极管的焊接时间不要过长,注意电源适配器的输出要是内正外负。
不怕人骂我唠叨,如果这里有一条帮助到你的话我就很欣慰了。
在电路板的走线方面我是用的锡接走线,这样可以保证电路稳固又美观简洁。
在锡接走线之前可以先考虑好整个电路的布局,电源部分尽量放到一起,单片机最小系统放在实验板的中间,这样扩展电路方便一些。
先用水笔画出走线图,当确定无误再用锡过线。
焊接的时候单片机不要插在 IC座上,先焊好 IC座当电路全部完成后再上芯片。
如果是想用飞线的方法也可以,不过这么简单的电路用飞线好像没有必要。
单片机 IC座的下面是一个不错的楼盘,一些占地方而又很重要的元器件可以挤一挤放到下面去,外表美观又保护了这些元器件,如图 6所示。
这是我在长期制作中实践出来的好方法,不到一分钟就转让给你了。
建议在制作好电源部分后在不插入单片机时就通电一次,并用万用表测一下输出电压是不是 5V,电源部分的一点失误导致的后果相当不小。
本文中的设计是将电源部分制作到实验板上,ISP下载线是通过一条排线插到实验板上留出的端口上,用实验板的电源给 ISP下载线供电,整个设计只用到一个电源部分。
别以为我是只说不练的家伙,我可是按照文章先制作了一遍的,这样我才有资本指手划脚。
图 2所示是制作实验板和 ISP下载线用到的所有元器件,我们要做的就是把它们组装起来,我仅用了两个小时就完成了制作,而且其间我还要拍照片和考虑怎么写下面的内容,现在可以想象你的任务并不复杂了吧!准备好了吗,开始行动吧!图 7、图 8是制作好的实验板,你制作好了吗?我只能再一次假设你的制作是成功的。
也许你还有一些问题没有解决,而我在文章里却没有提到,也许是我忽略了什么或是答案故意躲了起来,那就在仔细看看电路图和实物照片吧,它们是最佳的制作参考系,这样一个简单的电路并没有比双稳态的声控开关电路复杂,它是深藏于内、厚积薄发的。
OK,现在一切完成可以通电了,按下电源开关,电源指示灯亮了,看看接到 P1.0接口上的 LED是什么状态呢?是不是每隔一秒钟闪烁一次呢?是这样的现象吗?不是?哦,不是就对了,因为我们还没有给单片机写程序呢,它现在还不知道你要让它干什么呢,只能呆呆地等在那里。
虽然我们希望尽快让 LED闪烁起来,可是面对科学还是要理智一些才行。
一根 ISP下载线可以帮我们实现程序的下载,前面我讲 ISP下载线的好话已经够多了,你的耳朵都快磨破皮了吧?现在我们就来一起制作,趁着制作实验板的喜悦之情还没有冷却。
ISP下载线的电路如图 9所示,简单得真叫人没法活了,制作它可以很容易找到成功的感觉,可是要注意许多老水手都是在阴沟里翻的船。
我曾听说一位朋友不屑一顾制作完成的下载线就是不能用,虽然检查了 N遍电路,芯片也换了几个。
其实解决这个问题的方法很简单,再重新制作一个就行了,一条道跑到黑对提高效率没有什么帮助。
还有一些事情要提醒一下,因为有一些贵族级别的爱好者用的是先进的笔记本电脑,除了 USB之外什么接口都没有了,这样的朋友是比较麻烦了,买 USB转并口的转换器还不如干脆参考其它资料制作串口ISP下载线,或是直接制作 USB接口的 ISP下载线,但不论如何都要亲手制作才过瘾哦。
图10所示是制作好的下载线。
有一件重要的小事害得我不浅,两次挫败才让我吸取教训,也可以说失败是好事,是不继积累经验的过程,我前面叮嘱大家注意的地方都是挫败之后才能写出来的,希望大家少走一些崎岖路。
不论是实验板、ISP下载线还是其它的单片机电路都要考虑抗干扰问题,我这里想说的主要是来自电源的干扰。
在靠近芯片和电源的地方,5V和 GND之间加焊几片 0.1 μF的滤波电容(即系统电源部分电路原理图中的 C3),不然会有数据错误甚至不能下载的问题。
ISP下载线的引线不要太长,不然抗干扰能力差,一般小于 20厘米。
如果想延长距离可以买一条公对母的并口延长线,在电脑的一端将并口扩展出来。
在 ATMEL官方是推出了10PIN 接口的延长线标准的,这种接口线具有良好稳定性,但我们这帮玩单片机的爱好者没有必要多花这笔银两。
我则采用最节省的6PIN连接线,接线方法可以自由定义,只要有电源和 4条数据线就可以了。
你完全可以参考我的实物照片来制作或是异想天开,这是表现你思想力与行动力的机会。
实验板和 ISP下载线都制作好了吗?图 11所示就是它们俩连接在一起的样子。
真是佩服你的认真和耐心,这种优秀习惯会帮助你很快进步的。
如果不拿真枪实弹操作一次,老天也不敢保证还留有余温的两个电路作品是正常可用的。
可惜要想从头到尾完成程序的下载仅凭这一点硬件还差的远点,幸运的是下载程序详细介绍的文章就在下一页,而不用朝思暮想的等待下一个月的来临,这还要感谢《无线电》的心系读者或者高瞻远瞩。