51IO输入测试代码

发布者:快乐的舞蹈最新更新时间:2017-11-21 来源: eefocus关键字:IO输入  测试代码 手机看文章 扫描二维码
随时随地手机看文章

#include

#include


#define GPIO_LED P2

sbit K1=P3^1;

void Delay10ms( );   //延时10ms


void main(void)

{

unsigned int i,j;

j=0xfe; //1111_1110

while(1)

{

GPIO_LED=j;  

if(K1==0) //检测按键K1是否按下

{

Delay10ms(); //消除抖动

if(K1==0)

{

j=_cror_(j,1);

while((i<50)&&(K1==0)) //检测按键是否松开

{

Delay10ms();

i++;

}

i=0;

}

}


}

}

void Delay10ms(void)   //误差 0us

{

    unsigned char a,b,c;

    for(c=1;c>0;c--)

        for(b=38;b>0;b--)

            for(a=130;a>0;a--);

}


关键字:IO输入  测试代码 引用地址:51IO输入测试代码

上一篇:51IO输出测试代码
下一篇:51外部中断测试

推荐阅读最新更新时间:2024-03-16 15:46

S3C6410开发板LED驱动代码分析及测试代码分析
在本文中,我们对S3C6410开发板LED驱动代码的实现过程进行分析,然后通过一个实例对LED进行控制。在本文的资源中包含了设备驱动的源码和测试的源码。 一、设备驱动源码分析 设备驱动主要实现了模块的初始化、模块的卸载、io模块操作的功能。 1、模块初始化 模块的初始化的源码如下所示。 static int __init dev_init(void) { int ret; { unsigned tmp; tmp = readl(S3C64XX_GPKCON); tmp = (tmp & ~(0xffffU 16))|(0x1111U 16); writel(tmp, S3C64XX_GPKCON);
[单片机]
51单片机锁存器详解
P0口作为分时复用接口,既要作为数据总线口,又要作为地址总线口 输出的低8位地址需要用8位锁存器锁存 ALE的下降沿将P0口输出的低8位地址锁存 • 对于锁存器: ○ /OE为输出使能端 § /OE有效时,三态门导通 § /OE无效时,三态门高阻(任何数据或信息都不能通过) ○ /LE为数据输入锁存信号 § /LE有效时(低电平),数据锁存在锁存器内 § /LE无效时(高电平),输入数据直通到锁存器输出端(下图绿色部分) • 当单片机与锁存器构成总线扩展电路时: ○ ALE-------/LE(或者是CP) ○ GND------/OE § ALE=1时,/LE无效,输入的地址
[单片机]
<font color='red'>51</font>单片机锁存器详解
9G-N79E8X 新唐N79E8X+Keil C51入门开发过程简介
一,准备Keil C51 + 新唐N79E8X软件包 1,在http://www.mcu123.com/news/Soft/embsof/uc/201109/539.html 上点击 ::下载地址:: 下的 FTP下载地址1 ,在弹出的网页上 http://www.mcu123.com/news/Soft/ShowSoftDown.asp?UrlID=1&SoftID=539 上再右击 下载地址: 后的 下载 选择 目标另存为 下载文件到本地硬盘。 下载keil c51v9.05 KEIL V9 C51V905 文件名是:c51v905_mcu123.rar ftp://mcu123.com/%D2%D1%D5%FB%
[单片机]
基于SOPC的M8051调试器设计及系统测试
在嵌入式系统开发过程中,上位机通过调试器完成对目标机软件的开发、下载、调试。早期的调试器与上位机之间通过串口或并口通信,存在速度慢、通用性差等缺陷。相比之下,USB接口优势明显,具备速度快、易插拔、支持多个调试器同时工作等优势。但目前的USB接口调试器一般采用USB芯片和可编程器件结合的实现方式,成本和复杂度较高。 M8051是Mentor公司的嵌入式8051处理器,凭借良好的性能和功耗控制,占据了大量的SoC(System on a Chip)市场。该处理器集成了OCI(On-Chip Instrumentation,片上调试单元)来完成程序的调试。FS2公司设计的System Navigator是一款针对M8051的调试器
[单片机]
基于SOPC的M80<font color='red'>51</font>调试器设计及系统<font color='red'>测试</font>
8051单片机的UART0串口初始化
1、C8051f的UART0是异步、全双工串口。其波特率发生器规定由定时器1定时器提供。可配置为8位UART或9位UART(多机通讯第九位用于片选作用)。SYSCLK=24.5MHZ(我的板子采用内部晶振频率作为系统时钟) BAUDRATE=115200(波特率) 2、初值TH1 Tl1配置 由上述公式可计算初值:TH1 = 256-(SYSCLK/BAUDRATE/2)而程序内是TH1 = -(SYSCLK/BAUDRATE/2),这两种是相同的。第一种是以正数的二进制形式保存在计算机内。第二种是负数,取反加1求得补码保存在计算机中。结果是相同的。每当TL1中的值溢出后 TH1存储的重装载值装载到TL1中开始计数。
[单片机]
80<font color='red'>51</font>单片机的UART0串口初始化
51单片机做一个LED显示的电子钟
#include reg52.h #define uchar unsigned char #define uint unsigned int uchar code table ="ME-400-A clock"; uchar code table1 ="    --:--:--    "; uchar code table2 ="ALL:00:00:-- "; uchar code table3 ="    "; uchar clk_time ;  //秒,分,时寄存器初始值 sbit T_RST=P2^2;//ds1302-5 sbit T_IO=P2^3;//ds1302-6 sbit T_CLK=P2^4;//ds1302-
[电源管理]
基于51单片机的点阵贪吃蛇
这是基于51单片机的贪吃蛇小游戏,用四个独立按键控制上下左右,用8*8点阵作为显示 程序如下: #include reg52.h #include intrins.h #include stdlib.h #define SNAKE 20 unsigned char x ; //存放蛇的X轴坐标 unsigned char y ; //存放蛇的Y轴坐标 unsigned char point_x; //存放果实的X轴坐标 unsigned char point_y; //存放果实的Y轴坐标 /* //点阵模块接口定义 sbit LEDARRAY_LAT = P3^6;//储存寄存器
[单片机]
采用TDA1512的末级放大器电路图
620)this.width=620;" border=0>
[单片机]
采用TDA1<font color='red'>51</font>2的末级放大器电路图
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved