预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

. 【C语言编程实训】 适应专业:应用电子技术 广州康大职业技术学院自动化系 二0一0年十一月 . . C语言编程实训】 实训一单片机电路的PROTEUS设计与仿真 一、循环彩灯 1.实训目的 (1)通过AT89C51单片机控制8个发光二极管发光,实现循环彩灯的闪亮效果。 (2)用PROTEUS设计循环彩灯电路原理图。 (3)掌握使用PROTEUS进行仿真调试的操作步骤与方法。 2.PROTEUS电路设计 (1)从PROTEUS库中选取元器件 ①AT89C51:单片机②10WATT1K:电阻③LED-GREEN:绿色发光二极管 ④AVX0402NP033P、AV100U25V:电容、电解电容⑤CRYSTAL:晶振⑥SW-SPST: 开关 (2)放置元器件 (3)放置电源和地〔终端〕 (4)连线 (5)元器件属性设置 (6)电气检测 注意:以上操作方法详见教材【单片机原理与接口技术】第6章〔P62〕 绘制完成的电路原理图如下所示: . . C3R1 1k 100u C1 U1 1939 XTAL1P0.0/AD0 33pX138 P0.1/AD1 37 C2CRYSTALP0.2/AD2 1836 P0.3/AD3 35 P0.4/AD4 34 P0.5/AD5 33p33 P0.6/AD6 932 RSTP0.7/AD7 21 P2.0/A8 22 P2.1/A9 23 P2.2/A10 2924 D1PSENP2.3/A11 3025R2 R3ALEP2.4/A12 3126 EAP2.5/A131k 27 200P2.6/A14 28 LED-GREENP2.7/A15SW1 D2 110 R4P1.0P3.0/RXD 211 P1.1P3.1/TXDSW-SPST 312 200P1.2P3.2/INT0 413 LED-GREENP1.3P3.3/INT1 514 D3P1.4P3.4/T0 615 R5P1.5P3.5/T1 716 P1.6P3.6/WR 817 200P1.7P3.7/RD D4LED-GREEN R6AT89C51 200 D5LED-GREEN R7 200 D6LED-GREEN R8 200 D7LED-GREEN R9 200 LED-GREEN D8 R10 200 LED-GREEN 图1-1循环彩灯电路原理图 绘制电路原理图时,也可以用1个排阻RX8代替8个1K电阻10WATT1K。 3.源程序设计、生成目标代码文件 使用KEILC软件进行循环彩灯C语言程序的编辑、编译、链接,并生成HEX文 件具体操作步骤与方法详见【C语言编程实训】实训指导书二。 附:原程序清单 unsignedinti;charj,k; sbitP3_0=P3^0; voidmain() { while(1) { if(P3_0==0) { k=0x80; for(j=0;j<8;j++) { P1=k; . . for(i=0;i<5000;i++); k=k>>1; } k=0x01; for(j=0;j<8;j++) { P1=k; for(i=0;i<5000;i++); k=k<<1; } } else P1=0xff; } } 4.PROTEUS仿真 (1)加载目标代码文件 鼠标指针指在器件AT89C51上,先右击再左击,在弹出的属性编辑对话框Program File一栏中单击翻开按钮,出现文件浏览对话框,找到HEX文件,单击“翻开〞按钮,完 成添加文件。在ClockFrequency栏中把频率设定为12MH,单击“OK〞按钮退出。 Z (2)全速仿真 单击运行按钮,启动仿真,仿真运行片断如图1-2所示。暗点以<0.5H频率由低位到 Z 高位循环移动。 二、位操作控制P1口的输出 1.实训目的 〔1〕编写含有“位变量〞定义语句及执行语句的C语言程序,通过AT89C51单片机P1 口实现位操作。 〔2〕用PROTEUS设计灯塔信号灯控制电路原理图。 . . 2.电路设计 从PROTEUS库中选取以下元器件:RES,CAP,NPN,CRYSTAL,LED-YELLOW, OPTOCOUPLER-NPN,AT89C51.BUS 设计如图1-3所示。 仿真控制按钮,从左至右依次是:运行、单步运行、暂停、停止。 图1-2循环彩灯仿真片断 . . C2R3 220 1nFU1 C3X1 19 CRYSTALXTAL1AD[0..7]R4 A[8..15]1 1nF18R2Q1 NPN 30 ALE