Proteus-LPC2124仿真.doc开关控制LED——ARM的Proteus实验
实验原理
,再通过P0 0控制LED的亮、灭。木实验的电路图以及实验均在上一个 实验基础之上修改。其中电路图只多了一个开关。
Proteus仿真电路图
U1
33vl1~
7
51
43
23
63
58
59
50
42
25
18
6
XTAL1
^RAMI
XTAL2
^
RST
«ro..0/BNT1 PO .7r$SElD/PWM2/SM12
»
PO. 16/EINTDAWJD .2 心R)2
PO 1 "CAP K1 MffT] 1
^IATI ・2W$H P0^0/M^/$$EL1BMn
/MATOD ?
; UCAPO ,2jM0JD2 (n)3
^R)D
5. n
^TRACEPKn PliSZTRACEPKT? ACESYNC
>sro
«n
立
VI cM V18
V IC 「■・NO"厂厶
VSSA^PLL
VSS
vss vss vss
厂i.^v/n nr
P1J9/TCK
LPC2124
22一亠丄3IS-31F 一343537翅4145一-^533i>6 一 911F3HIT一土嗤41281111一上亠-
19
21
D1
LED・GR田
・・
R2
R3:
JOk・
实验步骤略(与上一实验相同)
C语言源程序
/************・******************************・**********************************
*/
/♦ L«:用ARM实现开关控制kd并亮灭,还是有点浪费
♦/
严
♦/
^include <LPC21xx. H>
^define PO_1 0x02, /* ♦/
/・**海$**$*$$*・*車**拿水拿*************車****冷**車拿*車**•*$**$*$***$・***$**車*****
"函数名:delays)
"描述:软件延时
*$*******$******拿******************$*水**拿*拿**拿*拿**・*・**********水車******拿*拿**拿水拿
*/
void delay (void) {
unsigned volatile Long 匚
for(i-0,i< 10000,1++)
>
}
mt nwn(void丿{
int pOl State,
PINSEL0 = a, /* 设置91 脚为GPIO */
IC0DIR= 0x000001, ♦/
ICOSET - 0x000001, 1,也就是让led灭 */
while (1) {
pOl State = IO0PIN&P0_l, /* 读取开关状态 *7
if(pO 1 State = 0){
IC0CLR- 0x000001,
dehyQ,
}
dse{
IOOSET -0x000001,
dehyQ,
}
}
LED闪烁——ARM的Proteus实验
实验原理
ARM (LPC21XX)的一个I/O【I接LED,通过给它送0和1来设置LED的亮和灭。
Proteus仿真电路图
D1
57
a33V
7
5?
ft
40
58
59
Proteus-LPC2124仿真 来自淘豆网www.taodocs.com转载请标明出处.