完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
主要实现扩展的输入口接了8个开关,扩展的输出口接了8个发光二极管。实现8个开关控制对应8个发光二极管的显示?方法一 使用74LS373和74LS245作为外接的芯片完成实验实验电路图 实验代码 #include #include #define uchar unsigned char void delay(unsigned int n) { unsigned int i,j; for(i=0;i ; } uchar i; void main(void) { while(1) { i=XBYTE[0x7fff]; //把输入口的开关信息输入到i中 delay(1); //延时程序 XBYTE[0x7fff]= i; //把输入的开关信息传送到输出的地址中 } } 实验代码其实并不是很难稍加理解就可以,就是把输入口(地址0x7fff)的按钮信息赋值到i中,然后将输入口的数据传输到输出口中。输入口连接按钮,输出口连接LED灯。如上面的电路图一样。 实验结果 实现了每一个按钮的按动对应的LED灯的亮灭。 方法二 使用8255和74LS373作为外接的芯片完成实验实验电路图 实验代码 #include #include #define uchar unsigned char uchar i; void delay(unsigned int n) { unsigned int i,j; for(i=0;i ; } void main (void) { while(1) { i= 0x90; //可有可无 XBYTE[0xff7fc]= i; //可有可无 i=XBYTE[0xff7c]; //和上面的程序一样 delay(1); //和上面的程序一样 XBYTE[0xff7d]= i; //和上面的程序一样 } } 实验结果 实现了每一个按钮的按动对应的LED灯的亮灭。 总结 单片机(AT89C51)外设的I/O输入输出实验的结果比较的简单明了,主要还是需要去了解其中的实验原理。 |
|
|
|
只有小组成员才能发言,加入小组>>
2497 浏览 0 评论
1061浏览 2评论
680浏览 1评论
442浏览 0评论
176浏览 0评论
294浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 18:57 , Processed in 1.260225 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号