当前位置:首页 > 单片机 > 单片机
[导读]主程序:/******************************************************************************/ /* This file is part of the uVision/ARM development tools */ /* Copyright KEIL ELEKTRONIK GmbH 2002-2004 */

主程序:

/******************************************************************************/
/* This file is part of the uVision/ARM development tools */
/* Copyright KEIL ELEKTRONIK GmbH 2002-2004 */
/******************************************************************************/
/* */
/* BLINKY.C: LED Flasher */
/* */
/******************************************************************************/

#include /* LPC21xx definitions */

extern void init_serial (void); /* Initialize Serial Interface */
extern int putchar (int ch); /* Write character to Serial Port */
extern int getchar (void); /* Read character from Serial Port */


void puthex (int hex) { /* Write Hex Digit to Serial Port */
if (hex > 9) putchar('A' + (hex - 10));
else putchar('0' + hex);
}

void putstr (char *p) { /* Write string */
while (*p) {
putchar (*p++);
}
}


void delay (void) { /* Delay function */
unsigned int cnt;
unsigned int val;

ADCR |= 0x01000000; /* Start A/D Conversion */
do {
val = ADDR; /* Read A/D Data Register */
} while ((val & 0x80000000) == 0); /* Wait for end of A/D Conversion */
ADCR &= ~0x01000000; /* Stop A/D Conversion */
val = (val >> 6) & 0x03FF; /* Extract AIN0 Value */

putstr ("nAIN0 Result = 0x"); /* Output A/D Conversion Result */
puthex((val >> 8) & 0x0F); /* Write 1. Hex Digit */
puthex((val >> 4) & 0x0F); /* Write 2. Hex Digit */
puthex (val & 0x0F); /* Write 3. Hex Digit */

val = (val >> 2) << 12; /* Adjust Delay Value */
for (cnt = 0; cnt < val; cnt++); /* Delay */
}


int main (void) {
unsigned int n;

IODIR1 = 0x00FF0000; /* P1.16..23 defined as Outputs */
ADCR = 0x002E0401; /* Setup A/D: 10-bit AIN0 @ 3MHz */
init_serial(); /* Initialize Serial Interface */
IOSET1=0x00ff0000;
while (1) { /* Loop forever */
for (n = 0x00010000; n <= 0x00800000; n <<= 1) {
/* Blink LED 0, 1, 2, 3, 4, 5, 6, 7 */
IOCLR1 = n; /* Turn on LED */
delay(); /* Delay */
IOSET1 = 0x00FF0000; /* Turn off LEDs */
}
}
}
串口程序:

/******************************************************************************/
/* This file is part of the uVision/ARM development tools */
/* Copyright KEIL ELEKTRONIK GmbH 2002-2004 */
/******************************************************************************/
/* */
/* SERIAL.C: Low Level Serial Routines */
/* */
/******************************************************************************/

#include /* LPC21xx definitions */

#define CR 0x0D


void init_serial (void) { /* Initialize Serial Interface */
PINSEL0 = 0x00050000; /* Enable RxD1 and TxD1 */
U1LCR = 0x83; /* 8 bits, no Parity, 1 Stop bit */
U1DLL = 97; /* 9600 Baud Rate @ 15MHz VPB Clock */
U1LCR = 0x03; /* DLAB = 0 */
}


int putchar (int ch) { /* Write character to Serial Port */

if (ch == 'n') {
while (!(U1LSR & 0x20));
U1THR = CR; /* output CR */
}
while (!(U1LSR & 0x20));
return (U1THR = ch);
}


int getchar (void) { /* Read character from Serial Port */

while (!(U1LSR & 0x01));

return (U1RBR);
}

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

瑞典利雪平2022年4月20日 /美通社/ -- 坚固耐用的移动计算机领先制造商Handheld Group今天宣布向一家物流解决方案领域的全球领先企业交付创纪录订单。 Handheld fulfills record...

关键字: a b

利用人工智能进行生物多样性保护有助于防止动植物灭绝,从而维持稳定的生态系统。 近年来,诸如Rhynia、Pluchea Glutinosa、渡渡鸟、大海雀、塔斯马尼亚虎和西部黑犀牛等动植物的灭绝是一个

关键字: a 人工智能 生物多样性

作为奔驰在国内最便宜的轿车,A级奔驰一直受到年轻消费者的青睐。 日前,我们于奔驰官网获悉,新款奔驰A 180L运动轿车正式上市,新车同样搭载1.3T发动机,售价为23.28万元。 与现款车型相比,新车

关键字: a 奔驰 奔驰a级 轿车 180l

Android手机将配备Android 11和Google自己的游戏服务的每台新设备都必须包含所谓的虚拟A / B分区方案。 这意味着设备必须具有某些重要系统分区的两个副本,其中一个已被积极使用,而另一个可以在不离开An...

关键字: 11 a Android b google

便宜的Android平板电脑仍然存在,并且Samsung Galaxy Tab A系列是这些产品最著名的(长期的)支持者之一。 该公司现在正在继续其Android 10更新,其中包括其中一些廉价的平板电脑,Tab A 1...

关键字: 10 a Android galaxy tab 三星

在前面的文章里,小编对Acer CB272 A显示器进行过色域、色调显示、色彩均匀性测评。而此次,小编将对它的色彩精确度加以测评,以帮助大家增进对它的了解。

关键字: a acer cb272 显示器 色彩精确度

在前面的文章里,小编对Acer CB272 A显示器进行过色域、色调显示测评。而此次,小编将对它的色彩均匀性加以测评,以帮助大家增进对它的了解。

关键字: a acer cb272 显示器 色彩均匀性

在前面的文章里,小编对Acer CB272 A显示器进行过色域测评。而此次,小编将对它的色调显示加以测评,以帮助大家增进对它的了解。

关键字: a acer cb272 显示器 色调

在这篇文章中,小编将对Acer CB272 A显示器进行色域测评。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: a acer 显示器 色域 cb272

现在大街上随处可见的LED显示屏,还有装饰用的LED彩灯以及LED车灯,处处可见LED灯的身影,LED已经融入到生活中的每一个角落。美国伦斯勒照明研究中心(LRC)对LED系统可靠性做过专门的研究,研究显示,市场上销售的...

关键字: a LED led筒灯 type 电源技术解析 mr16灯
关闭
关闭