马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
下面部分从TXT拷出,拷到网页,代码部分缺省了很多空格,比较凌乱,请谅解!
//目标系统: 基于C8051F单片机
//应用软件: Silicon IDE / Keil
/*01010101010101010101010101010101010101010101010101010101010101010101
----------------------------------------------------------------------
实验内容:
点灯,LED灯按顺序从第一盏到第八盏灯依次点亮。
----------------------------------------------------------------------
硬件连接:
将P1口与8位LED指示灯相连。
----------------------------------------------------------------------
注意事项:
(1)若有加载库程序,请将光盘根目录下的“library”下的“C8051F”文件夹拷到D盘
(2)请详细阅读:光盘根目录下的“说明书首页.htm”里的相应产品说明
----------------------------------------------------------------------
10101010101010101010101010101010101010101010101010101010101010101010*/
#define _DVK501_F320_EX_
#include <c8051f320.h>
#include <../../../../library/C8051F/ws_clock.h>
#include <../../../../library/C8051F/ws_delay.h>
void main(void)
{
uchar a,i;
PCA0MD &= ~0x40; //Clear watchdog timer enable
clock_internal();
P1MDOUT = 0xFF;
XBR1 = 0x40;
a = 0xFF;
while(1)
{
for(i=0;i<9;i++)
{
P1 = ~a;
a <<= 1;
delay_ms(500);
}
a = 0xFF;
}
}
硬件连接图
关于C8051F的I/O结构及相关介绍详见Datasheet(点击查看),这里仅对作部分简单介绍,下面是AVR的I/O引脚配置表: C8051F I/O 口引脚配置表
| PxMDOUT
| PxMDIN
| Px
| I/O 方式
| 引脚状态说明
| | X
| 0
| X
| 输入
| 模拟输入
| | 0
| 1
| X
| 输入
| 漏极开路
| | 1
| 1
| X
| 输出
| 推挽方式
| |
虽然C8051F的I/O口单独输出“1”时,可输出较大电流足已点亮一盏灯,但C8051F总的I/O输出毕竟是有限的,所以,有经验的点灯者考虑到除了点灯外可能还有其它费劲的活儿要干,会将C8051F的I/O口设计为输出“0”时点灯,输出“1”时熄灯。这种接法亦叫“灌电流接法”。
调试下载器 USB C8051F Debugger (点击查看)
直接支持Silabs官方软件Silicon Labrary IDE或集成了烧写驱动的Keil编译软件 |