这个太复杂了,简单一点的有吗,省空间
求用c语言写的八位数码管动态显示程序,P0控制段,P2控制位。
define SEG_OUT P0 \/\/段码输出口 define BIT_OUT P2 \/\/扫描口 sbit dot=P2^7; \/\/LED小数点控制 uchar code tab[12]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0xbf};\/* 共阳LED段码表 "0" "1" "2" "3" "4" "5" "...
用c语言编写单片机流水灯程序,(8个发光二极管从左至右循环点亮)
unsignedinti,j;for(i=0;i<200;i++)for(j=0;j<1000;j++);} voidmain(void){ while(1){ P3=0xfe;\/\/第一个灯亮 delay();\/\/延时 P3=0xfd;\/\/第二个灯亮 delay();P3=0xfb;\/\/第三个灯亮 delay();P3=0xf7;\/\/第四个灯亮 delay();P3=0xef;\/\/第五个灯亮 delay();P3=0xdf...
单片机C语言中: 定义a1=P0^1; a2=P0^2; …… a8=P0^7;b=P2^0; 。a1...
for(i=0;i<7;i++){ \/\/用移位和位与的方式来判断P0中是否有一位是高位 if(P0&(0x01<=3){ \/\/计到3时使能P2。0 count=0;\/\/使能P2 P2^0=1;return ;} } } \/\/如果找完一次P0口后都不够三个1 则进行下一次找描 P0=0x00; \/\/ i=0;}\/\/while's end }\/\/main's end 思想就...
单片机中,P0.0和P0^0意思一样么? 1. SFR P0=0x80h;\/\/0x80H=10000000 2...
两者不是一个意思。SFR P0 = 0x80;这是声明P0特殊寄存器的SFR地址。只有声明了这条语句,编译器才知道P0是什么东西。sbit LED = P0 ^ 0;在前一条声明有效的前提下,编译器才能识别出P0代表着0x80处的SFR,此时才能正确处理本条语句,将LED解析为0x80.0。如果缺少了前一条声明,编译器会告诉你...
单片机流水灯C语言程序(8个灯,依次点亮每个灯,延时500MS)
单片机流水灯C语言程序的源代码如下:include \/\/51系列单片机定义文件 define uchar unsigned char \/\/定义无符号字符 define uint unsigned int \/\/定义无符号整数 void delay(uint); \/\/声明延时函数 void main(void){ uint i;uchar temp;while(1){ temp=0x01;for(i=0;i<8;i++) \/\/8个流水灯...
单片机制作呼吸灯的C语言程序怎样编写
sbit LED0=P0^0;sbit wei=P1^1;sbit duan=P1^0;sbit lcden=P1^7;sbit dianzhen=P1^3;sbit leden=P1^2;void Delay(unsigned int t);void main (void){ unsigned int CYCLE=600,PWM_LOW=0;\/\/定义周期并赋值 lcden=0;P0=0x00;dianzhen=0;P0=0xff;wei=0;duan=0;while (1) \/\/主...
求汇编语言程序:8个开关p0.0——p0.7分别控制8个灯p1.0——p1.7,
MOV P0,#0FFH ;按键初始都没有按下 LOOP:JB P0.0,LOOP1 ;第一个键没按转下一个 JNB P0.0,$ ;第一键按下则等抬起 CPL P1.0 ;第一个灯如果开始灭则点亮,开始亮则灭 LOOP1: ;以下与此类似,不做注释。JB P0.1,LOOP2 JNB P0.1,CPL P1.1 LOOP2:JB P0.2,...
51单片机检测引脚电平变化的C语言程序
include <reg52.h> sbit LED0 = P0^0; sbit LED1 = P0^1; sbit LED2 = P0^2; sbit LED3 = P0^3;sbit LED4 = P0^4; sbit LED5 = P0^5; sbit LED6 = P0^6; sbit LED7 = P0^7;sbit LED10 = P1^0;void main() { LED0 = 0; LED1 = 0; LED2 = ...
各位,如果将一个二进制码从单片机P0口输入,要想通过单片机将这个二进制...
P0^6;sbit P0_7 = P0^7;unsigned char sum = 0;void main(){ sum = P0_0 + P0_1 * 2 + P0_2 * 4 + P0_3 * 8 + P0_4 * 16 + P0_5 * 32 + P0_6 * 64 + P0_7 * 128; \/\/ sum就是二进制读入之后转化成的十进制数 \/\/ 不过sum的范围是0-255} ...
求:用单片机C语言编一位数码管的数字显示 要求可以从0变化到9
\/\/1位静态显示 include<reg52.h> include<intrins.h> \/\/p0接数码管的A~H;uchar led[]={0xA0,0xBD,0x64,0x2C,0x39, 0x2A, 0x22,0xBC,0x20,0x28};\/\/0-9数字摸。unsigned int dat;main(){while(){ P0=led(dat);\/\/显示dat变量,这里只能显示数字0~9;} } ...