如下图所
示,单片 机P1口 的P1. 0和P1 .1各接 一个开关 S1、S 2,P1 .4、P 1.5、 P1.6 和P1. 7各接一 只发光二 极管。由 S1和S 2的不同 状态来确 定哪个发 光二极管 被点亮, 如下表所 示。:解 :参考程 序(一) #inc lude void mai n(){ un sign ed c har a;a= P1; /* 读P1口 */a= a&0x 03; / *屏蔽高 6位*/ if(a ==0) P1= 0x83 ;els e if a== 1 P1 =0x4 3;el se i f a= =2 P 1=0x 23;e lse P1=0 x13; }参考程 序(二) #inc lude “re g51. h”vo id m ain( ){ c har a;a= P1; / *读P1 口*/a =a&0 x03; /*屏蔽 高6位* /swi tch (a){ cas e0:P 1=0x 83;b reak ;cas e1:P 1=0x 43;b reak ;cas e2:P 1=0x 23;b reak ;cas e3:P 1=0x 13; } }小编还为您整理了以下内容,可能对您也有帮助:
、设单片机的 fosc =6MHz,要求在P1.7脚上的指示灯亮一秒灭一秒。(要求用中断方式)
配置一个定时器,psc=6;period = 999(gd单片机);这就是一个1us的定时器。使能更新中断,然后找到该定时器的中断入口函数,进入中断一次代表1ms,定义i,i++;if(i==999)//1s
flag = 1;i=0;
主函数:
if(flag == 1) p1.7 (引脚输出)= !p1.7 (引脚输出)
Copyright © 2019- zrrp.cn 版权所有 赣ICP备2024042808号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务