第一篇:YCLDSP-F28335-III开发板简介
YCLDSP-F28335-III学习开发板
价格:2080元
YCLDSP-F28335-III开发套件是现在国内F28335系列开发板里面功能最多、代码最全、性能最强悍的开发板。不仅扩展了TMS320F28335的所有外设的功能,而且扩展了高速USB SLAVE接口、高速USB HOST接口、SD卡存储接口和以太网接口,满足大部分测控系统的硬件需求。进过多年的积累,我们的产品已经成为众多的国家级科研院所、大学、国家重点实验室、电力、通讯、工业、医疗类公司指定采购的开发工具,在长期的客户产品开发使用过程中得到广大客户的高度认可和好评。不选最贵的,只选性价比最高的!
一、硬件
…采用 32-位浮点 DSP TMS320F28335,方便实现电机控制
片上存储器:
FLASH: 256K×16-位 SRAM: 34K×16-位 Boot ROM: 8K×16-位 OTP ROM: 1K×16-位
其中 FLASH、OTP ROM 和 16K×16-位 SRAM 受密码保护,保护用户程序。 片上外设:
ePWM: 12 路 HRPWM: QEP: ADC: 6 路 2 通道 2×8 通道、12-位、80ns 转换时间、0~3V 量程 SCI 异步串口: 3 通道 McBSP 同步串口: 2 通道 SPI 同步串口: 1 通道 eCAN 总线: 2 通道 2C 总线: 1 通道
DMA: 6 通道 看门狗
外扩 SRAM,最大容量为 512K× 16 位,基本配置为 256K ×16 位 外扩NOR FLASH,基本配置为 512K× 16 位
外扩SD卡接口,SPI接口方式
扩展4种LCD接口:1602A、12864、240128及320240液晶接口 外扩 RTC 实时时钟 + 512×8-位 EEPROM
外扩符合 USB2.0 标准的高速 SLAVE端接口CY7C68013A,支持USB2.0
高速和全速标准
外扩符合USB2.0标准的高速USB HOST接口,可接U盘和移动硬盘,兼容
性很好,读写速度比SL811HST有质的飞跃,兼容USB2.0和USB1.1标准,接口操作简单(爱普生公司的S1R72U16)
外扩10M以太网接口RTL8019AS
外扩4路12为SPI接口DA
采用CPLD EPM3128ATC144,简化逻辑设计,提供更高的灵活性 1路 SCI 进行收发驱动,接口标准一路为 RS232
1 路 eCAN 进行收发驱动,符合 CAN2.0 协议
提供McBSP接口的音频驱动,为AIC23
外扩32K的EEPROM
提供芯片复位,手动复位,电源测试点,按键,指示灯,启动模式拨码开关 标准的 JTAG 接口,方便调试
所有总线外扩
二、软件(所有代码都是C源代码)
01.代码01-LED交替闪烁实验
02.代码02-SRAM测试
03.代码03-LCD1602实验
04.代码04-LCD12824实验
05.代码05-SPI_7Seg_LED实验
06.代码06-AIC23音频播放实验
07.代码07-Time1流水灯实验
08.代码08-外部中断1实验
09.代码09-EEPROM读写实验
10.代码10-RTC实验
11.代码11-键盘实验
12.代码12-ADC转换实验
13.代码13-CAN 的测试
14.代码14-PWM 及 EQEP 的测试
15.代码15-USB SLAVE FIFO输入实验
16.代码16-SCIC232 测试
17.代码17-U盘FAT16格式测试
18.代码18-U盘FAT32格式测试
19.代码19-U盘创建目录实验
20.代码20-U盘创建文件实验
21.代码21-U盘删除文件实验
23.代码23-U盘写文件实验
24.代码24-U盘读文件实验
25.代码25-移动硬盘FAT32格式测试
26.代码26-移动硬盘创建目录实验
27.代码27-移动硬盘创建文件实验
28.代码28-移动硬盘删除文件实验
29.代码29-移动硬盘创建长文件名实验
30.代码30-移动硬盘写文件实验
31.代码31-移动硬盘读文件实验
32.代码32-移动硬盘更换逻辑分区写文件实验
33.代码33-SD卡FAT16格式测试
34.代码34-SD卡FAT32格式测试
35.代码35-SD卡创建目录实验
36.代码36-SD卡创建文件实验
37.代码37-SD卡删除文件实验
38.代码38-SD卡创建长文件名实验
39.代码39-SD卡写文件实验
40.代码40-SD卡读文件实验
41.代码41-ARP实验(以太网)
42.代码42-PING实验(以太网)
43.代码43-UDP实验(以太网)
44.代码44-TCP服务器实验(开发板为服务器)(以太网)
45.代码45-TCP客户端实验(开发板为客户端)(以太网)
46.代码46-扩展RAM自动测试实验
47.代码47-扩展ROM测试实验
48.代码48-HPWM功能测试实验
49.代码49-PWM输出功能测试实验
50.代码50-PWM输出死区(DeadBand)功能测试实验
51.代码51-PWM脉宽调制输出功能测试实验
52.代码52-SD卡读写实验
53.代码53-12位2路DAC1实验
54.代码54-12位2路DAC2实验
55.代码55-图形显示240128实验一
56.代码56-图形显示240128实验二
57.代码57-图形显示320240实验一
58.代码58-图形显示320240实验二
代码59-Flash_Boot Example
四、软件光盘:
01.非常完整的原理图(pdf格式);
02.独家提供器件的PROTEL库,包括开发板上所有芯片SCH和PCB封装图(其它厂家不提供);
03.独家提供板上CPLD源代码(其它厂家不提供)
04.提供了USB SLAVE的PC机的DDK驱动源代码
05.提供了USB SLAVE的PC机应用程序源代码
06.提供U盘文件系统源代码,已测试过Kingston和SanDisk的1G、2G、4G、8G的U盘,FAT16和FAT32自动识别
07.提供移动硬盘文件系统源代码,已测试过120G的移动硬盘,支持16个逻辑分区。
08.提供SD文件系统源代码,驱动支持SD版本1和2(SDHC)协议,支持最
大32G的SDHC的SD卡,FAT16和FAT32自动识别,已测试Kingston 的1G、2G、4G、8G、16G、32G全系列SD卡。
09.提供的文件系统都支持FAT16和FAT32,支持长文件名,支持文件目录的创
建、删除,文件的读写操作
10.提供了以太网的TCPIP协议,UDP协议和ARP、ICMP等协议
11.大尺寸液晶提供8*8点,8*16点,16*16点,16*24点,24*24点,32*32点
等大小的汉字,32*32点,64*64点的图标数字、任意两点的直线、任意点的曲线、字库中的半角、全角符号图形实验、任意位置显示字母、数字实验、任意汉字实验(汉字内码的控制器,如ST7920)等常用功能的液晶显示
12.提供所有实验的C 语言源代码,均有详细注释(CCS3.3开发环境);
13.送原版TI DSP开发环境CCS 3.3完整版,仅供学习用;
14.提供EZ USB CONTROL PANEL开发包
15.提供在线烧写FLASH 的方法与工具,用以固化用户自己的程序
16.赠送串口调试助手、USB调试软件及开发过程中用到的工具软件
17.提供USB1.1、USB2.0协议的中英文文档
18.提供CAN2.0 规范文档
19.赠送驱动开发的书籍及文档
20.TCP-IP详解I、II、III及讲义
21.文件系统相关资料
22.非常详细用户手册,让你快速踏入DSP开发应用之门;
23.芯片手册:开发板上全部芯片的芯片资料;
五、配置清单:
1.F28335-III开发板一块
2.高档USB线一根
3.串口线一根
4、交叉网线一根
5.5V/1A开关电源一个
6.配套光盘一张
六、联系我们
联系人: 雷先生
电话: ***
QQ: 19208093 406291081
E_MAIL: hclei@163.com chinaycltech@163.com
七、可选配件(加链接)
1.USB2.0-TDS510仿真器
2.XDS510-USB仿真器
3.XDS100-USB2.0 V2普及版及专业版仿真器
4.ALTERA USB Blaster下载线
第二篇:单片机开发板维修报告
单片机开发板维修报告
尊敬的学院领导:
您们好!
信息科学与技术系实验室-单片机实验室,有30套mcs51单片机开发板。因学生实验教学,学生自学,学生研究项目,学生毕业论文等学生实训活动,现已有近15套实验板出现不同等次问题,比如芯片损害、液晶显示故障等,需要维修。
根据厂家返回信息,现在向学院申请维修费用,估计1000元。
同时,下学期(2012第一学期),10级生物医学工程专业将用此开发板进行实验教学。
望领导能够批准。
信科系实验室
第三篇:linux嵌入式开发板搭建开发环境经验总结
一、环境
服务器端:PC机(win7),Ubuntu10.04操作系统,Vmware8.0.4 客户机端 :ARM11开发板(6410)一根交叉网线
二、Ping通电脑和开发板
用一根交叉网线连接电脑和开发板,给开发板上电,一定要是交叉网线,普通网线不行,一般买开发板时会送一根交叉网线。在开发板输入ifconfig,查看开发板的ip地址,我的ip为192.168.0.232
设置本地连接和虚拟机ip为同一网段
在虚拟机上输入ping 192.168.0.118,在win7下的cmd输入ping192.168.0.232,验证是否能ping通
如果ping不通,先把防火墙关闭,再把网络设置为家庭网络。Ping通后进行下一步
三、Ping通虚拟机和开发板
开发虚拟机,我用的是vmware8.0.2,ubuntu10.0.4 在控制面板里面桥接vmnet1和本地连接,右击网桥,设置ip,设置方法和本地连接一样,并把ipv6前面的勾去掉。
完成后设置Vmware,右击自己的虚拟机,点击settings
设置Network Adapter选项,选择custom:Specific virtual network的CMNET1(H Ost-only)
修改虚拟机的ip地址,在network connections里编辑 Auto Ethernet这个网络
把ip设置成和网桥一样。点击apply
不出意外,现在应该虚拟机和开发板能相互ping通了,现在离成功又进了一步。
四、安装nfs服务器程序
用以下命令安装nfs服务器程序软件包,在命令执行过程中,默认启动SUNRPC服务和nfs服务,并创建/etc/exports和、etc /default/nfs-kernel-server配置文件,等待用户完成nfs安装后,配置将要共享的资源。
可以使用netstat命令检查nfs端口是否已经打开:
以上截图可看出,nfs和SUNRPC端口已处于监听状态,不过,客户端此时还无法访问到nfs服务器,还需对nfs服务器进行配置,将共享资源授权给特定用户之后,客户端才能成功访问。
五、启动和停止nfs服务
虽然完成nfs安装后会自动启动nfs,但要调整共享资源还得重新启动nfs服务,以使配置生效。
1、命令方式手动启动和停止nfs服务
启动nfs服务:
停止nfs服务:
重启nfs服务:
查看nfs服务当前状态,若nfs服务正在运行则返回“nfsd running”。否则返回“nfsd not running”。
2、使用图形工具启动和停止nfs服务(此项好像在10.04中没有?)在Ubuntu中同样可以使用services-admin图形界面工具管理nfs服务。若想随机启动时启动nfs服务,可以点击【系统】|【系统 管理】|【服务】命令,打开【服务设置】对话框,勾选【文件夹共享服务(nfs-kernel-server)】选项,单击【关闭】按钮完成设置。
六、nfs服务器配置
nfs服务是根据一个―名单‖为用户开放共享资源的。
1、nfs服务配置文件
在Ubuntu Linux系统中,/etc/exports是nfs服务器的全局配置文件。配置文件中一行即为一条配置项,用于指明网络中―哪些客户端‖共享―哪些目录资源‖。导出资源配置项格式如下:.......其中,表示服务器中导出的共享资源路径,注意:必须是绝对路径名; 表示客户端主机标识,可以用主机名、组、通配符、网段方式指定,如果是多个主机标识,需要使用空格隔开; 表示赋予每个客户端主机的访问权限。
把需要导出的目录全部放在/etc/exports文件是一个良好的习惯,这可以对nfs的管理更明确和清晰。尽量将声明的详细具体,从而阻止不速之客进入nfs服务系统。
2、使用图形工具配置nfs服务(Ubuntu10.04中好像没找着)配置nfs服务器除了可以使用文本编辑工具直接修改/etc/exports文件,然后重新启动nfs服务,完成整个配置任务外。还可以采用Ubuntu Linux系统提供的nfs服务图形配置工具——shares-admin进行快速、便捷的配置。
步骤:单击【系统】|【系统管理】|【共享的文件夹】命令,打开【共享的文件夹】对话框。选择【添加】按钮打开【Share Folder】对话框进行设置,有很多种配置方式。配置完后你会发现。/etc/exports配置文件的内容是完全跟图形界面下的配置对应的。如果只修改了/etc/exports文件,并不总是要重启nfs服务。可以使用exportfs工具重新读取/etc/exports,就可以加载输出的目录。exportfs工具语法如下:
exportfs [-aruv]-a : 全部挂载(或卸载)/etc/exports的设置。
-r : 重新挂载/etc/exports的设置,更新/etc/exports和/var/lib/nfs/xtab里面的内容。-u : 卸载某一个目录。
-v : 在输出的时候,把共享目录显示出来。
在nfs已经启动的情况下,如果又修改了/etc/exports文件,可以执行命令: $ exportfs-ra 系统日志文件/var/lib/nfs/xtab中可以查看共享目录访问权限,不过只有已经被挂载的目录才会出现在日志文件中。
七、连接nfs服务器
通过上面的配置后,客户机便可通过简单的mount命令将nfs共享资源挂载到本地来了,之后可以如同操作本地文件系统一样使用。
1、查看nfs服务器的共享资源
在客户机连接nfs共享资源前,通常要用showmount命令查看一下nfs服务器上的共享资源情况,了解是否有权限访问。showmount命令查看 某台nfs服务器上都有哪些nfs共享资源。showmount命令包含在nfs-kernel-server软件包中,一般语法格式 是:showmount [dehv] nfssrvname 其中nfssrvname表示nfs服务器主机名,也可用IP地址各选项如下:-d :显示客户端所挂载的共享目录-e: 显示nfs服务的导出共享目录列表-h: 显示帮助信息-v: 显示版本
单独使用showmount命令,将显示本地主机/etc/exports配置文件中的共享配置项。
2、挂载共享资源
可以通过mount命令在客户机端挂载nfs服务器端的共享资源。mount命令的一般语法格式是:
mount nfssrvname:/Share-Directory /mnt-Point 其中,nfssrvname表示nfs服务器主机名,也可用IP地址;Share-Directory表示nfs服务器导出的共享资源目录,必须用 绝对路径,与nfssrvname用“:”号隔开;mnt-Point表示共享资源将挂载到客户端主机上的位置,在挂载前一定要确保挂载目录已经存在。
如果nfs服务器上没有给予授权,客户端仍强行挂载某些共享目录,则会被拒绝,执行失败。
3、卸载共享资源
在使用完nfs服务器共享资源后,建议即刻卸载nfs文件系统。卸载命令umount一般语法格式是:
umount /mnt-Point 其中mnt-Point表示共享资源在客户端的挂载点。
注意:当有用户在使用某个已加装的共享目录上的文件时(在挂载点下要退出才能卸载),则不能卸载在文件系统。如果用户确认无误,可使用“umount-f”命令强行卸载共享的目录。
4、测试是否成功,自己挂自己
在folinux文件夹中看到挂载过来的share文件夹中的good文件
如果失败输入exportfs –rv
如果再失败应该是防火墙的问题,输入sudo ufw disable关闭防火墙,进行到这里不出意外应该可以挂载成功了。
在开发板上输入
[root@FORLINX6410]# mount 192.168.0.118:/mnt/share /mnt会出现下面的提示: svc: failed to register lockdv1 RPC service(errno 111).mount: mounting 192.168.0.118:/mnt/share on /mnt failed: Connection refused 正确应该输入
[root@FORLINX6410]# mount-t nfs-o nolock 192.168.0.118:/mnt/share /mnt 大功告成,这时你虚拟机上的/mnt/share被挂载到了开发板的/mnt上。
第四篇:基于TMS320F28335 DSP教学开发板设计与实现
基于TMS320F28335 DSP教学开发板设计与实现
基于项目TMS320F28335DSP教学开发板解决方案的研究。通过介绍TMS320F28335DSP基本结构和应用特点,实现教学现场实际应用的开发板和扩展板。学生可以在很短的时间掌握其结构特点和实用方法,不仅获得DSP实际控制电路设计的解决方案,也能完成复杂程序调试和编写的任务。扩展板可实现温度和电机等控制项目。
DSPTMS320F28335最小系统外部拓展电路
TI公司的TMS320F28335具有较好的应用基础和较高的性价比,基于TMS320F28335 DSP的硬件系统设计,通过测试软件的调试来测试DSP的运行情况。DSP开发板的研制,正是符合当今社会的的快速变化,一个开发板就可以完成DSP的研制的基本工作。
一、整体设计方案
开发板采用了简单明了的设计方案。通过电源电路,对DSP进行供电;通过复位电路,对开发板进行复位操作;通过JTAG的通用串口,将相关的程序下载到DSP中,可以完成DSP的相关调试工作。另外,再加上各种外设电路,使开发板的功能变得更加丰富。基于TMS320F28335DSP的开发板具有强大的数学运算和控制功能,可满足控制系统实时控制要求。
二、系统基本组成
TMS320F28335DSP开发板主要由电源输入、输出电路,复位电路,JTAG串口电路,1×4按键电路,LED流水灯电路,数码管显示电路,电机控制电路模块,温度传感器模块等组成。
1、时钟电路的设计
TMS320F28335 芯片的内部振荡电路能够把晶振和X1、X2 引脚直接相连,X1 引脚通常是数字参考电压(VDD),X2 引脚是内部振荡的输出。如果引脚X2 不用,必须悬空。在X1 和X2 之间连接一个30MHz 的石英晶体,系统通过编程选择5 倍频的PLL 功能,可实现F28335的最高工作频率(150MHz)。其与DSP的具体连接方法。
2、电源电路的设计
TMS320F28335DSP工作时需要两种电压。分别为1.9V和3.3V。TMS320F28335DSP芯片对于电压的要求是十分敏感的,所以在设计中使用TI公司的TPS767D318电源芯片来产生1.9V和3.3V的电压。TPS767D318芯片是TI公司推出的双路输出低压降(LDO)稳压器。其目的是为DSP提供双电源供电。
3、串口电路的设计
MAX232芯片是由德州仪器公司(TI)推出的一款兼容RS232标准的芯片。由于电脑串口rs232电平是-10v +10v,而一般的单片机应用系统的信号电压是TTL电平0 +5v,MAX232就是用来进行电平转换的,该器件包含2驱动器、2接收器和一个电压发生器电路提供TIA/EIA-232-F电平。该器件符合TIA/EIA-232-F标准,每一个接收器将TIA/EIA-232-F电平转换成5-V TTL/CMOS电平。每一个发送器TTL/CMOS电平转换成TIA/EIA-232-F电平。串口与DSP及串口接口的连接图如图2所示。
三、扩展板实例温度传感器电路
温度传感器电路DSl8B20数字温度计提供9位(二进制)温度读数指示器件的温度信息经过单线接口送入DSl8B20或从DSl8B20送出因此从主机CPU到DSl8B20仅需一条线(和地线)DSl8B20的电源可以由数据线本身提供而不需要外部电源因为每一个DSl820在出厂时已经给定了唯一的序号因此任意多个DSl8B20可以存放在同一条单线总线上这允许在许多不同的地方放置温度敏感器件DSl8B20的测量范围从-55到+125增量值为0.5可在l s(典型值)内把温度变换成数字。
四、结论
本文对TMS320F28335 DSP的内部机构和相关原理进行了大体上的描述。对基于28335DSP的开发板的最小系统部分和外部拓展电路部分的设计和调试做出了相应的说明。在硬件开发方面,根据系统的相关要求。选用TPS767D318来完成电源部分的设计。并且通过串口的电路设计以及JTAG接口电路的设计,可以使DSP开发板的调试工作更加的灵活,可靠。在开发板的测试方面,运用CCS开发平台,JTAG仿真器工具对测试程序进行下载和调试工作。DSP开发板是DSP开发人员和学生应必备的工具。它给工作带来了便利,节约系统成本,缩短研发周期。可以相信,DSP是具有广阔的发展前景的。
参考文献:
[1]刘陵顺,高艳丽,张树团.TMS320F28335 DSP原理及开发编程[M].北京航空航天大学出版社,2013.[2]张雄伟,曹铁勇.DSP芯片的原理与开发应用[M].电子工业出版社,2009.
第五篇:S51单片机开发板设计《单片机及应用设计》实训报告
S-51单片机开发板设计---------《单片机及应用设计》实训报告 姓 名:
学 号:
班 级:
XX级电子信息工程专业本科班 学 院:
计算机电子信息工程学院 时 间:
2010年X月X日——X月X日 指导教师:
目录 一.前言 2 二.单片机及各模块简介 2 1.总体设计方案 2 2.硬件模块简介 3 2.1 S51单片机主控制模块 3 2.2 键盘模块 4 2.3 DS1302时钟模块 4 2.4 串口通信模块 5 2.5 LED数码管显示和流水灯模块 5 2.6下载线模块 6 2.7 蜂鸣器模块 6 2.8 其他模块 7 三.开发板(串口通信模块)设计原理介绍 7 1.实验项目要求 7 1.1元器件功能介绍 7 1.2串口通信原理 8 2.原理图的绘制 10 2.1串口通信模块仿真电路设计 10 3.程序的编写 11 3.1 keil操作过程 11 3.2程序框图 12 3.3USB模块电路原理图的绘制 12 四.印刷板的焊接及流程 14 焊接流程 14 五.调试及遭遇的问题解决方法 14 1.调试 14 1.1程序下载 14 1.2开发板调试 15 2.问题解决 15 六.总结体会 15 附录: 串口通信C语言源程序 16 一.前言近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
本次实训的主要目的就是为了学习单片机的基本理论知识,进而进行单片机的开发、实践和扩展,以更好的运用到实际的软硬件开发中去。此次单片机的实训目的如下:
(1)掌握单片机的相关理论知识。
学习单片机相关寄存器的配置,单片机内部结构及特点,存储器组织及外部接口,中断及串口功能,功能寄存器的相关配置,确定软硬件设计总体方案;
(2)掌握硬件设计和软件设计的基本知识,学会使用基本的设计软件,依据总体的设计方案对单片机进行软硬件开发。
在Protel中对单片机的各个功能模块进行外部电路的设计,在实现各个模块的功能的前提下充分合理利用单片机的内部资源和外围接口,以求最大限度的发挥单片机的功能。
学会使用Keil C进行编辑、编译及仿真调试,实现对单片机进行C语言开发。
以Proteus为平台,对单片机外围各个功能模块进行软件仿真验证功能。
(3)开发板板上资源的硬件实现及下载器的制作。
对软硬件设计仿真验证功能无误后,将Protel绘制的PCB进行加工、焊接元器件,制作出S51开发板及下载器。
二.单片机及各模块简介 1.总体设计方案 本开发板共分为十个模块,分别是:S51单片机主控制器模块、键盘模块、DS1302时钟模块、数码管模块、LCDCPS364BR模块、ARK点阵模块、下载器模块、流水灯模块、蜂鸣器模块、电源模块。其中以S51单片机作为核心控制器;
键盘模块用来向单片机输入特定编码的信息;
DS1302时钟模块用来实现实时时钟;
数码管模块用来显示简单的数字、字母;
LCD模块用来显示字母、数字、符号;
点阵模块用来显示图像、符号、汉字;
下载器模块用来实现S51单片机的ISP在线编程;
流水灯模块用来显示单片机I/O口电平的变化;
蜂鸣器模块用来发出声音。总体硬件电路如下图1所示:
图1 总体硬件电路 2.硬件模块简介 2.1 S51单片机主控制模块 S51单片机最小系统包括:MCU、复位电路、晶振电路。S51系列单片机内部具有128字节RAM、5个中断源、32条I/O口线、2个16位定时器、4KB的程序存储器、一个全双工异步串行口,具有ISP在线编程功能,该单片机不需要烧写器,可在开发板上ISP在线编程,S51单片机除兼容C51单片机外,还具有工作频率0至33MHz的高工作频率。
原理图如图2所示:
图2 主控制模块 2.2 键盘模块 按键模块,通过外部中断INT1实现按键功能,并通过软件编程识别按键K0---K3四个按键,进而实现相关功能,例如数码管显示字符数字的加减,LED灯速度的变换等。原理图如图3所示:
2.3 DS1302时钟模块 DS1302 的引脚如图4所示:
图3 按键模块 图4 DS1302引脚图 Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2高于Vcc1 + 0.2V时,Vcc2给DS1302供电。当Vcc2低于Vcc1时,DS1302由Vcc1 供电。X1、X2为振荡源,外接32.768 kHz晶振。I/O为串行数据输入/输出端(双向),SCL K为时钟输入端。RST是复位片选线,通过把RST输入驱动置为高电平来启动所有的数据传送。RST输入有两种功能:RST接通控制逻辑,允许地址/命令序列送入移位寄存器;
RST提供了终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许DS1302进行操作。如果在传送过程中置RST为低电平,则会终止此次数据传送,并且I/ O引脚变为高阻态。上电运行时,在Vcc高于2.5V之前,RST必须保持低电平。只有在SCL K为低电平时,才能将RST置为高电平。DS1302时钟模块的原理图如图5所示:
图5 DS1302时钟原理图 单片机与DS1302通过P1.1、P1.2、P1.3相连,分别为时钟信号线、输入输出线、复位信号线。DS1302的晶振引脚连接32768HZ的晶振。
2.4 串口通信模块 串口通信模块的原理图如图6所示:
图6 串口通信模块的原理图 单片机与MAX232通过P3.0、P3.1相连,分别为发送线、接收线,另外单片机要与MAX232共地。
2.5 LED数码管显示和流水灯模块 LED显示器有静态显示和动态显示两种显示方式。
LED静态显示方式:LED显示器工作于静态显示方式时,各位的共阴极(或共阳极)连接在一起并接地(或+5V);
每位的段选线(a~dp)分别与一个8位的锁存器输出相连。各个LED的显示字符一经确定,相应锁存器的输出将维持不变,直到显示另一个字符为止。
LED动态显示方式:在多位LED显示时,将所有位的段选线相应的并联在一起,有一个8位I/O口控制,形成段选线的多路复用。而各位的共阳极或共阴极分别由相应的I/O线控制,实现各位的分时选通。要各位LED能够显示出与本位相应的显示字符,就必须采用扫描显示方式,段选线上输出相应位要显示字节的段码。
流水灯模块包含8个LED灯,单片机的P0口接10K上拉电阻,八个LED的负极依次连接单片机P0口的8个引脚,八个LED的正极依次与510欧姆的排阻的八个端子相连。
LED数码管和流水灯模块原理图如图7:
图8 LCD数码管和流水灯模块 2.6下载线模块 下载器模块实现将USB信号转换为能通过SPI协议传输的信号,从而实现对单片机的编程。下载模块原理图如图9所示:
图9 下载线接口模块 图10 蜂鸣器模块 2.7 蜂鸣器模块 单片机的P1.4与Q1的基极通过1K欧姆电阻连接,当P1.4为高电平时,Q1导通,Q1的发射极与集电极导通,将发射极下拉为低电平,蜂鸣器两端出现电位差,蜂鸣器发声;
当P1.4为低电平时,Q1不导通,蜂鸣器两端没有电流流过,蜂鸣器不发声。
2.8 其他模块 I2C EEPROM模块用于程序或数据存储器的扩展功能,片外可最大扩展到64KB,地址为0000~FFFFH。此存储芯片支持电科擦除,即可写。
电源模块通过整流电桥实现交直流的转换功能,直接供单片机使用。
原理图如图11图12所示:
图11 电源模块 图12 I2C EEPROM模块 三.开发板(串口通信模块)设计原理介绍 1.实验项目要求 实验任务是通过串口通信实现单片机数据的自发自收以及双机通信功能,并且通过数码管循环显示0~F来表现其实现过程。
1.1元器件功能介绍 AT89S51: At89s51 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU和在系统可编程Flash,使得AT89S51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S51具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O口线,看门狗定时器,2个数据指针,三16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外AT89S51 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8位微控制器 8K 字节在系统可编程 Flash AT89S51。
RS232:RS232是由电子工业协会(Electronic Industries Association,EIA)所制定的异步传输标准接口。对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。
RS232与TTL电路之间需要进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。MAX232芯片可完成TTL←→RS232双向电平转换。
MAX232:MAX232芯片是RS232标准接口芯片,使用+5v单电源供电。是PC机与单片机串口进行通讯的电平转换芯片。内部结构基本可分三个部分:
第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS232串口电平的需要。
第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS232数据从T1OUT、T2OUT送到电脑DP9插头;
DP9插头的RS232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。15脚DNG、16脚VCC(+5V)。
图13 RS232芯片引脚图 图14 MAX232芯片引脚图 1.2串口通信原理 S-51单片机内部有一个全双工的串行接收和发射缓冲器(SBUFF),这两个在物理上独立的接收发射器,即可以接收也可以发射数据,但接收缓冲器只可以读出不能写入,而发送缓冲器只能写入不能读出,它们的地址是99H。这个通信口即可以用于网络通信,亦可以实现串行异步通信,还可以构成同步移位寄存器使用。如果在串行口的输入输出引脚上加上电平转换器,就可以方便的构成标准的RS-232接口。
S-51单片机串行口专用寄存器。SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发射器寄存器,可以实现全双工通信。但这两个寄存器具有同一地址(99H)。S-51的串行数据传输很简单,只要向缓冲器写入数据就可发送数据。而从接收缓冲器读出数据既可接收数据。串行通信寄存器SCON控制寄存器,它是一个可寻址的专用寄存器,用于串行数据通信的控制。
数据通信的传输方式:常用于数据通信的传输方式有单工、半双工、全双工和工方式。串行通信的两种通信形式,包括异步通信和同步通信。SCON控制寄存器是一个可寻址的专用寄存器,用于串行数据通信的控制,其结构格式如下:
表1 寄存器SCON结构 SCON D7 D6 D5 D4 D3 D2 D1 D0 SM0 SM1 SM2 REN TB8 RB8 TI RI 位地址 9FH 9EH 8DH 9CH 9BH 9AH 99H 98H 下面我们对个控制位功能介绍如下:
(1)SM0、SM1:串行口工作方式控制位(2)SM2:多机通信控制位 多机通信是工作方式2和方式3,SM2位主要用于方式2和方式3。接收状态,当串行口工作方式2或3,以及SM2=1时,只有当接收到第9位数据(RB8)为1时,才把接收的前8位数据送入SBUF,且置位RI发出中断申请,否则会将收到的数据放弃。当SM2=0时,只有在接收到有效停止位时才启动RI,若没接收到有效停止位,则RI清“0”。在方式0中SM2应该为“0”。
REN:允许接收控制位。由软件置“1”时,允许接收;
软件置“0”时,不许接收。
TB8:在方式3和方式3中要发送的第9位数据,需要时用软件置位和清零。
TB8:在方式2和方式3中是接收到的第9位数据。在方式1时,如SM2=0,RB8接收到的停止位。在方式0中,不使用RB8。
TI:发送中断标志。由硬件在方式0发送完第8位时置“1”,或在其它方式中串行发送停止位的开始时置“1”。必须由软件清“0”。
RI:接收中断标志。由硬件在方式0串行发射第8位结束时置“1” B:特殊功能寄存器PCON PCON:主要是是CHMOS型单片机的电源控制而设置的专用寄存器 2.原理图的绘制 2.1串口通信模块仿真电路设计(1)打开ISIS7professional窗口,执行菜单命令File new design,新建一个DEFAULT命名为“单片机串口通信自发自收.DSN”。
(2)在器件选择按钮单击“P”按钮,添加如表所示的原件:
单片机 AT89S51 电容CAP-ELEC CAP-POL MAX232 COMPIM 按钮 BUTTON 数码管 7SEG-MPX4-CA 74LS244 排阻 RX8 三极管 NPN 晶振 CRYSTAL(3)在ISIS原理图编辑窗口中,放置电源和地。布好线,设置好相应原件的参数。完成电骡图的设计。
(4)调试与仿真:加载生成的.HEX文件,进行调试,观察是否符合预期效果。
仿真效果图如图15所示:
图15 仿真效果图 3.程序的编写 3.1 keil操作过程 1).打开桌面上的keil软件:,下面新建一个工程,选择project->new新建一个名字叫“单片机串口通信”的工程,保存在事先创建的文件夹下,点击保存按钮。出现选择器件型号对话框:选择实验板上的所用芯片的型号atmel->at89s51 点击确定就建立完毕工程了。
2).添加代码文件到工程中,首先新建一个后缀为.C的源文件,点击开发环境中的file->new,新建c文件,然后点击保存按钮,注意一定要保存为后缀为.C的格式,在开发环境中左边栏找到在source group1上右击选中,弹出添加文件对话框,如图:把单片机串口通信.c选中,点击ADD添加源文件到工程中。
3).点击按钮,编译你的代码,如果下面有错误提示,修改好后再次编译直到顺利通过编译为止。如图16所示:
图16 keil编译图 4).在target1上右击选择,出现如下对话框:.选择output栏,将一栏打上勾,这样编译通过之后就可以生成可以执行的下载文件(可执行文件后缀为hex),再次点击编译,生成可执行的代码串口通信.hex。
3.2程序框图 单片机通过MAX232与单片机通讯程序流程图17所示:
图17 单片机通过MAX232与PC机或单片机通讯程序流程图 单片机通过P3.0.和P3.1发送数据到单片机,单片机接收到数据后发送给单片机,并通过LED数码管显示出。
3.3USB模块电路原理图的绘制 (1)在D盘建立名为Protel的文件夹,在Protel的文件夹中建立名为USB.ddb设计数据库文件,新建原理图文件,命名为USB.sch。
(2)根据提供的usb原理图,自己画出原理图。电路中所有的元器件都可在Miscellaneous Devices.ddb、Protel DOS Schematic Libraries.ddb这两个元器件数据库中找。
(3)画完电路后,要按照图中元件参数逐个设置元件属性,元件要自动编号,并进行电气规则检查。设置某个元器件的属性的方法是双击该元器件出现对话框设置即可。原理图如图18所示:
图18 usb原理图(4)最后形成该电路的网络表,为设计电路板做准备。
(5)根据仿真好的电路图,画出印刷电路板图。新建PCB文件,设置PCB设计环境和绘制印刷电路的版框。
(6)、打开所有要用到的PCB 库文件后,调入网络表文件和修改零件封装。布置零件封装的位置,进行自动布局。
(7)对所有过孔和焊盘补泪滴,放置覆铜区。
敷铜后的效果如图18所示:
图18 PCB原理图 四.印刷板的焊接及流程 焊接流程 1、焊前准备 首先要熟悉所焊印制电路板的装配图,并按图纸配料,检查元器件型号、规格及数量是否符合图纸要求,并做好装配前元器件引线成型等准备工作。
2、焊接顺序 元器件装焊顺序依次为:电阻器、电容器、二极管、三极管、集成电路、大功率管,其它元器件为先小后大。
3、对元器件焊接要求 1)电阻器焊接 按图将电阻器准确装人规定位置。尽量使电阻器的高低一致。焊完后将露在印制电路板表面多余引脚齐根剪去。
2)电容器焊接 将电容器按图装人规定位置,并注意有极性电容器其 “ + ” 与 “ - ” 极不能接错。
3)二极管的焊接 二极管焊接要注意阳极阴极的极性,不能装错;
发光二极管要与印刷版保持0.5cm距离。
4)三极管焊接 注意 e、b、c 三引线位置插接正确;
焊接时间尽可能短,焊接时用镊子夹住引线脚,以利散热。
5)集成电路焊接 首先按图纸要求,检查型号、引脚位置是否符合要求。焊接时先焊边沿的二只引脚,以使其定位,然后再从左到右自上而下逐个焊接。
6)usb接口和电源接口 找到正确位置,注意将其与印刷版焊接牢固,不松动。
五.调试及遭遇的问题解决方法 1.调试 1.1程序下载:开发板和PC机通过下载器连接,使用+5V电源给开发板供电。在PC机上安装ISP在线下载器驱动,打开烧写器软件,选择烧写单片机类型,加载FLASH,点击编程,即可把程序烧录到单片机中。
使用USB isp下载:请安装并打开progisp167\软件,编程器及接口选择USBasp,usb默认,选择器件类型AT89S52,点击调入FLASH按钮,找到你刚才生成的LED.hex文件 将usb下载线一头连接电脑U口,另外一头连接实验板左上方的ISP下载口,(注意方向),点击自动,可以看到,编程成功,1.2开发板调试:
(1)键盘模块实验效果:烧写.HEX文件到单片机,将JP7插上短路帽,按下键盘上的某一个键,LCD1602上显示该键对应的键值;
(2)DS1302时钟模块实验效果:烧写.HEX文件到单片机,插上LCD1602,液晶上显示秒、分、时;
(3)数码管模块实验效果:烧写LED动态显示.HEX文件到单片机,将J3上端插上短路帽,数码管显示从0开始计数 ;
(4)流水灯模块实验效果:烧写流水灯.HEX文件到单片机,流水灯显示几种不同的花型;
(5)蜂鸣器模块实验效果:烧写.HEX文件到单片机,蜂鸣器以一定的声音频率鸣叫。
2.问题解决(1)印刷版焊完之后,无法烧入程序,总是出错。
经过分析后判断可能是单片机有的接口焊点虚焊所致,回去后,用电烙铁把单片机的管口查询焊接了一遍。问题就解决了,能够烧入程序了。
(2)数码管显示的是乱码,并非完整数字。
分析应该是数码管编码与实际所用的编码或引脚不相同。对程序中的数码管显示代码重新编译之后就通过了。
六.总结体会 在老师的指导下,自己找资料、看书,完成了老师布置的任务。通过这次的实训设计,使我对单片机以及智能仪器的结构和功能都有了更深的认识,从理论和实践上都得到了很大的提高,这次的实训真的给我很大的提高。总结经验来说,首先,我丰富了自己的知识面,将以前没能学通的东西深入透彻的学会学懂,具体了解了怎样去完成一个电路的设计:从流程图、电路图、焊接电路板、检查电路板、仿真到烧片一整套东西。没有浪费宝贵的时间,学习到了难得的经验。
自己找资料,了解单片机89S51、数码显示管的有关知识,学习时钟电路、控制电路的设计原理,看不懂的时候就去问老师、同学。和同学们一起探讨不懂得难点之时我仿佛感觉到了真正的大学应该有的学习氛围。在这些都搞得比较明白后就开始画设计流程图和电路图,最后用了很长时间才画出自己的电路图,同学老师都帮我检查,改正了几处有问题的地方。电路的焊接比较难。要细心稳重,应为这是一件很要求技术的工作。但是我克服困难终于完成了但接下来的检测可就费了不少劲,发现并解决了很多问题。在解决完所有问题后,自己又一种成功感,还在想,要是没有这些错误,就不会学会这么多检测电路的方法,而且对自己所做的电路有了进一步的了解。做到这一步满以为不会再有什么错误了,但是仿真的时候却又遇到了马麻烦,先是数码管不亮,在后来就是全亮,按键后没反应,刚有的一点成功感马上就没了,又一次陷入了反复的检测。检测发现了不少问题,解决后仿真成功。在后来就开始烧片,烧片的过程还算顺利。烧好后插上电路板,显示成功了。接下来的工作一切还算顺利,在老师还有同学的帮助下,都一一完成。
这次的实训设计总的来说还是很成功的,自己从中学到很多,也发现了不少问题,为自己以后的学习、进步打下了不错的基础。从实训设计中,学到了单片机AT89C51的内部结构及其工作原理,了解了串口通信的工作原理,还有共阳极数码管的工作原理,巩固了C语言的使用能力,提高了自己动手的能力,学到了很多经验,并且提高了自己分析问题的能力和创新能力,得到了理论联系实际的机会,做出了成果。使自己在硬件设计方面树立了信心,为以后从事这方面的工作打好了基础,这也是这次实训设计的最大收获。
附录:
串口通信C语言源程序 /********单片机自发自收程序**********/ #include